Commit graph

1859 commits

Author SHA1 Message Date
Jason Rasmussen
5353658114
refactor: convert slider to switch (#18334) 2025-05-16 13:59:47 -04:00
Jason Rasmussen
8ab5040351
fix(web): modal colors (#18332)
* feat(web): clear person birthdate

* fix(web): modal colors
2025-05-16 12:58:17 -04:00
Sebastian Schneider
1219fd82a0
fix(web): format dates with the locale preference (#18259)
fix: Format dates in settings according to user setting
2025-05-16 12:03:54 -04:00
Jason Rasmussen
28d8357cc5
feat(web): clear person birthdate (#18330) 2025-05-16 11:56:25 -04:00
Jason Rasmussen
86d64f3483
refactor: buttons (#18317)
* refactor: buttons

* fix: woopsie

---------

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
2025-05-15 18:31:33 -04:00
Jason Rasmussen
c046651f23
feat(web): continue after login (#18302) 2025-05-15 14:45:23 -04:00
Brandon Wees
6117329057
feat: add session creation endpoint (#18295) 2025-05-15 13:34:33 -05:00
Daniel Dietzler
585997d46f
fix: person edit sidebar cursedness (#18318) 2025-05-15 18:28:20 +00: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
Daniel Dietzler
cd03d0c0f2
refactor: person merge suggestion modal (#18287) 2025-05-14 20:30:24 -04:00
Jason Rasmussen
117b263887
refactor: sidebar (#18293) 2025-05-14 15:11:31 -04:00
Jason Rasmussen
f357f3324f
refactor: default border color (#18292) 2025-05-14 13:12:57 -05:00
Jason Rasmussen
77b0505006
refactor: layout components (#18290) 2025-05-14 12:30:47 -04:00
Jason Rasmussen
fac1beb7d8
refactor: buy immich (#18289)
* refactor: buy container

* refactor: buy immich
2025-05-14 12:09:10 -04:00
Daniel Dietzler
3944f5d73b
fix: mobile sidebar (#18286) 2025-05-14 12:02:25 -04:00
Jason Rasmussen
4445288758
refactor: admin sidebar (#18276) 2025-05-14 11:23:57 -04:00
Daniel Dietzler
4efc41d5d9
refactor: date of birth modal (#18283) 2025-05-14 08:20:22 -04:00
Daniel Dietzler
c9d45eee86
refactor: duplicates information modal (#18282) 2025-05-14 07:52:04 -04:00
Daniel Dietzler
b3b774cfe5
fix: memory lane memory title (#18277) 2025-05-13 21:52:56 +00:00
Daniel Dietzler
15e894b9b5
fix: z-index issues (#18275) 2025-05-13 22:25:57 +02:00
Daniel Dietzler
0cd51ae9c5
fix: detail panel background (#18269) 2025-05-13 17:32:34 +00:00
Daniel Dietzler
668288ca20
refactor: album users modal (#18266) 2025-05-13 13:20:44 -04:00
Jason Rasmussen
3fdc1df89c
fix(web): handle deleted user on details page (#18264) 2025-05-13 09:40:50 -05:00
Daniel Dietzler
989d9dbe51
fix: z-index overuse (#18192) 2025-05-13 16:10:05 +02:00
Daniel Dietzler
48112d84a3
refactor: confirm modal in album users modal (#18241) 2025-05-13 15:39:21 +02:00
Jason Rasmussen
ce90a2ec1a
refactor(web): disable login confirm modal (#18261) 2025-05-13 09:16:05 -04:00
Jason Rasmussen
81d959a27e
refactor: remove unused props (#18240) 2025-05-12 22:31:37 +00:00
Jason Rasmussen
bb775110ef
refactor: password reset success modal (#18239) 2025-05-12 18:18:13 -04:00
Jason Rasmussen
7280331b76
refactor: confirm modal (#18238) 2025-05-12 22:02:49 +00:00
Jason Rasmussen
93ee6ee0a5
refactor: dialog controller (#18235) 2025-05-12 17:48:05 -04:00
Daniel Dietzler
7544a678ec
refactor: remove unnecessary bg-color attributes and move to ui lib vars (#18234) 2025-05-12 17:17:01 -04:00
Jason Rasmussen
3066c8198c
feat(web): user detail page (#18230)
feat: user detail page
2025-05-12 16:50:26 -04:00
Daniel Dietzler
41a127e2ab
refactor: avatar selector modal (#18228) 2025-05-12 10:56:36 -04:00
Daniel Dietzler
feb475561e
fix: missing translation in pin settings (#18203) 2025-05-10 15:27:42 -04:00
Jason Rasmussen
c473511133
feat(web): stat card tweaks (#18189)
feat: stat card tweaks
2025-05-09 17:56:41 -05:00
Jason Rasmussen
66400b2e8e
fix(web): user restore (#18188) 2025-05-09 21:05:01 +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
Daniel Dietzler
55af925ab3
refactor: shared link url (#18185) 2025-05-09 15:23:00 -05:00
Daniel Dietzler
f21fe8716c
refactor: shortcuts modal (#18175) 2025-05-09 13:24:36 -04:00
Daniel Dietzler
6a69dafd31
refactor: share modals (#18183) 2025-05-09 16:59:29 +00:00
Daniel Dietzler
47b1938f17
fix: search filter modal close (#18180) 2025-05-09 10:10:10 -05:00
Daniel Dietzler
89551edee5
fix: z-index war in the asset viewer (#18091) 2025-05-09 10:17:26 -04:00
luzpaz
b1e1362246
fix: various typos (grouped in to separate commits) (#18177) 2025-05-09 13:10:34 +00:00
Alex
ccc2b191dd
fix: notification text's color (#18170) 2025-05-08 19:07:12 -04:00
Alex
bb7010b2bb
chore: rounded map corner when needed (#18163) 2025-05-09 00:49:16 +02:00
Daniel Dietzler
8db666bc38
refactor: search filter modal (#18159) 2025-05-08 15:36:05 -05:00
Daimolean
0cd5960007
fix(web): ui (#18160)
* fix(web): ui

* fix(web): ui

* lint

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-05-08 19:32:45 +00:00
Alex
3a1e3e82e7
fix: notification text's color (#18151) 2025-05-08 12:15:11 +02:00
Daniel Dietzler
894545aeed
refactor: modal manager types (#18150) 2025-05-07 22:08:19 +00:00
Daniel Dietzler
5250269fa4
refactor: user page modals (#18147) 2025-05-07 17:58:46 -04:00
Daniel Dietzler
a169fb6a79
refactor: map (#18143) 2025-05-07 17:39:50 -04:00
Daniel Dietzler
09ced9a171
refactor: help modal (#18145) 2025-05-07 17:31:38 -04:00
Daniel Dietzler
bbd8de177b
refactor: side bar modals (#18134) 2025-05-07 09:01:51 -05: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 -05:00
Alex
c578273e7a
chore: modal shenanigan (#18116) 2025-05-06 08:47:58 -04:00
Daniel Dietzler
1138f6dcce
refactor: job create modal (#18106)
* refactor: job create modal

* chore: better modal manager types (#18107)
2025-05-06 08:44:44 -04:00
Alex
df2cf5d106
refactor: use UI library variable for table (#18105) 2025-05-05 22:39:52 +00:00
Daniel Dietzler
52975eadb3
refactor: all user admin page modals (#18097) 2025-05-05 23:54:42 +02:00
David
7d61ed7ce4
feat(web): Map in albums & shared albums (#17906)
* add btn, map and marker

* Fix bug in navigation assetviewer

* Correct bug on main Viewer

* Add to user album the map of his pictures

* change icon to outline

* lint & format

* with manager instead of variable

* remove duplicate

* chore: minor styling change

* formatting

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-05-05 02:58:44 +00:00
Daniel Dietzler
8f7baf8336
chore: add language requests from weblate (#18050) 2025-05-04 21:04:53 +02:00
Alex
8801ae5821
fix(web): text dim in darkmode (#18072) 2025-05-04 08:30:21 -04:00
Daniel Dietzler
62fc5b3c7d
refactor: introduce modal manager (#18039) 2025-05-02 18:41:42 -04:00
Daniel Dietzler
15d431ba6a
refactor: dialog callbacks (#18034) 2025-05-02 13:34:53 -04:00
Daniel Dietzler
436cff72b5
refactor: activity manager (#17943) 2025-04-30 15:50:38 +00:00
Daniel Dietzler
ebad6a008f
fix: add missing translations to face editor (#17993) 2025-04-30 10:07:21 -05:00
Min Idzelis
4b1ced439b
feat: improve/refactor focus handling (#17796)
* feat: improve focus

* test

* lint

* use modulus in loop
2025-04-30 00:19:38 -04:00
Jason Rasmussen
038a82c4f1
refactor: theme manager (#17976) 2025-04-29 17:44:09 -04:00
Jason Rasmussen
d89e88bb3f
feat: configure token endpoint auth method (#17968) 2025-04-29 15:17:48 -04:00
Min Idzelis
0e4cf9ac57
feat(web): responsive date group header height (#17944)
* feat: responsive date group header height

* update tests

* feat(web): improve perf when changing mobile orientation (#17945)

fix: improve perf when changing mobile orientation
2025-04-29 13:59:06 -04:00
Min Idzelis
07290580a6
feat: improve semantic nav/main tags (#17800)
feat: nav/main elements

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-29 13:51:39 -04:00
Jason Rasmussen
7f69abbf0d
refactor: app init event (#17937) 2025-04-28 14:48:33 -04:00
Jason Rasmussen
895b2bf5cd
refactor: download manager (#17935) 2025-04-28 14:21:24 -04:00
Jason Rasmussen
f64e6f5dc3
refactor: auth login event (#17934) 2025-04-28 14:13:14 -04:00
Luke Towers
64e738f79d
feat(web): move duplicates controls above preview of duplicate images (#17837)
Move duplicates controls above preview of duplicate images
2025-04-28 16:10:40 +00:00
Daniel Dietzler
a17390a422
refactor: move managers to new folder (#17929) 2025-04-28 16:56:04 +02: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 -04:00
Min Idzelis
2fd05e8447
feat: preload and cancel images with a service worker (#16893)
* feat: Service Worker to preload/cancel images and other resources

* Remove caddy configuration, localhost is secure if port-forwarded

* fix e2e tests

* Cache/return the app.html for all web entry points

* Only handle preload/cancel

* fix e2e

* fix e2e

* e2e-2

* that'll do it

* format

* fix test

* lint

* refactor common code to conditionals

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-28 14:23:05 +00:00
Jason Rasmussen
ad272333db
refactor: user avatar color (#17753) 2025-04-28 08:54:51 -05:00
Jason Rasmussen
e6c575c33e
feat: rtl (#17860) 2025-04-28 08:53:53 -05:00
Andreas Tollkötter
85ac0512a6
fix(web): Make date-time formatting follow locale (#17899)
* fixed missing $locale parameter to .toLocaleString

* Remove unused types and functions in timeline-util

* remove unused export

* re-enable export because it is needed for tests

* format
2025-04-28 08:53:26 -05:00
Jason Rasmussen
d0014bdf94
refactor: event manager (#17862)
* refactor: event manager

* refactor: event manager
2025-04-25 08:36:31 -04:00
Alex
be1062474b
chore: memory spacing (#17813)
chore(web): memory spacing
2025-04-23 16:02:49 +00:00
Alex
fda68f972f
fix(web): forceDark control app bar doesn't work (#17759) 2025-04-22 09:25:27 -04:00
Bonne Eggleston
fe8c5e8107
feat: add album start and end dates for storage template (#17188) 2025-04-21 19:54:33 -04:00
Yaros
c70140e707
fix(web): map marker positioning in details pane (#17754)
fix: map marker positioning in details pane
2025-04-21 13:01:38 -05:00
Jason Rasmussen
488dc4efbd
refactor: notification-admin controller (#17748) 2025-04-21 10:49:26 -04:00
Min Idzelis
5e68f8c519
fix: longpress triggers contextmenu (#17602) 2025-04-16 19:24:26 -04:00
Min Idzelis
26f0ea4cb5
feat: responsive controlbar (#17601) 2025-04-15 14:39:30 -05:00
Aamir Azad
e3f3baadb0
fix(web): improve mobile web album viewer padding (#17575)
Reduce margin on mobile web album viewer
2025-04-14 13:46:53 -05:00
Min Idzelis
5a51ad3622
fix: responsive: timeline glitch and keyboard-accessible scrubber (#17556)
* fix: responsive: timeline glitch

* lint

* fix margin-right on mobile

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-14 11:56:40 -05:00
Ben
79d4ce2d6d
fix(web): search bar deactivates when focus exits (#17549)
* fix(web): search bar deactivates when focus exits

* fix: disable search bar on destroy

For example, on the search page. If the escape key is pressed while the advanced filters button is focused, the search page will close but the search bar will remain activated.
2025-04-13 22:43:50 -05:00
Min Idzelis
1f18fe31f0
fix: occasional empty buckets, after canceled loads (#17552) 2025-04-13 07:50:24 -05:00
Min Idzelis
8309b73a02
fix: responsive: long press while scroll (#17555) 2025-04-11 18:28:36 -04:00
Min Idzelis
e440cbe353
feat: responsive-web: shrink mem-lane (#17550) 2025-04-11 17:10:58 -05:00
Min Idzelis
3bec8dc337
refactor: responsive: device units (#17551) 2025-04-11 17:09:10 -05:00
Min Idzelis
5bcb58c3e7
feat: responsive: skeleton (#17553)
feature: responsive: skeleton
2025-04-11 17:04:48 -05:00
Min Idzelis
c62fc155c8
feat: show thumbhash behind load error, if possible (#17554)
* feat: show thumbhash behind load error, if possible

* forgot this
2025-04-11 17:01:51 -05:00
Jason Rasmussen
ae6653392e
feat: view qr code from share modal (#17544) 2025-04-11 14:02:07 -04:00
Ben
92f0973a46
fix(web): reset search history after logout (#17534)
fix(web): reset search suggestions after logout
2025-04-10 20:34:45 +00:00
Alex
abde0fbe60
fix(web): mobile view double scroll layer (#17528) 2025-04-10 13:50:05 -04:00
Ben
e3995fb5f4
fix(web): increase sidebar breakpoint (#17436) 2025-04-10 12:00:30 -05:00
Alex
6d3f3d8616
refactor: convert download manager into a state class (#17491)
* fix(web): download progress bar not functioning

* remove unused method
2025-04-10 16:48:21 +00:00
Rudhra Raveendran
9e49783e49
feat: use browser download manager for single file downloads (#17507)
* Fix download panel reactivity

* Directly download individual files without buffering in memory

* Fix shared link e2e download tests
2025-04-10 09:13:50 -05:00
renovate[bot]
3e372500b0
fix(deps): update typescript-projects (#17456)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-04-09 14:47:29 +00:00
snek
6ae24fbbd4
feat(web): improve individual share ux (#17430) 2025-04-08 09:11:37 -04: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 -05:00
Zlendy
b87ba6865b
fix(web): Video memories are played at 100% volume instead of respecting user preference (#17424) 2025-04-06 22:03:19 -05:00
Daniel Dietzler
a3c3f9cfcb
fix: reset memories on logout (#17405) 2025-04-05 13:09:56 -04:00
martin
720189e2c2
fix: improve initial loading time (#17379) 2025-04-04 17:04:52 -04:00
Mert
e8b4ac0522
fix(web): use original image if web compatible (#17347)
* use original image if web compatible

* add e2e

* fix shared link handling

* handle redirect in e2e

* fix size not being passed to thumbnail url

* test fullsize in e2e
2025-04-03 09:01:41 -05:00
Snowknight26
4336afd6bf
fix(web): fix thumbnail hover link position (#16762)
* fix(web): don't show a scrollbar when hovering over the last row of images on the search page

* Format code

* Fix asset selection z-index

* Remove anchor overlay on mouseover

* Fix a test

* Fix merge

* Fix overlays

* fix merge

* fix stack thumbs in asset viewer

* fix dimmed bounds, animation

* lint

---------

Co-authored-by: Min Idzelis <min123@gmail.com>
2025-04-02 10:30:41 -05:00
Alex
95e3b15776
fix(web): padding (#17320) 2025-04-01 23:32:54 -04:00
Ben
50335dc363
fix(web): menu button size (#17321)
Adjusting the menu button size, to match match the other buttons in the navigation bar.
2025-04-01 22:25:17 -05:00
Ben
6e62c09d84
feat(web): expand/collapse sidebar (#16768)
* feat: expand/collapse sidebar

* fix: general PR cleanup

- add skip link unit test
- remove unused tailwind styles
- adjust asset grid spacing
- fix event propogation

* fix: cleaning up event listeners

* fix: purchase modal and button on small screens

* fix: explicit tailwind classes

* fix: no animation on initial page load

* fix: sidebar spacing and reactivity

* chore: reverting changes to icons in nav and account info panel

* fix: remove left margin from the asset grid after merging in new timeline

* chore: extract search-bar changes for a separate PR

* fix: add margin to memories
2025-04-01 21:12:04 -05:00
Daimolean
e4b0c00885
fix(web): select all button displays incorrectly (#17305)
* fix(web): select all show incorrectly

* fix: lint

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-04-01 19:00:48 +00:00
Alex
946507231d
fix(web): blank locale cause blank timeline to render (#17284)
* fix(web): blank locale cause blank timeline to render

* correct fix

* newline

* pr feedback
2025-04-01 18:58:11 +00:00
Alex
20ba800a50
fix(web): date time change reactivity (#17306)
* fix(web): date time change reactivity

* remove logs
2025-04-01 18:57:53 +00: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 -04:00
PathToLife
838a8dd9a6
feat(web): increase album collapse click area (#17213) 2025-03-31 09:45:30 -05:00
Ben McCann
b25914c2a5
chore: use writable derived in more places (#17248)
chore(web): use writable derived in more places
2025-03-31 09:15:52 -05:00
Daniel Dietzler
74f7fd4b53
chore: add language requests from weblate (#17236) 2025-03-31 10:48:41 +01:00
Ben McCann
9f0dbfc150
chore(web): update to newer persisted store package name (#17094) 2025-03-28 20:40:57 +01:00
Ben McCann
3fde5a8328
feat: map globe view, style hot reloading and load lag fixed (#17079)
* chore: upgrade svelte-maplibre and enforce runes

* feat: maplibre-gl 5, globe view, style hot reloading, fast map markers

* fix: remove location-pin class that wasn't being used

---------

Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-03-28 14:08:54 +00:00
Alex
8f786fd7dd
fix(web): form reactivity (#17183) 2025-03-27 19:58:49 -05:00
Alex
3e73765375
fix(web): don't show newly uploaded asset in inapplicable views (#17184) 2025-03-27 19:45:50 -04:00
renovate[bot]
e163808348
fix(deps): update typescript-projects (#17080)
* fix(deps): update typescript-projects

* fix: otel

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-03-27 22:33:58 +00:00
Ben McCann
411772123f
chore(web): remove unused props (#17141) 2025-03-27 23:12:14 +01:00
Alex
6341962de4
fix(web): better touch device detection (#17144)
* fix(web): better touch device detection

* variable name
2025-03-27 10:43:56 -05:00
Min Idzelis
c26b28f6a4
fix: bug with svelte gestures (#17154)
* fix: bug with svelte gestures

* lint
2025-03-27 08:51:52 -05:00
Snowknight26
c547d849d9
fix(web): prevent comb box dropdowns from staying open when clicking on labels (#17119)
fix(web): prevent combobox dropdowns from staying open when clicking on label
2025-03-26 08:58:00 -05:00
Alex
dfb0626c91
fix(web): default search to context (#17118)
* fix(web): default search to context

* one liner

* Refactor
2025-03-25 17:57:12 -05:00
Alex
392ce7deb2
fix(web): albums display order again (#17117) 2025-03-25 22:14:00 +00:00
Alex
37eb70c1eb
fix(web): albums display order (#17106)
* fix(web): albums display order

* ergonomic

* perf ergonomic

* miss 1
2025-03-25 20:21:38 +00:00
Alex
ae447542a4
fix(web): asset navigation (#17104) 2025-03-25 15:00:30 -05:00
Snowknight26
b8bc11b0d9
fix(web): fix escape key not closing video player after seeking (#16860)
Co-authored-by: Yaros <thedj.launchpadder.dmx512@gmail.com>
2025-03-25 13:42:23 +00:00
Ben McCann
91065db3ff
chore: migrate previously missed file to Svelte 5 (#17074) 2025-03-24 19:44:05 -04:00
Yaros
9757f70064
fix(web): not autoplay after moving playhead on paused video (#17038)
fix(web): prevent autoplay after moving playhead
2025-03-24 16:55:46 -05:00
Min Idzelis
4a0045db44
feat(web): support long-press selection on mobile web (#16906)
* feat(web): max grid row height responsive

* also gallery-viewer

* lint

* feat(web): support long-press selection on mobile web

* use svelte-gestures

* fix test

* Bug fix

* globalThis

* format

* revert generator

* Testing

* bad merge

* Fix typo/tap on thumbnail

* feat: shrink header on small screens (#16909)

* feat(web): shrink header on small screens

* fix test

* test

* Fix test

* Revert user-page-layout chagne

* Restore icons sizes, make consistent, improve logo responsiveness

* remove 4 more pix, lint

* lint

* chore

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>

* Revert "Testing"

This reverts commit 442f11c9e1538809f9208abcdff71a58b510ca98.

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-03-24 16:36:36 -05:00
Min Idzelis
55b52ecbec
feat: mobile-web improvements - scrubber (#16856)
* feat: mobile-web improvements - scrubber

* lint

* cruft

* lint

* fix: thumb style

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-03-21 18:00:24 +00:00
Alex
b5d5c40c69
fix(web): update stack state in timeline (#17021)
* fix(web): update stack state in timeline

* js docs

* fix: handle state update from unstack action from gallery viewer

* use navigate in View Stack notification

---------

Co-authored-by: Snowknight26 <Snowknight26@users.noreply.github.com>
2025-03-21 12:42:36 -05:00
Snowknight26
b00da18e84
fix(web): timeline renders nothing with an invalid asset scroll target (#16994)
* fix(web): fix asset grid showing nothing with an invalid asset target

* Deduplicate

* Scroll to position where appropriate

* a bit cleaner

* fix: lint

---------

Co-authored-by: Min Idzelis <min123@gmail.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-21 08:40:57 -05:00
Ben
3c87341902
fix(web): clicking away closes context menu (#16989)
* fix(web): clicking away closes context menu

* fix: use pointerdown event instead

* Revert "fix: use pointerdown event instead"

This reverts commit 0d2cf4719458a1d3804c43c3877297aaf41bc107.
2025-03-21 08:39:41 -05:00
Alex
bcd9248b43
fix(web): timeline regression 2 (#16982)
* fix(web): timeline renders nothing after archiving in asset viewer

* fix(web): timeline renders nothing after archiving in asset viewer

* fix: ensure geometry updated when performing bulk action on all

* fix: album assets selection
2025-03-20 22:30:27 -05:00
Alex
dbc279f843
fix: gallery viewer sliding window offload assets (#17016)
* fix: gallery viewer sliding window offload assets

* fix: update bottom sliding window

* do not use negative

* Calculate offset before gallery

---------

Co-authored-by: Min Idzelis <min123@gmail.com>
2025-03-20 22:30:01 -05:00
Snowknight26
1820c0aa0d
fix(web): fix View in Timeline not working for stacked assets (#16993)
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
2025-03-20 13:17:14 -05:00
Min Idzelis
7075c5b393
feat(web): make asset grid row height responsive (#16970)
* feat(web): max grid row height responsive

* also gallery-viewer

* lint
2025-03-19 10:57:44 -05:00
Min Idzelis
9398b0d4b3
fix: regression in select-all (#16969)
* bug: select-all

* set->[] in interaction store, clear select-all on cancel

* feedback

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-03-19 15:55:50 +00:00
Yaros
62ba8c3e71
fix(web): date alignment on timeline (#16961) 2025-03-18 21:55:36 +00:00
Andreas
fe19f9ba84
fix(web): asset selection on memories page is broken (#16759)
* 16712: Proper intialisation of the memory store to avoid loading up duplicate object refs of the same asset.

* 16712: Add auth to memory mapping so isFavorite is actually return correctly from the server.

* 16712: Move logic that belongs in the store into the store.

* 16712: Cleanup.

* 16712: Fix init behaviour.

* 16712: Add comment.

* 16712: Make method private.

* 16712: Fix import.

* 16712: Fix format.

* 16712: Cleaner if/else and fix typo.

* fix: icon size mismatch

* 16712: Fixed up state machine managing memory playback:
* Updated to `Tween` (`tweened` was deprecated)
* Removed `resetPromise`. Setting progressController to 0 had the same effect, so not really sure why it was there?
* Removed the many duplicate places the `handleAction` method was called. Now we just called it on `afterNavigate` as well as when `galleryInView` or `$isViewing` state changes.

* 16712: Add aria tag.

* 16712: Fix memory player duplicate invocation bugs. Now we should only call 'reset' and 'play' once, after navigate/page load. This should hopefully fix all the various bugs around playback.

* 16712: Cleanup

* 16712: Cleanup

* 16712: Cleanup

* 16712: Cleanup

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-03-18 11:34:09 -05:00
Min Idzelis
e96ffd43e7
feat: timeline performance (#16446)
* Squash - feature complete

* remove need to init assetstore

* More optimizations. No need to init. Fix tests

* lint

* add missing selector for e2e

* e2e selectors again

* Update: fully reactive store, some transitions, bugfixes

* merge fallout

* Test fallout

* safari quirk

* security

* lint

* lint

* Bug fixes

* lint/format

* accidental commit

* lock

* null check, more throttle

* revert long duration

* Fix intersection bounds

* Fix bugs in intersection calculation

* lint, tweak scrubber ui a tiny bit

* bugfix - deselecting asset doesnt work

* fix not loading bucket, scroll off-by-1 error, jsdoc, naming
2025-03-18 09:14:46 -05:00
Jason Rasmussen
9a4495eb5b
refactor: use more immich ui buttons (#16840) 2025-03-14 09:38:06 -04:00
Jason Rasmussen
8ad95b368b
feat: use immich ui components for dialog component (#16839) 2025-03-14 09:37:56 -04:00
Jason Rasmussen
a65ce2ac55
refactor: immich logo assets (#16850) 2025-03-13 18:05:08 -04:00
Jason Rasmussen
f69d7e7bad
chore: web cleanup (#16849) 2025-03-13 18:04:21 -04:00
renovate[bot]
a1a61f19eb
chore(deps): update typescript-projects (#16795)
* chore(deps): update typescript-projects

* fix: aria

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-03-12 23:20:26 +01:00
Jason Rasmussen
996ffed5eb
fix: immich ui toggles and switches (#16834)
* fix: immich ui toggles and switches

* Update web/src/lib/components/shared-components/navigation-bar/navigation-bar.svelte

Co-authored-by: Alex <alex.tran1502@gmail.com>

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-12 16:25:27 -05:00
Jason Rasmussen
2d7a94ce23
feat: better library rename UX (#16837) 2025-03-12 16:00:16 -05:00
Jason Rasmussen
72a7be26c0
refactor: use immich/ui button component in user settings (#16836) 2025-03-12 15:56:55 -05:00
Yaros
52d90a8280
fix(web): fixed formatting of video length (#16829)
* fix(web): fixed formatting of video time

* shortened the condition
2025-03-12 09:18:43 -05:00
Snowknight26
a75718ce99
fix(web): update search results when searching from info panel (#16729)
* fix(web): update search results when searching from info panel

* Prevent double search when using search bar

* Format/lint

* Fix infinite loading on intersect

* Remove redundant function
2025-03-11 17:23:25 -05:00
Andreas
b8acae2f21
feat(web): Add keyboard shortcut selection on grid (#16713)
* 15712: Added keyboard shortcuts for opening add to album modal and highlighting/selecting an album to add to.

* 15712: Re-factored logic from template code into script. Extracted new album button into separate cmponent.

* 15712: Document new keyboard shortucts now that they work everywhere.

* 15712: Extract some constants/helper functions.

* 15712: Missing comma.

* 15712: Pulled logic out into separate unit testable class.

* 15712: Added a unit test.

* 15712: Move the modal back up to keep the github PR happy.

* 15712: PR feedback - renamed typescript files and switch to class bind directive.

* 15712:Move selection modal into correct package.

* 15712: Better naming of module and files.

* 15712: Add asset highlight using arrow keys.

* 15172: Add escape behaviour everywhere.

* 15712: Don't allow highlighting past start or end.

* 15712: Clear the highlight on changes to the component state.

* 15712: Use focus to track highlighted element.

* 15712: Rename highlight -> focussed.

* 15712: Better naming.

* 15712: Cleanup.

* 15712: Cleanup & simplify.

* 15712: bugfix for clicking on button.

* 15712: Cleanup.

* 15712: Rollback unnecessary changes.

* 15712: Add unit test.

* 15712: Add thumbnail unit test.

* 15712: Prettier.

* 15712: Fix merge issue.

* 15712: Add shortcut info.

* 15712: Fix linter.
2025-03-11 10:18:14 -05:00
Alex
c80afea468
feat(web): better person naming interface (#16631)
* feat(web): better person naming interface

* feat(web): better person naming interface

* feat(web): better person naming interface

* feat(web): better person naming interface

* feat(web): better person naming interface

* feat(web): better person naming interface

* feat(web): better person naming interface
2025-03-11 10:08:52 -05:00
Snowknight26
decc878267
feat(web): show full date when hovering over photos date groups (#16561)
* fix(web): Update asset grid date group titles to show full date

* Fix formatting
2025-03-11 11:18:29 +00:00
Nicholas Flamy
5d86e6d2d3
fix(web): update old discord logo to new one (#16789)
* fix: update discord svg path and add viewbox

* fix formatting
2025-03-10 22:46:32 -05:00
Adam O'neill
70a08707d2
feat(web): remember search context (#16614)
* Retain search context in LocalStorage.

* Remove debug logging

* Prettier

* Added QueryType and VALID_QUERY_TYPES to $lib/constants

* Prettier

* Renamed VALID_QUERY_TYPES to fit the codestyle.

Ran prettier

* show current search type on search bar

* fix: linting

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-03-09 22:20:25 -05:00
Lukas
097749d872
fix(web): add labels to memory lane buttons (#16664)
* fix(web): add labels to memory lane buttons

* use generic button labels
2025-03-09 21:31:55 -05:00
Corentin Hatte
2aac679185
fix(web): Update people-card favorite position (#16746)
Update people-card favorite position

Move heart icon a bit more inward to mak it more visible
2025-03-10 01:32:32 +00:00
renovate[bot]
086d8a448a
fix(deps): update typescript-projects (#16597)
* fix(deps): update typescript-projects

* chore: update server lock file

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-03-07 21:20:45 +00:00
Lukas
fdf2331c82
fix(web): hide scroll right button when scrolled to the right in memory lane (#16656)
fix(web): hide scroll right button when scrolled to the right
2025-03-06 20:50:56 -06:00
Lukas
e03d7f888e
fix(web): remove margin on last memory item (#16665) 2025-03-07 02:50:16 +00:00
Yaros
d01b7a0d67
feat(web): aspect ratio of memory cards (#16652)
Fix aspect ratio of memory cards
2025-03-06 15:24:01 +00:00
Lukas
2875303b4c
feat(web): allow horizontal scrolling in memory lane (#16647) 2025-03-06 08:37:11 -06:00
Savely Krasovsky
69b5365965
feat: enable PMTiles protocol support (#16629)
This patch enables PMTiles protocol for MapLibre-GL. Protocol allows to fetch tiles from a single file.  This drastically simplifies the process to self-host own tiles.
2025-03-06 10:50:14 +00:00
Alex
6108587c8b
fix(web): show tags timeline (#16617)
* fix(web): show tags timeline

* fix(web): show tags timeline
2025-03-05 13:36:56 -06:00
Min Idzelis
56b85f7479
fix(web): fix lost scrollpos on deep link to timeline asset, scrub stop (#16305)
* Work in progress - super quick asset store->state

* bugfix: deep linking to timeline, on scrub stop

* format, remove stale

* disable test, todo: fix test

* remove unused import

* Fix merge

* lint

* lint

* lint

* Default to non-wasm layout

* lint

* intobs fix

* fix rejected promise

* Review comments, static import wasm

* Back to dynamic

* try top-level-await

* back to the first solution, with more finesse

* comment out wasm for now

* back out the wasm/thumbhash/thumbnail changes

* lint

* Fully remove wasm

* lockfile

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-03-04 20:34:53 -06:00
Snowknight26
867eec86f5
fix(web): Update menu titles to be more consistent (#16558) 2025-03-04 12:55:54 +00:00
Zack Pollard
ff19502035
feat: qr code for new shared link (#16543) 2025-03-03 13:40:41 -05:00
Alessandro Baroni
f89e74181b
fix(web): delete action closes asset viewer in asset view (#15469)
fixes #14647
2025-03-03 18:24:37 +00:00
Yaros
7bbc1d9f68
feat(web): Video memories on web (#16500)
* Video memories on web

* switched mixed up strings
2025-03-03 09:54:26 -06:00
renovate[bot]
3d6a6f77a8
chore(deps): update dependency eslint-plugin-svelte to v3 (#16532)
* chore(deps): update dependency eslint-plugin-svelte to v3

* chore: linting

* chore: rebase

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-03-03 14:24:26 +00:00
renovate[bot]
a99bd94717
fix(deps): update dependency ua-parser-js to v2 (#14301)
* fix(deps): update dependency ua-parser-js to v2

* fix: breaking changes from ua-parsed-js major update

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-03-03 12:01:40 +00:00
Jonathan Jogenfors
869839f642
feat(server): library cleanup from ui (#16226)
* feat(server,web): scan all libraries from frontend

* feat(server,web): scan all libraries from frontend

* Add button text
2025-03-02 21:29:02 -06:00
knechtandreas
6bf2e8dbcb
feat: add album keyboard shortcuts (#16442)
* 15712: Added keyboard shortcuts for opening add to album modal and highlighting/selecting an album to add to.

* 15712: Re-factored logic from template code into script. Extracted new album button into separate cmponent.

* 15712: Document new keyboard shortucts now that they work everywhere.

* 15712: Extract some constants/helper functions.

* 15712: Missing comma.

* 15712: Pulled logic out into separate unit testable class.

* 15712: Added a unit test.

* 15712: Move the modal back up to keep the github PR happy.

* 15712: PR feedback - renamed typescript files and switch to class bind directive.

* 15712:Move selection modal into correct package.

* 15712: Better naming of module and files.
2025-03-02 13:15:00 +00:00
Yaros
366f23774a
fix(web): Default to context search on web (#16485)
Default to context search on web
2025-03-02 13:06:15 +00:00
Lukas Jost
6cc1978b2d
fix(web): Open huggingface.co link on settings page in new tab (#16470)
fix(web): Open huggingface on settings page in new tab
2025-03-01 23:02:56 +00:00
luzpaz
506d2d0f81
fix(web): fix typos (#16466)
Found via codespell
2025-03-01 16:51:50 -06:00
Yaros
f13d13b2ea
fix(web): Fixed people list overflowing in advanced search (#16457)
* Fixed people list overflowing in search

* styling: better fix

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-03-01 20:34:57 +00:00
Thomas Laroche
2510684bf7
fix(web): unable to download live photo as anonymous user (#16455) 2025-03-01 14:07:19 -06:00
Matthew Momjian
efcf773ea0
feat(server): Shortened asset ID in storage template (#16433)
* Update storage-template.service.ts

* Update supported-variables-panel.svelte

* docs example

* Update storage-template-settings.svelte
2025-02-28 16:04:34 -05:00
Calum Dingwall
f2be9f7ad1
fix(web): person favorite icon bad placement (#16412)
move favorite person icon to top left

fixes #16003

Co-authored-by: Calum Dingwall <caburum@users.noreply.github.com>
2025-02-27 22:15:37 -06:00
Alex
362feb1e62
feat(web): face tagging dialog enhancement (#16395) 2025-02-27 11:49:07 -06:00
Alex
9a098b4658
fix(web): storage template incorrect example (#16367) 2025-02-27 09:46:20 -06: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 +03:00
Curtis Lowder
128d653fc6
fix(web): update search modal to not jump around (#16308)
* fix(web): update search modal to not jump around

Search People selection will change size while loading. This causes the
search modal to jump around as the people load in.

* loading spinner size

* remove unsued code

---------

Co-authored-by: cwlowder <me@curtislowder.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-02-27 03:06:41 +00:00
David Bourgault
8b69114924
feat(web): remember last chosen map location when editing (#16366)
Uses a global store to remember the last location chosen by a user when
editing asset locations. This fixes an annoyance when adding location
data to multiple assets in a row and having to zoom in the same area
everytime.
2025-02-26 21:01:29 -06: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 -06:00
Alex
c778516ce2
fix(web): tag people in video (#16351) 2025-02-26 12:55:32 -06:00
Adam O'neill
2969e25ff7
fix: websockets calling on_new_release across all sessions upon new websocket connection. (#16339)
* Implemented possible fix for the new_release window re-appearing across all active sessions when a new websocket connection is established.

* Reverted websocket.ts

Changes not needed to websocket.ts - was bouncing between ideas, current implementation doesn't need this to change.

* Prettier test format.

* Spelling (Aknowledged --> Acknowledged)
2025-02-26 17:48:18 +00:00
Alex
bbcaee82f0
chore(web): revert wasm new justify layout (#16277)
* Revert "fix(web): justify layout import (#16267) "

This reverts commit ec58e1065f.

* Revert "fix(web): dynamically import wasm module (#16261)"

This reverts commit 4376fd72b7.

* Revert "feat(web): use wasm for justified layout calculation (#15524)"

This reverts commit 3925445de8.

* Revert "fix(web): viewport reactivity, off-screen thumbhashes being rendered (#15435)"

This reverts commit 52f21fb331.
2025-02-25 09:39:56 -06:00
Alex
6c64a6dab8
chore(web): Revert slight fade in animation when open/close asset-viewer (#16262) (#16306)
Revert "feat(web): slight fade in animation when open/close asset-viewer (#16262)"

This reverts commit 57829cee26.
2025-02-25 09:27:34 -06:00
Nicholas Flamy
392f9f205c
fix(web): thumbnail playback stops when hovering over icon then video (#16302)
fix thumbnail playback when hovering over icon then video
2025-02-24 21:35:46 -06:00
Alex
57829cee26
feat(web): slight fade in animation when open/close asset-viewer (#16262) 2025-02-24 16:38:07 -06:00
Yamagishi Kazutoshi
4be2351d21
fix(web): use anonymous function in setTimeout in ponyfill of requestIdelCallback (#16264) 2025-02-24 16:37:58 -06:00
Alex
ec58e1065f
fix(web): justify layout import (#16267)
* fix(web): justify layout import

* remove dead code
2025-02-23 02:38:08 +03:00
Mert
4376fd72b7
fix(web): dynamically import wasm module (#16261)
* dynamically import wasm module

* remove unused import
2025-02-22 12:16:06 -06: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 -06:00
Alex
007eaaceb9
feat(web): manual face tagging and deletion (#16062) 2025-02-21 09:58:25 -06:00
Mert
3925445de8
feat(web): use wasm for justified layout calculation (#15524)
* working

* use wrapper class

* update import

* simplify

* it works without changing `optimizeDeps`

* inline layout options

* update gallery view

* use es2022

* fix import

* fix vitest

* empty geometry

* bump version

* Update web/src/lib/stores/assets.store.ts

Co-authored-by: Jason Rasmussen <jason@rasm.me>

* fix: typo

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-02-21 09:20:25 +00:00
Mert
52f21fb331
fix(web): viewport reactivity, off-screen thumbhashes being rendered (#15435)
* viewport optimizations

* fade in

* async bitmap

* fast path for smaller date groups

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-02-20 22:38:12 -06: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 +00:00
Lukas
9c95adc7fb
feat(web): show memories in portrait on small screens (#16213) 2025-02-19 23:15:45 +00:00
Lukas
b13a98646f
fix(web): improve memories layout on small screens (#16162)
* fix(web): improve memories layout on small screens

* decrease viewer height
2025-02-18 17:40:52 -06:00
renovate[bot]
425cf62482
fix(deps): update typescript-projects (#16178)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-02-18 20:40:09 +01:00
Jason Rasmussen
f386b4d377
feat(web): use thumbhash as a cache key (#16106)
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-02-16 03:34:13 +00:00
Zack Pollard
411f96ef49
fix: place suggestions not clickable in asset set location modal (#16104)
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-02-15 09:44:11 +00:00
Mangat Singh Toor | ਮੰਗਤ ਸਿੰਘ ਤੂਰ
b1f05fc18b
fix(web): properly project profile picture (#16095)
* fix(profile-image-cropper): ensure correct image area is saved after transparency check

Fixed an issue where users could not set a profile picture due to incorrect transparency detection.
After addressing transparency detection by passing explicit dimensions, another issue arose where the
generated blob did not represent the correct cropped image area. To fix this, a new cropped blob was generated using the canvas that was used to check for transparent pixels.

- Pass image width and height explicitly to `hasTransparentPixels` for accurate processing.
- Return both transparency status and the correctly cropped image blob.
- Ensure the final uploaded image is taken from `croppedImageBlob` to reflect user adjustments.

* chore: run pr web checklist. No issues in the changed file.

* fix(profile-image-cropper): ensure correct image area is saved after transparency check

Fixed an issue where users could not set a profile picture due to incorrect transparency detection.
To fix this, a new cropped blob was generated using the height and width of the imgElement.

Note: this is a simpler fix than the one in the previous commit.

* lint

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-02-14 15:49:22 +00:00
HelloMihai
bf16b61d43
fix: broken html id (#16084)
ids cannot have spaces

relative should not be in the ID of the element
2025-02-13 14:46:12 -05:00
renovate[bot]
d2575d8f00
fix(deps): update typescript-projects (#16023)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-02-11 18:50:18 +00:00
Snowknight26
b40963ec52
fix(web): Update shared link Exif capitalization to match existing capitalization (#16010)
Update shared link Exif capitalization to match existing capitalization
2025-02-10 19:00:37 -05:00
Alex
fb21950ad8
chore(web): shared links style tweaks (#15960) 2025-02-07 20:53:12 -05:00
Jason Rasmussen
61b8eb85b5
feat: view album shared links (#15943) 2025-02-07 16:38:20 -05:00
Jason Rasmussen
c5360e78c5
feat(web): shared link filters (#15948) 2025-02-07 13:05:15 -05:00
Krassimir Valev
6aad9fae8e
feat(web): revamp places (#12219)
* revamp places

* add english translations

* migrate places page and components to svelte 5

* fix lint

* chore: cleanup

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-02-06 20:54:01 +00:00
André Ventura
97574d7296
fix(web): prevent accidental modal closures on mouseup outside (#15900) 2025-02-04 13:43:19 +00: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 +00:00
André Ventura
aac029d92b
feat(web): merge suggestion modal: focus on Yes button by default. (#15827)
* feat(web): merge suggestion modal: focus on Yes button by default.

* refactor(web): merge suggestion modal: use Button from @immich/ui.

---------

Co-authored-by: André Ventura <afv@users.noreply.github.com>
2025-02-03 14:01:05 -06:00
Stark
e8d05e78ad
feat(web): Updated Onboarding page (#15880)
Updated Onboarding page

the "previous" button on the Storage Template page now points to privacy instead of theme
2025-02-03 17:36:25 +00: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 -06: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 +00:00
Jason Rasmussen
c016b65ef2
fix(web): shared link date range (#15802) 2025-01-30 18:36:45 -05:00
preeperkiller
844eed8707
fix(web): HelpAndFeedback button the same size as Theme button in navbar (#15791)
fix(server): HelpAndFeedback button the same size as Theme button in navbar
2025-01-30 12:43:35 -05:00
Antonio Sarro
f3ba994186
fix(web): update recent album after edit (#15762)
* fix(web): update recent album after edit

* chore: clean up

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2025-01-29 17:27:30 +00:00
Carsten Otto
da580d4685
fix: show local dates for range in album summary (#15654)
* fix(web): show local dates for range in album summary

* fix(server): show local dates for range in album summary
2025-01-28 14:33:38 -06:00
PastLeo
08db77db23
feat: resolution selection and default preview playback for 360° panorama videos (#15747)
* original/preview switching in photo-sphere-viewer

1. default to preview in photo-sphere-viewer video mode
2. install and integrate @photo-sphere-viewer/settings-plugin & @photo-sphere-viewer/resolution-plugin

* fix lint errors
2025-01-28 09:09:40 -06:00
RiggiG
92dff839d0
fix(web): do not throw error when hash fails (#15740)
change: do not throw error when hash fails
2025-01-28 03:54:56 +00:00
Carsten Otto
e864811a85
fix(web): sort folders (#15691)
fixes #13145
2025-01-26 15:07:22 -06:00
Alex
7bbffccf76
fix(web): neon overflow on mobile screen (#15676) 2025-01-26 08:06:26 -05:00
Jason Rasmussen
aaea5cf1ad
fix: login page (#15613) 2025-01-24 17:17:04 +00:00
Alex
19740a3560
fix(web): neon artifacts (#15582) 2025-01-24 09:18:26 -06:00
Alex
995314446b
feat(web): neon light behinds login form (#15570) 2025-01-23 17:23:23 -05:00
Jason Rasmussen
a1691ddc0f
fix(web): auth page padding (#15569) 2025-01-23 21:38:34 +00:00
Alex
a47aa86392
chore: minor form bottom padding increase (#15558) 2025-01-23 15:45:07 +00:00
David Baxter
f32c5d97cd
feat(web): Show lens model in the asset viewer detail panel (#15460)
* Adds lens details to the asset viewer

* Update lens detail search links

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-01-23 09:34:36 -06:00
renovate[bot]
d1d26c60d6
fix(deps): update typescript-projects (#14892)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2025-01-22 22:15:38 +00:00
Jason Rasmussen
78464a4ba3
refactor: ui icon buttons (#15531) 2025-01-22 16:44:59 -05:00
Alex
0f803a4f5e
fix(web): scrolling memory timeline reset position (#15429) 2025-01-18 20:09:38 +00:00
Jason Rasmussen
3a2bf91889
refactor: replace link-button component with immich-ui buttons (#15374)
* refactor: replace link-button component with immich-ui buttons

* minor styling tweak

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-01-16 16:03:04 +00:00
Jason Rasmussen
89f40b311c
fix(web): map settings (#15375) 2025-01-16 10:05:14 -05:00
Mattia Natali
81568dbda3
feat(web): Context menu scrolls on small devices (#15367)
Context menu scrolls on small devices
2025-01-15 14:48:26 -06:00
Jason Rasmussen
a60da1ccab
refactor: migrate create user form to immich ui (#15350)
* refactor: migrate create user form to immich ui

* minor styling tweak

* remove unintentional commit

* revert formating diff

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-01-15 15:09:19 -05:00