Commit graph

2762 commits

Author SHA1 Message Date
izzy
1ed2cdae1a
feat: add a link to maintenance mode documentation 2025-11-05 17:03:51 +00:00
izzy
57997c001e
refactor: always validate the maintenance auth on the server 2025-11-05 16:07:41 +00:00
izzy
421bf855d3
feat: log into maintenance mode from CLI command 2025-11-05 14:39:34 +00:00
izzy
014669f4a4
feat: jwt auth for maintenance 2025-11-05 13:44:43 +00:00
izzy
1350f5cbd5
refactor(web): move redirect logic into +layout file where modal is setup 2025-11-05 11:19:48 +00:00
izzy
3e850d96d8
feat: reimplement maintenance mode exit with new module 2025-11-05 11:00:07 +00:00
izzy
63c219f3e0
chore: connect websocket on client if in maintenance 2025-11-05 10:47:52 +00:00
izzy
f80782f543
feat: initial draft of maintenance module, repo., worker controller, worker service 2025-11-04 18:29:32 +00:00
izzy
27b7890e83
fix: minor error in page 2025-11-03 13:50:30 +00:00
izzy
6968741784
chore: remove negated condition from hook 2025-11-03 11:41:27 +00:00
izzy
bf99f8c20b
chore: add i18n entries for maintenance screens 2025-11-03 11:40:32 +00:00
izzy
f8d510168e
fix: logic error in server redirect 2025-11-03 11:19:56 +00:00
izzy
78520c462f
chore: clean up linter issues 2025-11-03 11:09:07 +00:00
izzy
c8b63f8664
refactor: bubble up maintenance information instead of hijacking in fetch function
feat: show modal when server is restarting
2025-11-03 10:26:53 +00:00
izzy
5f81c4ebb5
feat: broadcast websocket event on server restart
refactor: listen to WS instead of polling
2025-11-03 10:26:05 +00:00
izzy
7b28284ddf
refactor: wait on WebSocket connection to refresh 2025-10-31 17:42:01 +00:00
izzy
2afbff36a3
refactor: use system metadata for maintenance status 2025-10-31 17:28:57 +00:00
izzy
625230f3e5
feat: redirect into/from maintenance page 2025-10-31 15:56:00 +00:00
izzy
38d2e940e5
chore: fallback IMMICH_SERVER_URL environment variable in process 2025-10-31 15:50:06 +00:00
izzy
2a06960b29
feat: add a maintenance.enabled config flag 2025-10-31 12:46:06 +00:00
github-actions
57c8378ca7 chore: version v2.2.0 2025-10-30 14:42:44 +00:00
Alex
2286444158
chore: css nits (#23330) 2025-10-29 09:20:04 -05:00
renovate[bot]
b489bdf8d3
chore(deps): update node.js to v24 (#23346)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-29 14:48:20 +01:00
renovate[bot]
fdfb04d83c
fix(deps): update typescript-projects (#23311)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-10-29 11:34:20 +00:00
Min Idzelis
8d25f81bec
fix: regression - search results not visible until scroll (#23321) 2025-10-28 14:15:24 -05:00
Jason Rasmussen
52596255c8
feat: toasts (#23298) 2025-10-28 14:09:11 -05:00
Thomas Stachl
fb97d9f4d9
fix(web): disable picture-in-picture on video viewer (#23318) 2025-10-28 09:15:35 -05:00
renovate[bot]
f72bcc8a8f
chore(deps): update node.js to v22.21.0 (#23314)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-28 12:36:19 +00:00
Min Idzelis
d51b8c1cdf
fix: focus-trap on safari (#23246) 2025-10-27 21:29:30 -05:00
Alex
698531d6e0
feat: improve UI for resolving duplication detection (#23145)
* feat: improve UI for resolving duplication detection

* pr feedback
2025-10-27 17:32:52 -04:00
Zac Warham
b0d427f8f9
chore: show leading zero week in storage template (#23275)
* Use date which shows week with a zero

* Update sample date in SupportedDatetimePanel

* Update web/src/lib/components/admin-settings/SupportedDatetimePanel.svelte

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-10-27 09:21:37 -05:00
Kang
02b29046b3
feat: ocr (#18836)
* feat: add OCR functionality and related configurations

* chore: update labeler configuration for machine learning files

* feat(i18n): enhance OCR model descriptions and add orientation classification and unwarping features

* chore: update Dockerfile to include ccache for improved build performance

* feat(ocr): enhance OCR model configuration with orientation classification and unwarping options, update PaddleOCR integration, and improve response structure

* refactor(ocr): remove OCR_CLEANUP job from enum and type definitions

* refactor(ocr): remove obsolete OCR entity and migration files, and update asset job status and schema to accommodate new OCR table structure

* refactor(ocr): update OCR schema and response structure to use individual coordinates instead of bounding box, and adjust related service and repository files

* feat: enhance OCR configuration and functionality

- Updated OCR settings to include minimum detection box score, minimum detection score, and minimum recognition score.
- Refactored PaddleOCRecognizer to utilize new scoring parameters.
- Introduced new database tables for asset OCR data and search functionality.
- Modified related services and repositories to support the new OCR features.
- Updated translations for improved clarity in settings UI.

* sql changes

* use rapidocr

* change dto

* update web

* update lock

* update api

* store positions as normalized floats

* match column order in db

* update admin ui settings descriptions

fix max resolution key

set min threshold to 0.1

fix bind

* apply config correctly, adjust defaults

* unnecessary model type

* unnecessary sources

* fix(ocr): switch RapidOCR lang type from LangDet to LangRec

* fix(ocr): expose lang_type (LangRec.CH) and font_path on OcrOptions for RapidOCR

* fix(ocr): make OCR text search case- and accent-insensitive using ILIKE + unaccent

* fix(ocr): add OCR search fields

* fix: Add OCR database migration and update ML prediction logic.

* trigrams are already case insensitive

* add tests

* format

* update migrations

* wrong uuid function

* linting

* maybe fix medium tests

* formatting

* fix weblate check

* openapi

* sql

* minor fixes

* maybe fix medium tests part 2

* passing medium tests

* format web

* readd sql

* format dart

* disabled in e2e

* chore: translation ordering

---------

Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-10-27 14:09:55 +00:00
Min Idzelis
c666dc6c67
fix: back/forward navigation won't reset scroll in timeline (#22838)
* fix: back/forward navigation won't reset scroll in timeline

Fixes a bug where navigating to/from the asser-viewer from timeline causes the scroll position to be reset.

* Fix back after assetviewer next/prev navigation

* Bug fix from review

* review comments
2025-10-27 08:56:03 -05:00
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
Min Idzelis
6bb1a9e083
fix: incomplete dynamic imports (#23217) 2025-10-27 08:45:30 -04:00
Mert
3f03a88767
feat(web): wasm justified layout, sync edition (#23194)
* the invisible wasm

use npm version

* deterministic tests

* add todo

* linting

* bump library, add helpers

* use target height for unfilled rows

* update tests
2025-10-25 00:06:05 -05:00
andre-antunesdesa
f721a62776
feat(web): load original videos (#20041)
* added user preference for always loading original video

added ability to toggle between transcoded/original in the video viewer

add fix to static check error

* address PR comments

* Update asset-viewer-nav-bar.svelte

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

---------

Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
2025-10-24 19:03:51 +00:00
Dag Stuan
78fb815cdb
feat(web): add search filter for camera lens model. (#21792) 2025-10-24 14:41:34 -04:00
Jason Rasmussen
d9cddeb0f1
chore: use reverse proxy during local preview (#23184) 2025-10-24 14:00:51 -04:00
Basharat Ahmad Khan
0a6b2ad26e
feat(web): reactively update shared link expiration (#22274)
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
2025-10-24 13:18:49 +02:00
Jason Rasmussen
cb7e68a287
refactor: user edit modal (#23169) 2025-10-22 15:21:16 -04:00
Jason Rasmussen
e196cac6f4
refactor: asset description modal (#23168) 2025-10-22 13:08:59 -05:00
Jason Rasmussen
351c0d2a4d
refactor: user delete confirm modal (#23166) 2025-10-22 13:49:06 -04:00
Daniel Dietzler
b334288529
fix: session list text color (#23165) 2025-10-22 17:33:54 +00:00
aviv926
cd8d66f5dd
fix(web): show upload speed (#23138)
* remove unnecessary else

* Better fix

* fix: update text color

* chore: stylings

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-10-22 15:40:10 +00:00
Alex
76f5036026
chore: improve onboarding, app download links styling (#23134) 2025-10-21 21:10:12 -05: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]
d9452e485c
fix(deps): update typescript-projects (#23119)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-10-21 10:22:53 +00:00
Min Idzelis
04e2e42c88
refactor(web): improve date labels in scrubber (#23046)
refactor(web): improve timeline scrubber labeling logic

Refactor the segment calculation in the timeline scrubber to improve code clarity and fix label positioning. Process months in reverse order for more intuitive label selection, use descriptive variable names, and remove unnecessary index tracking.
2025-10-20 22:13:49 -05:00
Min Idzelis
58f9659cf6
fix: blank page on assetviewer to timeline (regression) (#23073) 2025-10-19 11:01:42 -05:00