63 Commits

Author SHA1 Message Date
Jorge Montejo
382481735a
feat: logout sessions on password change (#23188)
* log out ohter sessions on password change

* translations

* update and add tests

* rename event to UserLogoutOtherSessions

* fix typo

* requested changes

* fix tests

* fix medium:test

* use ValidateBoolean

* fix format

* dont delete current session id

* Update server/src/dtos/auth.dto.ts

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>

* rename event and invalidateOtherSessions

* chore: cleanup

---------

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-10-27 13:16:10 +00:00
aviv926
032de9ff2f
feat: view the user's app version on the user page (#21345)
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-10-22 00:36:18 +02:00
renovate[bot]
60a809d7b4
fix(deps): update typescript-projects (#20879)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-08-19 15:28:43 +01:00
Jason Rasmussen
e00556a34a
feat: get metadata about the current api key (#21027) 2025-08-18 18:15:03 -05:00
Zack Pollard
0a9cbf01d2
feat: ack sync reset (#20703) 2025-08-05 20:30:19 +00:00
Jason Rasmussen
58521c9efb
feat: change default media location to /data (#20367)
* feat!: change default media location to /data

* feat: dynamically detect media location
2025-07-29 16:58:50 -04:00
Jed-Giblin
9b3718120b
feat: shared links custom URL (#19999)
* feat: custom url for shared links

* feat: use a separate route and query param

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-07-28 14:16:55 -04:00
Jason Rasmussen
bc8cb9b671
fix: default route permission (#20113) 2025-07-23 16:56:38 -04:00
Jason Rasmussen
493d85b021
feat!: absolute file paths (#19995)
feat: absolute file paths
2025-07-18 10:57:29 -04:00
Jason Rasmussen
e73abe0762
refactor: enum casing (#19946) 2025-07-15 14:50:13 -04:00
Jason Rasmussen
920d7de349
refactor: event names (#19945) 2025-07-15 13:41:19 -04:00
Jason Rasmussen
4b3a4725c6
feat: pending sync reset flag (#19861) 2025-07-11 09:38:02 -04:00
Daniel Dietzler
4ce9bce414
feat: oauth role claim (#19758) 2025-07-06 18:45:32 -04:00
Jason Rasmussen
09cbc5d3f4
refactor: change password repository lookup (#19584) 2025-06-27 16:52:04 -04:00
Daimolean
004c2f2496
fix(web): OAuth quota size (#18526)
fix(server): oauth quota size
2025-06-13 10:57:29 -04:00
Brandon Wees
74438f5bd8
feat(web): improved user onboarding (#18782)
* wip

* added user metadata key

* wip

* restructure onboarding system and add initial locale

* update language card and fix translation updating

* remove prints

* new card formattings

* fix cursed unmount effect

* add OAuth route onboarding

* remove required admin auth for onboarding

* delete the hotwire button

* update open-api files

* delete import

* fix failing oauth onboarding fields

* fix e2e test

* fix web e2e test

* add onboarding to user registration e2e test

* remove todo

this was a holdover during dev and didn't get deleted

* fix server small tests

* use onDestroy to save settings rather than a bind:this

* change to false for isOnboarded

* fix other auth small test

* provide type annotation in user factory metadata field

* remove onboardingCompelted from UserDto

* move translations to onboarding steps array and mark as derived so they update

* break language selector out into its own component as per @danieldietzler suggestion

* remove hello header on card

* fix flixkering on server privacy card

* label/id fixes

* openapi

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-06-02 21:09:13 +00:00
Jason Rasmussen
c1150fe7e3
feat: lock auth session (#18322) 2025-05-15 18:08:31 -04:00
Alex
b7b0b9b6d8
feat: locked/private view (#18268)
* feat: locked/private view

* feat: locked/private view

* pr feedback

* fix: redirect loop

* pr feedback
2025-05-15 15:35:21 +00:00
Alex
3f719bd8d7
feat: user pin-code (#18138)
* feat: user pincode

* pr feedback

* chore: cleanup

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-05-09 17:00:58 -04:00
Jason Rasmussen
1b5e981a45
fix: failing ci checks (#17810) 2025-04-23 10:59:54 -04:00
Tin Pecirep
b7a0cf2470 feat: add oauth2 code verifier
* fix: ensure oauth state param matches before finishing oauth flow

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>

* chore: upgrade openid-client to v6

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>

* feat: use PKCE for oauth2 on supported clients

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>

* feat: use state and PKCE in mobile app

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>

* fix: remove obsolete oauth repository init

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>

* fix: rewrite callback url if mobile redirect url is enabled

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>

* fix: propagate oidc client error cause when oauth callback fails

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>

* fix: adapt auth service tests to required state and PKCE params

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>

* fix: update sdk types

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>

* fix: adapt oauth e2e test to work with PKCE

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>

* fix: allow insecure (http) oauth clients

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>

---------

Signed-off-by: Tin Pecirep <tin.pecirep@gmail.com>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-04-23 15:08:11 +01:00
Etienne
d7a782da34
feat: sync pictureFile with oidc if it isn't set already (#17397)
* feat: sync pictureFile with oidc if it isn't set already

fix: move picture writer to get userId

fix: move await promise to the top of the setPicure function before checking its value and automatically create the user folder

chore: code cleanup

* fix: extension double dot

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-04-11 13:00:39 -05:00
Jason Rasmussen
584e5894bf
refactor: user factories instead of stubs (#17540) 2025-04-11 11:53:37 -04:00
Zack Pollard
94dba29298
refactor: remove user entity (#17498) 2025-04-10 10:53:21 -04:00
Jason Rasmussen
206545356d
refactor: metadata entity (#17492) 2025-04-09 11:45:30 -04:00
Jason Rasmussen
8943ec23ba
refactor: more database types (#17490) 2025-04-09 10:24:38 -04:00
Jason Rasmussen
1382b27349
refactor: repository mocks (#16785) 2025-03-10 16:52:44 -04:00
Jason Rasmussen
e97df503f2
refactor: api key spec to use factories (#16776) 2025-03-10 12:04:35 -04:00
Jason Rasmussen
735f8d661e
refactor: test mocks (#16008) 2025-02-11 00:47:42 +01:00
Jason Rasmussen
758449e9f0
refactor: session repository (#15957) 2025-02-07 23:16:40 +00:00
Jason Rasmussen
03948a69e2
refactor: system metadata repository (#15954) 2025-02-07 17:26:49 -05:00
Jason Rasmussen
1869b1b41a
refactor: repositories (#15561)
* refactor: version history repository

* refactor: oauth repository

* refactor: trash repository

* refactor: telemetry repository

* refactor: metadata repository

* refactor: cron repository

* refactor: map repository

* refactor: server-info repository

* refactor: album user repository

* refactor: notification repository
2025-01-23 18:10:17 -05:00
Jason Rasmussen
9a1068c867
refactor: api key repository (#15491) 2025-01-21 10:45:59 -06:00
Daniel Dietzler
3d13da7f11
refactor: migrate shared-link repository to kysely (#15289)
* refactor: migrate shared-link repository to kysely

* fix duplicate individual shared link return in getAll when there are more than 1 asset in the shared link

* using correct order condition

* using eb.table

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-01-18 13:25:15 -06:00
Alex
79726acc72
refactor: migrate sessions repository to kysely (#15268)
* wip: search

* wip: getByToken

* wip: getByToken

* wip: getByUserId

* wip: create/update/delete

* remove unused code

* clean up and pr feedback

* fix: test

* fix: e2e test

* pr feedback
2025-01-13 20:45:52 -05:00
Alex
3da750117f
refactor: migrate user repository to kysely (#15296)
* refactor: migrate user repository to kysely

* refactor: migrate user repository to kysely

* refactor: migrate user repository to kysely

* refactor: migrate user repository to kysely

* fix: test

* clean up

* fix: metadata retrieval bug

* use correct typeing for upsert metadata

* pr feedback

* pr feedback

* fix: add deletedAt check

* fix: get non deleted user by default

* remove console.log

* fix: stop kysely after command finishes

* final clean up

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-01-13 20:30:34 -05:00
Jason Rasmussen
930f979960
feat: migration api keys to use kysely (#15206) 2025-01-10 14:02:12 -05:00
Daniel Dietzler
a3712e40bd
fix: parse quota claim as number (#14178) 2024-11-19 15:40:56 -06:00
Jason Rasmussen
930df46f74
chore(server): remove unused code (#13367) 2024-10-11 00:44:38 -04:00
Daniel Dietzler
9d0f03808c
chore: finishing unit tests for a couple of services (#13292) 2024-10-08 17:08:49 -04:00
Daniel Dietzler
a5e9adb593
chore: migrate oauth to repo (#13211) 2024-10-05 16:37:33 -04:00
Daniel Dietzler
9d9bf1c88d
chore: auth unit tests (#13207) 2024-10-05 12:16:23 -04:00
Jason Rasmussen
4ea281f854
refactor: service dependencies (#13108)
refactor(server): simplify service dependency management
2024-10-02 10:54:35 -04:00
Jason Rasmussen
63437529e1
refactor(server): config file env (#13100) 2024-10-01 16:03:55 -04:00
Jason Rasmussen
12da250028
refactor: enums (#12988) 2024-09-27 10:28:42 -04:00
Jason Rasmussen
2554cc96b0
feat(web): logout of all tabs (#12407) 2024-09-07 13:21:05 -04:00
Jason Rasmussen
5e6ac87eaf
chore: object shorthand linting rule (#12152)
chore: object shorthand
2024-08-30 14:38:53 -04:00
Kenneth Bingham
2297d86569
fix(mobile): use a valid OAuth callback URL (#10832)
* add root resource path '/' to mobile oauth scheme

* chore: add oauth-callback path

* add root resource path '/' to mobile oauth scheme

* chore: add oauth-callback path

* fix: make sure there are three forward slash in callback URL

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-08-28 11:30:06 -05:00
Jason Rasmussen
a4506758aa
refactor: auth service (#11811) 2024-08-15 09:14:23 -04:00
Jason Rasmussen
c6ab047167
fix(server): oauth linking error message (#10287) 2024-06-13 11:42:07 -04:00