Commit Graph

339 Commits (496b0c7076a23a6b34e2ff7ede94ee85bafe9e1a)

Author SHA1 Message Date
Min Idzelis e7edbcdf04
feat(server): lighter buckets (#17831)
* feat(web): lighter timeline buckets

* GalleryViewer

* weird ssr

* Remove generics from AssetInteraction

* ensure keys on getAssetInfo, alt-text

* empty - trigger ci

* re-add alt-text

* test fix

* update tests

* tests

* missing import

* feat(server): lighter buckets

* fix: flappy e2e test

* lint

* revert settings

* unneeded cast

* fix after merge

* Adapt web client to consume new server response format

* test

* missing import

* lint

* Use nulls, make-sql

* openapi battle

* date->string

* tests

* tests

* lint/tests

* lint

* test

* push aggregation to query

* openapi

* stack as tuple

* openapi

* update references to description

* update alt text tests

* update sql

* update sql

* update timeline tests

* linting, fix expected response

* string tuple

* fix spec

* fix

* silly generator

* rename patch

* minimize sorting

* review

* lint

* lint

* sql

* test

* avoid abbreviations

* review comment - type safety in test

* merge conflicts

* lint

* lint/abbreviations

* remove unncessary code

* review comments

* sql

* re-add package-lock

* use booleans, fix visibility in openapi spec, less cursed controller

* update sql

* no need to use sql template

* array access actually doesn't seem to matter

* remove redundant code

* re-add sql decorator

* unused type

* remove null assertions

* bad merge

* Fix test

* shave

* extra clean shave

* use decorator for content type

* redundant types

* redundant comment

* update comment

* unnecessary res

---------

Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-05-19 16:40:48 +07:00
koostamas b63d6cdcd6
feat: bulk change description (#18288)
Co-authored-by: Tamas Koos <ext_tamas.koos@btrl.ro>
2025-05-17 12:17:00 +07:00
Jason Rasmussen 28d8357cc5
feat(web): clear person birthdate (#18330) 2025-05-16 11:56:25 +07:00
Jason Rasmussen c1150fe7e3
feat: lock auth session (#18322) 2025-05-15 18:08:31 +07:00
Brandon Wees 6117329057
feat: add session creation endpoint (#18295) 2025-05-15 13:34:33 +07: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 +07:00
Jason Rasmussen 3066c8198c
feat(web): user detail page (#18230)
feat: user detail page
2025-05-12 16:50:26 +07: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 +07:00
Alex d33ce13561
feat(server): visibility column (#17939)
* feat: private view

* pr feedback

* sql generation

* feat: visibility column

* fix: set visibility value as the same as the still part after unlinked live photos

* fix: test

* pr feedback
2025-05-06 12:12:48 +07:00
Jason Rasmussen b845184c80
chore: remove old memory lane implementation (#18000) 2025-04-30 14:23:32 +07:00
Jason Rasmussen 094a41ac9a
chore: remove audit file report (#17994) 2025-04-30 11:17:23 +07:00
Jason Rasmussen d89e88bb3f
feat: configure token endpoint auth method (#17968) 2025-04-29 15:17:48 +07:00
Jason Rasmussen 1b5fc9c665
feat: notifications (#17701)
* feat: notifications

* UI works

* chore: pr feedback

* initial fetch and clear notification upon logging out

* fix: merge

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-04-28 10:36:14 +07:00
Jason Rasmussen ad272333db
refactor: user avatar color (#17753) 2025-04-28 08:54:51 +07:00
github-actions 02994883fe chore: version v1.132.3 2025-04-25 19:44:05 +07:00
github-actions 0d60be3d87 chore: version v1.132.2 2025-04-25 03:07:06 +07:00
github-actions 37f5e6e2cb chore: version v1.132.1 2025-04-23 21:43:47 +07:00
github-actions f659ef4b7a chore: version v1.132.0 2025-04-23 16:44:47 +07: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 +07:00
Jason Rasmussen 488dc4efbd
refactor: notification-admin controller (#17748) 2025-04-21 10:49:26 +07:00
Ruben Hensen 99cddf1fd6
feat: allow accounts with a quota of 0 GiB (#17413)
* Allow 0GiB quotas in user create/edit form, remove unused translations

* Make requireQuota check for null or 0

* Add unlimited quota change to the docs

* Fix user dto formatting

* Fix formating edit-user-form

* Regenerate open-api files

* Revert unnecessary i18n file changes

* Re-add newline en.json

* Resolve linting issues

* Fix formatting edit-user-form

* Re-add manifest
2025-04-07 09:22:56 +07:00
github-actions 00d3b8d83a chore: version v1.131.3 2025-04-01 22:27:52 +07:00
github-actions 9aa3850769 chore: version v1.131.2 2025-04-01 11:41:56 +07:00
github-actions 7729fe80fa chore: version v1.131.1 2025-03-31 20:36:48 +07:00
github-actions 5b63b9fc8b chore: version v1.131.0 2025-03-31 18:41:13 +07:00
Eli Gao 5c80e8734b
feat: original-sized previews for non-web-friendly images (#14446)
* feat(server): extract full-size previews from RAW images

* feat(web): load fullsize preview for RAW images when zoomed in

* refactor: tweaks for code review

* refactor: rename "converted" preview/assets to "fullsize"

* feat(web/server): fullsize preview for non-web-friendly images

* feat: tweaks for code review

* feat(server): require ASSET_DOWNLOAD premission for fullsize previews

* test: fix types and interfaces

* chore: gen open-api

* feat(server): keep only essential exif in fullsize preview

* chore: regen openapi

* test: revert unnecessary timeout

* feat: move full-size preview config to standalone entry

* feat(i18n): update en texts

* fix: don't return fullsizePath when disabled

* test: full-size previews

* test(web): full-size previews

* chore: make open-api

* feat(server): redirect to preview/original URL when fullsize thumbnail not available

* fix(server): delete fullsize preview image on thumbnail regen after fullsize preview turned off

* refactor(server): AssetRepository.deleteFiles with Kysely

* fix(server): type of MediaRepository.writeExif

* minor simplification

* minor styling changes and condensed wording

* simplify

* chore: reuild open-api

* test(server): fix media.service tests

* test(web): fix photo-viewer test

* fix(server):  use fullsize image when requested

* fix file path extension

* formatting

* use fullsize when zooming back out or when "display original photos" is enabled

* simplify condition

---------

Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2025-03-31 13:24:28 +07:00
Mert 6789c2ac19
feat(ml): better multilingual search with nllb models (#13567) 2025-03-31 11:06:57 +07:00
github-actions 43f8f473e9 chore: version v1.130.3 2025-03-27 15:54:30 +07:00
github-actions 2f8725c66f chore: version v1.130.2 2025-03-26 15:34:54 +07:00
github-actions 4cf7c55680 chore: version v1.130.1 2025-03-25 20:25:01 +07:00
github-actions 42b1efb679 chore: version v1.130.0 2025-03-25 13:48:45 +07:00
Dmitry Vakhnenko d7a6e78bf0
fix(server): /api/stacks does not handles primaryAssetId query param (#16868)
fix(server): add missing validation decorator
2025-03-18 11:54:50 +07:00
Lorenzo Montanari d7e0f0e70e
feat(web): exposed a job to manually trigger database backup procedures (#16622)
* feat(web): exposed a new job to create a manual database backup

* chore(server): added a new test case

* chore(server): moved job to backup db into the create job popup

* remove irrelevant change

* openapi

* chore: formatting

* docs: trigger backup documentation

---------

Co-authored-by: Lorenzo Montanari <13736036+l0ll098@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
Co-authored-by: Zack Pollard <zack@futo.org>
2025-03-11 11:30:43 +07:00
Jason Rasmussen a96bba4b26
feat: sync assets, partner assets, exif, and partner exif (#16658)
* feat: sync assets, partner assets, exif, and partner exif

Co-authored-by: Zack Pollard <zack@futo.org>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>

* refactor: remove duplicate where clause and orderBy statements in sync queries

* fix: asset deletes not filtering by ownerId

---------

Co-authored-by: Zack Pollard <zack@futo.org>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-03-10 12:05:39 +07:00
github-actions 31dd15ce8a chore: version v1.129.0 2025-03-05 19:47:50 +07:00
Zack Pollard fe702ba6d7
feat: partner sync (#16424)
feat: partner CUD sync
2025-03-03 11:05:30 +07:00
github-actions dc143046e3 chore: version v1.128.0 2025-02-28 18:54:08 +07:00
Mert 7d6cfd09e6
fix(server): don't expose source types in face creation api (#16381)
* don't expose source types in face creation api

* update open-api

* remove source type reference from web
2025-02-27 17:17:07 +07:00
David Bourgault 4b55888d16
fix: ensure manually tagged faces have proper source type (#16364)
immich-app/immich#16062 added manual face tagging and deletion, but did
not add a new 'SourceType'. The create faces would default to
'machine-learning' which is incorrect, and has the annoying downside
that they will be wiped when the 'Refresh Faces' job is run.

Handling of non-machine-learning faces was previously added in
immich-app/immich#6455. This PR simply extends it to the new manually
tagged faces.
2025-02-26 20:53:21 +07:00
github-actions 5f7f88ff17 chore: version v1.127.0 2025-02-26 15:18:50 +07:00
Jason Rasmussen d350022dec
feat: persistent memories (#15953)
feat: memories

refactor

chore: use heart as favorite icon

fix: linting
2025-02-21 12:31:37 +07:00
Alex 007eaaceb9
feat(web): manual face tagging and deletion (#16062) 2025-02-21 09:58:25 +07:00
Zack Pollard ac36effb45
feat: sync implementation for the user entity (#16234)
* ci: print out typeorm generation changes

* feat: sync implementation for the user entity

wip

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-02-20 23:37:57 +07:00
Jason Antwi-Appah 34b88bb47a
feat(web): support searching by EXIF rating (#16208)
* Add rating to search DTO

* Add search by EXIF rating in search query builder

* Generate OpenAPI spec

* Add rating filter on web

* Add rating filter to search docs

* Format / lint

* Hide rating filter if ratings are disabled

* chore: component order in form

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-02-20 16:17:06 +07:00
Jason Rasmussen 7c26663013
chore: removed unused endpoint (#16167) 2025-02-17 13:07:50 +07:00
github-actions 8794c84e9d chore: version v1.126.1 2025-02-10 17:54:02 +07:00
github-actions feba590de7 chore: version v1.126.0 2025-02-10 16:10:06 +07:00
Jason Rasmussen 61b8eb85b5
feat: view album shared links (#15943) 2025-02-07 16:38:20 +07:00
Jason Rasmussen c5360e78c5
feat(web): shared link filters (#15948) 2025-02-07 13:05:15 +07:00
Jason Rasmussen 23014c263b
feat(api): set person color (#15937) 2025-02-07 10:06:58 +07:00
Arno 7ec3610753
feat: Mark people as favorite (#14866)
* feat: added ability to mark people as favorite, which get sorted to the front of the people list

* feat(server): added unit test for favorite people

* feat(server): refactored for better readability

* fixed person service unit tests

* fixed open-api and sql checks

* fixed bad codegen and removed unnecessary type assertion again

* chore: clean up

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2025-02-04 08:52:17 +07:00
Alex 4efacfbb91
feat: search by description (#15818)
* feat: search by description

* wip: mobile

* wip: mobile ui

* wip: mobile search logic

* feat: using f_unaccent

* icon to fit with text search
2025-02-02 15:18:13 +07:00
David Wolff 9ac95d6845
feat: add searching by tags (#15395)
* feat: add searching by tags

* fix: fix merge

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-01-31 21:37:22 +07:00
github-actions 4fd8c1b3c1 chore: version v1.125.7 2025-01-29 17:41:38 +07:00
Ben Cochran b4a4abbf51
fix(docs): move a few API doc comments to descriptions (#15381)
Previously, the comments were being used as the summaries, and thus were
displayed as the “title” of these endpoints
2025-01-29 11:58:10 +07:00
Jason Rasmussen a0aea021a1
fix(server): restore user (#15763) 2025-01-29 16:49:08 +07:00
Christian Kündig fe1e09e51f
fix(server): Allow negative rating (for rejected images) (#15699)
Allow negative rating (for rejected images)
2025-01-27 21:54:29 +07:00
github-actions f44669447f chore: version v1.125.6 2025-01-28 02:58:27 +07:00
github-actions 64d926581f chore: version v1.125.5 2025-01-27 20:04:50 +07:00
github-actions e5794e6cfc chore: version v1.125.4 2025-01-27 18:44:12 +07:00
github-actions 72a55c13b6 chore: version v1.125.3 2025-01-26 14:14:48 +07:00
github-actions 9871a04d54 chore: version v1.125.2 2025-01-24 19:09:06 +07:00
github-actions 50a2f6193f chore: version v1.125.1 2025-01-23 16:52:23 +07:00
github-actions 49a16045bd chore: version v1.125.0 2025-01-23 16:23:47 +07:00
Mert 2e12c46980
refactor(server): use kysely (#12857) 2025-01-09 11:15:41 +07:00
github-actions 8d836ae04f chore: version v1.124.2 2025-01-08 23:16:35 +07:00
github-actions cc10fc15c3 chore: version v1.124.1 2025-01-08 16:16:15 +07:00
github-actions 840d99ed25 chore: version v1.124.0 2025-01-07 19:00:42 +07:00
renovate[bot] 6b08e82cf7
fix(deps): update dependency @nestjs/swagger to v8 (#13881)
* fix(deps): update dependency @nestjs/swagger to v8

* chore: generate open api

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2024-12-23 21:03:34 +07:00
github-actions fd34a914a6 chore: version v1.123.0 2024-12-17 16:00:50 +07:00
Lukas 12e55f5bf0
feat(server): Merge Faces sorted by Similarity (#14635)
* Merge Faces sorted by Similarity

* Adds face sorting to the side panel face merger

* run make open-api

* Make it one query

* Only have the single order by when sorting by closest face
2024-12-16 08:47:11 +07:00
github-actions c52f1bae81 chore: version v1.122.3 2024-12-11 21:15:03 +07:00
github-actions 03eb5903fe chore: version v1.122.2 2024-12-08 23:41:22 +07:00
github-actions 97c1eb7289 chore: version v1.122.1 2024-12-06 13:49:14 +07:00
github-actions 37220a342a chore: version v1.122.0 2024-12-05 16:29:46 +07:00
Tim Van Onckelen 292182fa7f
feat: Notification Email Templates (#13940) 2024-12-04 20:26:02 +07:00
Mert 4bf1b84cc2
feat(ml): support multiple urls (#14347)
* support multiple url

* update api

* styling

unnecessary `?.`

* update docs, make new url field go first

add load balancing section

* update tests

doc formatting

wording

wording

linting

* small styling

* `url` -> `urls`

* fix tests

* update docs

* make docusaurus happy

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-12-04 20:17:47 +07:00
Sam Holton 5417e34fb6
feat(server): Add publicUsers toggle for user search (#14330)
* feat(server): Add publicUsers toggle for user search

* tests

* docs: add check:typescript for web PR checklist

* return auth.user when publicUsers is false - app testing

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-11-26 15:51:01 +07:00
Jason Rasmussen 9e1e9b1fbf
refactor: rename searchMetadata to searchAssets (#14151) 2024-11-20 14:47:25 +07:00
github-actions 98c9ae1f7d chore: version v1.121.0 2024-11-20 16:15:53 +07:00
weathondev f5c4af73aa
feat: adding photo & video storage space to server stats (#14125)
* expose detailed user storage stats + display them in the storage per user table

* chore: openapi & sql

* fix: fix test stubs

* fix: formatting errors, e2e test and server test

* fix: upper lower case typo in spec file

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-11-15 16:38:57 +07:00
github-actions 31a1e64b58 chore: version v1.120.2 2024-11-12 17:30:29 +07:00
Jason Rasmussen 64831e2328
refactor: remove smart info table (#13985) 2024-11-07 11:25:10 +07:00
github-actions 599b489f81 chore: version v1.120.1 2024-11-07 15:31:19 +07:00
github-actions f1b8a9374f chore: version v1.120.0 2024-11-06 16:17:29 +07:00
Mert b9096f3e99
feat(server): use tonemapx for software tone-mapping (#13785) 2024-10-31 20:48:23 +07:00
Zack Pollard 7d933ec97a
feat: built-in automatic database backups (#13773) 2024-10-31 11:29:42 +07:00
github-actions 00dd9419a5 chore: version v1.119.1 2024-10-29 13:33:36 +07:00
github-actions 8449e78c8f chore: version v1.119.0 2024-10-28 14:41:08 +07:00
pyorot b1149881bd
feat(server): add pcm_s16le accepted audio codec (#13418) 2024-10-18 08:26:16 +07:00
github-actions e8015dc7d7 chore: version v1.118.2 2024-10-16 18:44:39 +07:00
github-actions edd7dfb5d8 chore: version v1.118.1 2024-10-15 20:44:10 +07:00
github-actions 8f69d9d0ec chore: version v1.118.0 2024-10-15 10:48:53 +07:00
Jason Rasmussen 7ee0221c8e
chore: remove deprecated endpoint (#13190) 2024-10-04 15:10:13 +07:00
Mert 2c87683fd4
feat(server): refresh face detection (#12335)
* refresh faces

handle non-ml faces

* fix metadata face handling

* updated tests

* added todo comment
2024-10-03 21:58:28 +07:00
github-actions 6b8462402b chore: version v1.117.0 2024-10-03 01:59:28 +07:00
Jason Rasmussen 4d20b11f25
feat: track upgrade history (#13097) 2024-10-01 13:33:58 +07:00
Zack Pollard 3eccff4306
feat: support and feedback modal with third party support (#13056) 2024-10-01 11:15:31 +07:00
Mert 7adb35e59e
fix(server): `/search/random` failing with certain options (#13040)
* fix relation handling, remove pagination

* update api, sql

* update mock
2024-09-30 00:29:35 +07:00
Mert 995f0fda47
feat(server): separate quality for thumbnail and preview images (#13006)
* allow different thumbnail and preview quality, better config structure

* update web and api

* wording

* remove empty line?
2024-09-28 06:01:04 +07:00