Skip to content

Conversation

@scheidtdav
Copy link
Collaborator

No description provided.

scheidtdav and others added 30 commits June 25, 2025 15:27
* feat: add draft for port of user registration to resource route

* feat: partly implement refresh token

* docs: simplify contributing and add info about api routes and shared logic

* feat(api): finalize user registration endpoint

* fix(tests): get the tests to run be reconfiguring build steps

* docs(db): readd db setup and seed scripts with README info for it

* fix: wrong import of utils

* refactor: remove leftover custom server stuff

* fix(tests): add missing refresh token table

* fix(tests): reenable remaining tests for registration

* fix(ci): remove playwright and use correct node version

* fix(ci): run the tests with a postgres container

* feat(tests): add coverage report

* fix(build): reorganize server modules to correctly split client/ server

* fix(build): miss an import

* fix(build): remove leftovers from custom server implementation

* chore(deps): bump react-router dependencies

* chore(deps): update react-router

* feat/user me api (#559)

* feat(api): add api routes for /users/me

* fix(tests): api me PUT

* feat(api): add delete me endpoint

* feat(api): add root route (#560)

* start

* new commit

* tested docs

* added a route

* Added API Docs

* modified

* removed unsupported packages

* updated

* Modified

* script generation without using ts-node.

* modified

* fix: update package-lock.json

* Updated (#575)

* Updated README

* Updated README

* Removed duplicate Documentation section (#576)

* Updated README

* Updated README

* Removed duplicate section.

* Update README.md

* Feat/api email and password (#561)

* feat(api): add email-confirmation endpoint

* feat(api): add request password reset

* feat(api): add password reset

* feat(api): implement resend email confirmation (without sending yet)

* feat/api auth (#562)

* feat(api): add email-confirmation endpoint

* feat(api): add request password reset

* feat(api): add password reset

* feat(api): implement resend email confirmation (without sending yet)

* feat(api): add sign-in, sign-out and refresh-routes to api

* feat(api): implement refresh endpoint

---------

Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>

* feat(api): boxes for user endpoints (#573)

* feat/api misc (#571)

* feat(api): boxes for user endpoints

* feat(api): add tags and stats route scaffold

* feat(api): implement tags route

* refactor: remove unnecessary imports

* feat(api): implement statistics route

---------

Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>

* tests: disable integration related test

---------

Co-authored-by: JerryVincent <jerrynambalampara111@gmail.com>
Co-authored-by: Jerry Vincent <85385440+JerryVincent@users.noreply.github.com>
Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>
* Added annotations for sign-in

* fix(tools): auto generate docs in debug mode when page refreshes

---------

Co-authored-by: JerryVincent <jerrynambalampara111@gmail.com>
* build(deps): bump node dependency

* build(deps): update package.json to require at least node 22

* build(deps): set node to 24

* build(deps): install
Bumps [eslint-plugin-unicorn](https://github.com/sindresorhus/eslint-plugin-unicorn) from 56.0.1 to 60.0.0.
- [Release notes](https://github.com/sindresorhus/eslint-plugin-unicorn/releases)
- [Commits](sindresorhus/eslint-plugin-unicorn@v56.0.1...v60.0.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-unicorn
  dependency-version: 60.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Added clustering of mobile devices.

* feat: adjust cluster params according to discussion

---------

Co-authored-by: David Scheidt <david.scheidt@opensenselab.org>
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4 to 5.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* feat: add draft for port of user registration to resource route

* feat: partly implement refresh token

* docs: simplify contributing and add info about api routes and shared logic

* feat(api): finalize user registration endpoint

* fix(tests): get the tests to run be reconfiguring build steps

* docs(db): readd db setup and seed scripts with README info for it

* fix: wrong import of utils

* refactor: remove leftover custom server stuff

* fix(tests): add missing refresh token table

* fix(tests): reenable remaining tests for registration

* fix(ci): remove playwright and use correct node version

* fix(ci): run the tests with a postgres container

* feat(tests): add coverage report

* fix(build): reorganize server modules to correctly split client/ server

* fix(build): miss an import

* fix(build): remove leftovers from custom server implementation

* chore(deps): bump react-router dependencies

* chore(deps): update react-router

* feat/user me api (#559)

* feat(api): add api routes for /users/me

* fix(tests): api me PUT

* feat(api): add delete me endpoint

* feat(api): add root route (#560)

* start

* new commit

* tested docs

* added a route

* Added API Docs

* modified

* removed unsupported packages

* updated

* Modified

* script generation without using ts-node.

* modified

* fix: update package-lock.json

* Updated (#575)

* Updated README

* Updated README

* Removed duplicate Documentation section (#576)

* Updated README

* Updated README

* Removed duplicate section.

* Update README.md

* Feat/api email and password (#561)

* feat(api): add email-confirmation endpoint

* feat(api): add request password reset

* feat(api): add password reset

* feat(api): implement resend email confirmation (without sending yet)

* feat/api auth (#562)

* feat(api): add email-confirmation endpoint

* feat(api): add request password reset

* feat(api): add password reset

* feat(api): implement resend email confirmation (without sending yet)

* feat(api): add sign-in, sign-out and refresh-routes to api

* feat(api): implement refresh endpoint

---------

Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>

* feat(api): boxes for user endpoints (#573)

* feat/api misc (#571)

* feat(api): boxes for user endpoints

* feat(api): add tags and stats route scaffold

* feat(api): implement tags route

* refactor: remove unnecessary imports

* feat(api): implement statistics route

---------

Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>

* feat(api): add route and test files

* feat: add test code

* feat: add dummy sensors to devices and implement getting them back

* feat: prefer dev server in no production envs and hide dev in prod

* feat(docs): start adding docs to route

* feat: finish up to the point where we need measurements

* fix: api routes without need for measurements

* fix: stats call

* fix: remaining tests

* fix: frontend issue from changing the service implementation

* Feat/api boxes (#582)

* feat: add command for drizzle studio

* feat: devices loader

* feat: load single device

* feat: uncomment get boxes, delete box path

* feat(wip): add boxes test suite

* feat: add devices service

* fix: some types, formatting

* feat: wip devices api

* fix: tests

* refactor: use modern syntax for assertion

* feat: adjust for zod schema

* feat: add drizzle check

* feat: add phenomenon and dates to where clause

* fix: tests and validation schema

* fix: cast types as any temporarily

---------

Co-authored-by: jona159 <raabejonas@yahoo.de>

---------

Co-authored-by: JerryVincent <jerrynambalampara111@gmail.com>
Co-authored-by: Jerry Vincent <85385440+JerryVincent@users.noreply.github.com>
Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>
Co-authored-by: jona159 <raabejonas@yahoo.de>
…patibility (#613)

* feat: add helper file to parse both multipart/form-data and application/json request content

* feat: move /sign-in endpoint to /users/sign-in route

* fix: handle user case when no name is provided during registration gracefully

* feat: move endpoint /register to /users/register

* feat: move /refresh-auth to /users/refresh-auth and allow json format

* fix: linter warnings

* refactor: rename helpers.ts => request-parsing.ts

* refactor: remove unused api.users.ts

* fix: remove test for deleted endpoint

* fix: more helpers not realated to parsing back to helpers.ts

* fix: remove general helpers from request-parsing.ts

* refactor: rename helpers.spec.ts to request-parsing.spec.ts

---------

Co-authored-by: David Scheidt <scheidtdav@users.noreply.github.com>
* feat: add draft for port of user registration to resource route

* feat: partly implement refresh token

* docs: simplify contributing and add info about api routes and shared logic

* feat(api): finalize user registration endpoint

* fix(tests): get the tests to run be reconfiguring build steps

* docs(db): readd db setup and seed scripts with README info for it

* fix: wrong import of utils

* refactor: remove leftover custom server stuff

* fix(tests): add missing refresh token table

* fix(tests): reenable remaining tests for registration

* fix(ci): remove playwright and use correct node version

* fix(ci): run the tests with a postgres container

* feat(tests): add coverage report

* fix(build): reorganize server modules to correctly split client/ server

* fix(build): miss an import

* fix(build): remove leftovers from custom server implementation

* chore(deps): bump react-router dependencies

* chore(deps): update react-router

* feat/user me api (#559)

* feat(api): add api routes for /users/me

* fix(tests): api me PUT

* feat(api): add delete me endpoint

* feat(api): add root route (#560)

* start

* new commit

* tested docs

* added a route

* Added API Docs

* modified

* removed unsupported packages

* updated

* Modified

* script generation without using ts-node.

* modified

* fix: update package-lock.json

* Updated (#575)

* Updated README

* Updated README

* feat: add command for drizzle studio

* feat: devices loader

* feat: load single device

* feat: uncomment get boxes, delete box path

* feat(wip): add boxes test suite

* feat: add devices service

* fix: some types, formatting

* Removed duplicate Documentation section (#576)

* Updated README

* Updated README

* Removed duplicate section.

* Update README.md

* Feat/api email and password (#561)

* feat(api): add email-confirmation endpoint

* feat(api): add request password reset

* feat(api): add password reset

* feat(api): implement resend email confirmation (without sending yet)

* feat/api auth (#562)

* feat(api): add email-confirmation endpoint

* feat(api): add request password reset

* feat(api): add password reset

* feat(api): implement resend email confirmation (without sending yet)

* feat(api): add sign-in, sign-out and refresh-routes to api

* feat(api): implement refresh endpoint

---------

Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>

* feat(api): boxes for user endpoints (#573)

* feat/api misc (#571)

* feat(api): boxes for user endpoints

* feat(api): add tags and stats route scaffold

* feat(api): implement tags route

* refactor: remove unnecessary imports

* feat(api): implement statistics route

---------

Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>

* feat(api): add route and test files

* feat: add test code

* feat: add dummy sensors to devices and implement getting them back

* feat: prefer dev server in no production envs and hide dev in prod

* feat(docs): start adding docs to route

* feat: wip devices api

* feat: finish up to the point where we need measurements

* fix: api routes without need for measurements

* fix: stats call

* fix: remaining tests

* fix: frontend issue from changing the service implementation

* fix: tests

* refactor: use modern syntax for assertion

* feat: adjust for zod schema

* feat: add drizzle check

* feat: add phenomenon and dates to where clause

* feat: update returned data format of users/me/boxes endpoint to match old data format

* feat: expose additional device attributes

* fix: return jwt token as access_token

* feat: add post and get /boxes

* refactor: move CreateBoxSchema to devices-service.server.ts

* fix: comment get /boxes route since this functionality is not implemented

* fix: linting errors

* fix: failing tests

* feat: add type check

* feat: add check for authHeader for GET /users/me/boxes

* refactor: return box with sensor data from createDevice

* test: createDevice

* test: post /boxes

* fix: return last measurements as string

* fix: lastMeasurements types

* fix: linter warnings

* refactor: device.server.ts

* fix: linter warnings

* doc: udpate post api documentation

* fix: after merging dev into current branch.

* refactor: remove access_token mentions from api responses

* refactor: add check for request type for api/boxes endpoint

* doc: update api/boxes documentation after allowing different request types

* refactor: remove unused code and fix linter errors

* fix: linting issues

---------

Co-authored-by: David Scheidt <david.scheidt@opensenselab.org>
Co-authored-by: David Scheidt <scheidtdav@users.noreply.github.com>
Co-authored-by: JerryVincent <jerrynambalampara111@gmail.com>
Co-authored-by: Jerry Vincent <85385440+JerryVincent@users.noreply.github.com>
Co-authored-by: jona159 <raabejonas@yahoo.de>
Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>
* build(deps): bump axios and @directus/sdk

Bumps [axios](https://github.com/axios/axios) to 1.8.3 and updates ancestor dependency [@directus/sdk](https://github.com/directus/directus/tree/HEAD/sdk). These dependencies need to be updated together.


Updates `axios` from 1.7.9 to 1.8.3
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](axios/axios@v1.7.9...v1.8.3)

Updates `@directus/sdk` from 10.3.5 to 18.0.3
- [Release notes](https://github.com/directus/directus/releases)
- [Commits](https://github.com/directus/directus/commits/HEAD/sdk)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: indirect
- dependency-name: "@directus/sdk"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* feat: migrate to latest directus sdk

* fix: typescript issue with readonly string[] of languages

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: David Scheidt <david.scheidt@opensenselab.org>
* fix: handle existing usernames properly

* feat: add translations to sign up page

* feat: migrate join to new translations
* chore(deps): bump dependencies

* chore(deps): run npm audit

* chore(deps): update directus

* fix(deps): typecheck issues

* build: update package-lock

* fix: rewrite package-lock

* fix: issue from merge resolution

* fix: lint
* fix: update and remove a bunch of security vulnerable deps

* fix: rewrite package-lock.json
* fixed loading error of profile/username route

* fix: manage imports

---------

Co-authored-by: David Scheidt <david.scheidt@opensenselab.org>
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 5 to 6.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* feat: wip post new measurements

* feat: measurement service wip

* fix: some tests

* fix: migrations

* fix: tests for json data

* fix: cleanup

* feat: add tests and routes to post a measurement to a sensor

* feat: adjust post single measurement for location data

* feat: measurement location tests first draft

* feat: add more location tests

* feat: parse locations in decoder

* feat: do nothing on conflict, dont throw

* fix: access token migrations

* fix: byte protocol tests

* fix: typecheck

* fix: typo

* fix: check authorization token if box has auth enabled

* fix: add use auth to default columns

* fix: linting issue

---------

Co-authored-by: David Scheidt <david.scheidt@opensenselab.org>
Co-authored-by: David Scheidt <scheidtdav@users.noreply.github.com>
* build(deps): bump react-dom and @types/react-dom

Bumps [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) and [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom). These dependencies needed to be updated together.

Updates `react-dom` from 19.1.0 to 19.2.0
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v19.2.0/packages/react-dom)

Updates `@types/react-dom` from 19.1.6 to 19.2.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: react-dom
  dependency-version: 19.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/react-dom"
  dependency-version: 19.2.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix: update react as well

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: David Scheidt <david.scheidt@opensenselab.org>
* fixed loading error of profile/username route

* fix: show on map feature

* fix: add missing suffix

---------

Co-authored-by: David Scheidt <david.scheidt@opensenselab.org>
* feat: add issue templates

* feat: add pull request template

* feat: make it more clear how to check a box
* feat: add draft for port of user registration to resource route

* feat: partly implement refresh token

* docs: simplify contributing and add info about api routes and shared logic

* feat(api): finalize user registration endpoint

* fix(tests): get the tests to run be reconfiguring build steps

* docs(db): readd db setup and seed scripts with README info for it

* fix: wrong import of utils

* refactor: remove leftover custom server stuff

* fix(tests): add missing refresh token table

* fix(tests): reenable remaining tests for registration

* fix(ci): remove playwright and use correct node version

* fix(ci): run the tests with a postgres container

* feat(tests): add coverage report

* fix(build): reorganize server modules to correctly split client/ server

* fix(build): miss an import

* fix(build): remove leftovers from custom server implementation

* chore(deps): bump react-router dependencies

* chore(deps): update react-router

* feat/user me api (#559)

* feat(api): add api routes for /users/me

* fix(tests): api me PUT

* feat(api): add delete me endpoint

* feat(api): add root route (#560)

* start

* new commit

* tested docs

* added a route

* Added API Docs

* modified

* removed unsupported packages

* updated

* Modified

* script generation without using ts-node.

* modified

* fix: update package-lock.json

* Updated (#575)

* Updated README

* Updated README

* feat: add command for drizzle studio

* feat: devices loader

* feat: load single device

* feat: uncomment get boxes, delete box path

* feat(wip): add boxes test suite

* feat: add devices service

* fix: some types, formatting

* Removed duplicate Documentation section (#576)

* Updated README

* Updated README

* Removed duplicate section.

* Update README.md

* Feat/api email and password (#561)

* feat(api): add email-confirmation endpoint

* feat(api): add request password reset

* feat(api): add password reset

* feat(api): implement resend email confirmation (without sending yet)

* feat/api auth (#562)

* feat(api): add email-confirmation endpoint

* feat(api): add request password reset

* feat(api): add password reset

* feat(api): implement resend email confirmation (without sending yet)

* feat(api): add sign-in, sign-out and refresh-routes to api

* feat(api): implement refresh endpoint

---------

Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>

* feat(api): boxes for user endpoints (#573)

* feat/api misc (#571)

* feat(api): boxes for user endpoints

* feat(api): add tags and stats route scaffold

* feat(api): implement tags route

* refactor: remove unnecessary imports

* feat(api): implement statistics route

---------

Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>

* feat(api): add route and test files

* feat: add test code

* feat: add dummy sensors to devices and implement getting them back

* feat: prefer dev server in no production envs and hide dev in prod

* feat(docs): start adding docs to route

* feat: wip devices api

* feat: finish up to the point where we need measurements

* fix: api routes without need for measurements

* fix: stats call

* fix: remaining tests

* fix: frontend issue from changing the service implementation

* fix: tests

* refactor: use modern syntax for assertion

* feat: adjust for zod schema

* feat: add drizzle check

* feat: transfer routes

* feat(wip): transfer boxes

* fix: deprecated json function

* fix: imports

* fix: imports, json

* fix: imports, json

* fix: import

* fix: import order

* fix: import order

* fix: migrations

* feat: wrap device and claim update in transaction

* fix: rm duplicate functions, tests

* fix: error code

---------

Co-authored-by: David Scheidt <david.scheidt@opensenselab.org>
Co-authored-by: David Scheidt <scheidtdav@users.noreply.github.com>
Co-authored-by: JerryVincent <jerrynambalampara111@gmail.com>
Co-authored-by: Jerry Vincent <85385440+JerryVincent@users.noreply.github.com>
* fix: API path for /api/boxes/{deviceId}/sensors

* feat: get measurements for specific box

All the parameters are parsed but currently only the device and sensor ID are being used

* fix: don't explicitly state platform in docker-compose

* feat: cleanup types

* fix: function call and cleanup imports

* feat: get data properly

* feat: mark outliers

* feat: implement csv format

* feat: cleanup

* feat: add unit tests

* fix: remove todo

* fix: lint

* fix: timezones

* fix: lint and requested changes

* fix: delete unused function

---------

Co-authored-by: Timber <timber@opensenselab.org>
Co-authored-by: jona159 <raabejonas@yahoo.de>
JerryVincent and others added 10 commits November 12, 2025 10:36
… resources+ folder as the react router doesn't support this. (#647)

* Fixed the image upload problem and moved the resource routes from the resources+ folder as the react router doesn't support this.

* Clsoe enabled on the Dialog
* feat: create response utils

* feat: add response types to api.boxes.deviceId.data.sensorId

* fix: replace tab with space

* feat: implement location endpoint

* feat: only get required locations from database

* feat: unit tests

* fix: lint

* feat: delete unused method

* feat: delete outdated comment

* fix: remove duplicated whitespace

* fix: delete measurements for all test times

* fix: remove eslint ignore comment

* fix: lint

* feat: remove TODO

---------

Co-authored-by: Timber <timber@opensenselab.org>
* feat: use StandardResponse for API requests

* fix: change return code back to forbidden

* fix: tests

* fix: proper import in param-utils

* fix: don't stringify and don't return anything for no content

* fix: dont allow creating response body in no content util

---------

Co-authored-by: Timber <timber@opensenselab.org>
Co-authored-by: jona159 <raabejonas@yahoo.de>
* feat: add draft for port of user registration to resource route

* feat: partly implement refresh token

* docs: simplify contributing and add info about api routes and shared logic

* feat(api): finalize user registration endpoint

* fix(tests): get the tests to run be reconfiguring build steps

* docs(db): readd db setup and seed scripts with README info for it

* fix: wrong import of utils

* refactor: remove leftover custom server stuff

* fix(tests): add missing refresh token table

* fix(tests): reenable remaining tests for registration

* fix(ci): remove playwright and use correct node version

* fix(ci): run the tests with a postgres container

* feat(tests): add coverage report

* fix(build): reorganize server modules to correctly split client/ server

* fix(build): miss an import

* fix(build): remove leftovers from custom server implementation

* chore(deps): bump react-router dependencies

* chore(deps): update react-router

* feat/user me api (#559)

* feat(api): add api routes for /users/me

* fix(tests): api me PUT

* feat(api): add delete me endpoint

* feat(api): add root route (#560)

* start

* new commit

* tested docs

* added a route

* Added API Docs

* modified

* removed unsupported packages

* updated

* Modified

* script generation without using ts-node.

* modified

* fix: update package-lock.json

* Updated (#575)

* Updated README

* Updated README

* Removed duplicate Documentation section (#576)

* Updated README

* Updated README

* Removed duplicate section.

* Update README.md

* Feat/api email and password (#561)

* feat(api): add email-confirmation endpoint

* feat(api): add request password reset

* feat(api): add password reset

* feat(api): implement resend email confirmation (without sending yet)

* feat/api auth (#562)

* feat(api): add email-confirmation endpoint

* feat(api): add request password reset

* feat(api): add password reset

* feat(api): implement resend email confirmation (without sending yet)

* feat(api): add sign-in, sign-out and refresh-routes to api

* feat(api): implement refresh endpoint

---------

Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>

* feat(api): boxes for user endpoints (#573)

* feat/api misc (#571)

* feat(api): boxes for user endpoints

* feat(api): add tags and stats route scaffold

* feat(api): implement tags route

* refactor: remove unnecessary imports

* feat(api): implement statistics route

---------

Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>

* feat(api): add route and test files

* feat: add test code

* feat: add dummy sensors to devices and implement getting them back

* feat: prefer dev server in no production envs and hide dev in prod

* feat(docs): start adding docs to route

* feat: finish up to the point where we need measurements

* fix: api routes without need for measurements

* fix: stats call

* fix: remaining tests

* fix: frontend issue from changing the service implementation

* feat: add react mail

* feat: add nodemailer and setup for sending mails

* feat: send password reset mails

* refactor: fix lint issues with mails

* feat: implement email confirmation mail

* feat: add mail for new users

* fix: rewrite package lock

* fix: rewrite package lock

* fix: packages

* feat: add email to new devices being created

* feat: send mail when email requested to change

* feat: set email language properly

* feat: implement base mail for all devices and migrate device specifics

* fix: move ts-ignore

* fix: use example vars for test

* feat: use ethereal.email for testing

* fix: remove conflicting test

* fix: rewrite package-lock.json

* refactor: remove unused comment

* refactor: remove mailhog platform

* feat: remove support@sensebox.de and matthias mail address

---------

Co-authored-by: JerryVincent <jerrynambalampara111@gmail.com>
Co-authored-by: Jerry Vincent <85385440+JerryVincent@users.noreply.github.com>
Co-authored-by: jona159 <65068389+jona159@users.noreply.github.com>
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…page (#653)

* added language selection in the explore route

* User can now change the language of the map labels from the explore route.

* This commit fixes the language switching problem and avoids passing custom props.

* This commit uses type guardind for the layer instead of casting to any.

* Fix the bug that the app is not reflecting the default user language setting.

* This commit will fix the issues related to switching the language with the user-preferred language and falls back to the default language when a user is logged out.

* This commit will removes the eslint warnings and a test error which was happening in one of the test routes.

* refactor: remove unused state from selector

---------

Co-authored-by: David Scheidt <david.scheidt@opensenselab.org>
Co-authored-by: David Scheidt <scheidtdav@users.noreply.github.com>
* added language selection in the explore route

* User can now change the language of the map labels from the explore route.

* This commit fixes the language switching problem and avoids passing custom props.

* This commit uses type guardind for the layer instead of casting to any.

* Fix the bug that the app is not reflecting the default user language setting.

* This commit will fix the issues related to switching the language with the user-preferred language and falls back to the default language when a user is logged out.

* This commit will removes the eslint warnings and a test error which was happening in one of the test routes.

* This commit will fix the issue with the labels that are currently empty for the road markers.

* this commit will fix the formatting issues and removed the text-field names that might change in the future mapbox update..

* fix: resolve eslint warning

* refactor: reformat language selector

* refactor: use type for loader data

---------

Co-authored-by: David Scheidt <david.scheidt@opensenselab.org>
* added language selection in the explore route

* User can now change the language of the map labels from the explore route.

* This commit fixes the language switching problem and avoids passing custom props.

* This commit uses type guardind for the layer instead of casting to any.

* Fix the bug that the app is not reflecting the default user language setting.

* This commit will fix the issues related to switching the language with the user-preferred language and falls back to the default language when a user is logged out.

* This commit will removes the eslint warnings and a test error which was happening in one of the test routes.

* This commit will fix the issue with the labels that are currently empty for the road markers.

* this commit will fix the formatting issues and removed the text-field names that might change in the future mapbox update..

* This commit fill fix the eslint warning that complains about calling the i18next.changeLanguage().

* fixed formatting
@socket-security
Copy link

socket-security bot commented Dec 8, 2025

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Added@​types/​swagger-ui-react@​5.18.01001006578100
Updated@​radix-ui/​react-label@​2.1.1 ⏵ 2.1.710010066 -396100
Updated@​radix-ui/​react-separator@​1.1.1 ⏵ 1.1.710010067 -396100
Updated@​radix-ui/​react-aspect-ratio@​1.1.4 ⏵ 1.1.71001006796 -2100
Updated@​radix-ui/​react-toggle@​1.1.1 ⏵ 1.1.109910067 -396100
Added@​react-router/​serve@​7.9.4991006896100
Updated@​react-router/​express@​7.1.3 ⏵ 7.9.4100 +1100 +1569 +196100
Updatedcssnano@​7.0.6 ⏵ 7.1.199 +110069 +186 -3100
Updated@​radix-ui/​react-slot@​1.2.0 ⏵ 1.2.310010069 -396100
Updated@​radix-ui/​react-avatar@​1.1.2 ⏵ 1.1.109910069 -296100
Updated@​radix-ui/​react-switch@​1.1.2 ⏵ 1.2.69910070 -396100
Updated@​radix-ui/​react-toggle-group@​1.1.1 ⏵ 1.1.119910070 -396100
Updated@​radix-ui/​react-tabs@​1.1.2 ⏵ 1.1.139910070 -396100
Updated@​react-router/​fs-routes@​7.1.3 ⏵ 7.9.4100 +110070 +396 +1100
Updated@​react-router/​node@​7.1.3 ⏵ 7.9.4100 +110071 +196100
Updated@​radix-ui/​react-hover-card@​1.1.5 ⏵ 1.1.159910071 -396100
Updated@​radix-ui/​react-checkbox@​1.1.3 ⏵ 1.3.39910071 -296100
Updated@​radix-ui/​react-radio-group@​1.2.2 ⏵ 1.3.89910071 -396100
Updated@​radix-ui/​react-dropdown-menu@​2.1.5 ⏵ 2.1.169910071 -396100
Updated@​radix-ui/​react-alert-dialog@​1.1.5 ⏵ 1.1.159910071 -396100
Updated@​radix-ui/​react-popover@​1.1.5 ⏵ 1.1.159910071 -396100
Updated@​radix-ui/​react-accordion@​1.2.2 ⏵ 1.2.129910071 -396100
Updated@​radix-ui/​react-dialog@​1.1.11 ⏵ 1.1.15991007196100
Updated@​types/​compression@​1.7.5 ⏵ 1.8.110010072 +181100
Updated@​vitest/​coverage-v8@​3.0.5 ⏵ 3.2.49910072 +199 +1100
Updated@​radix-ui/​react-tooltip@​1.1.7 ⏵ 1.2.89910072 -396100
Updated@​radix-ui/​react-toast@​1.2.5 ⏵ 1.2.159910073 -396100
Updated@​types/​node-fetch@​2.6.12 ⏵ 2.6.131001007381100
Added@​types/​jsonwebtoken@​9.0.101001007382100
Updated@​tanstack/​react-table@​8.20.6 ⏵ 8.21.3100 +110073 +185100
Updated@​radix-ui/​react-scroll-area@​1.2.2 ⏵ 1.2.109910073 -296100
Updated@​radix-ui/​react-navigation-menu@​1.2.10 ⏵ 1.2.14991007396 -2100
See 42 more rows in the dashboard

View full report

@socket-security
Copy link

socket-security bot commented Dec 8, 2025

All alerts resolved. Learn more about Socket for GitHub.

This PR previously contained dependency changes with security issues that have been resolved, removed, or ignored.

Ignoring alerts on:

  • @react-email/preview-server@5.0.6

View full report

@scheidtdav scheidtdav marked this pull request as ready for review December 8, 2025 07:28
@scheidtdav
Copy link
Collaborator Author

@SocketSecurity ignore npm/@react-email/preview-server@5.0.6

@scheidtdav scheidtdav enabled auto-merge (squash) December 8, 2025 07:28
@scheidtdav scheidtdav merged commit 27c1ca7 into main Dec 8, 2025
16 of 18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants