Commit graph

2762 commits

Author SHA1 Message Date
Alex
25efba8fe6
chore: remove share link success prompt (#19671) 2025-07-01 16:55:17 +00:00
Daimolean
83afd49f5c
feat(mobile): edit location action (#19645)
* change dto from integer to double

* feat(mobile): edit location action

* patch openapi

* refactor in provider

* fix lint

* chore: not showing success prompt if dimissed

* i18n

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-07-01 16:52:11 +00:00
shenlong
15be3437bf
fix: timeline service uninitialised across routes (#19544) 2025-07-01 10:23:20 -05:00
Daimolean
f59b0bab5a
refactor(mobile): action provider (#19669)
* refactor action provider

* fix lint
2025-07-01 10:18:23 -05:00
Alex
fa418d778b
feat: lock folder action (#19634)
* feat: lock folder action

* refactor
2025-07-01 14:03:45 +00:00
shenlong
a5c431fbf5
refactor: animate bottom sheet (#19655)
* refactor: animate bottom sheet

* rebase on main

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-30 22:23:38 -05:00
shenlong
21f500191a
refactor: actions provider (#19651)
* refactor: actions provider

* chore: rename error and stack

* remove empty checks

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-07-01 08:10:25 +05:30
shenlong
5011636d95
refactor: header - bulk select icon (#19652)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-30 21:33:37 -05:00
Alex
3f330c6476
feat: drift album page (#19564)
* feat: drift album page

* feat: page renderred

* feat: asset count

* refactor: use statefulwidget

* refactor: private widgets

* refactor: service layer

* refactor: import

* feat: get owner name

* pr feedback

* pr feedback

* pr feedback

* pr feedback
2025-07-01 07:54:50 +05:30
Daimolean
bb8755021d
revert: timeout (#19639) 2025-06-30 17:02:50 -05:00
Jason Rasmussen
58ca1402ed
feat: sync partner stacks (#19635) 2025-06-30 16:41:06 -04:00
Daimolean
32a7087883
feat(mobile): archive action (#19630)
* feat(mobile): archive action

* fix: lint

* Update i18n/en.json

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

* fix: lint

* fix: lint

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-30 14:38:15 -05:00
Jason Rasmussen
181a7e115f
feat: sync stacks (#19629) 2025-06-30 14:26:41 -05:00
Alex
095ace8687
feat: shared link action (#19610) 2025-06-30 17:32:18 +00:00
Alex
4c3fcdc745
feat: favorite action (#19623) 2025-06-30 12:21:09 -05:00
Alex
fa5f30d9ca
fix: timeline service mismatch state (#19612) 2025-06-30 12:20:13 -05:00
Jason Rasmussen
6feca56da8
feat: sync memories (#19579) 2025-06-27 12:20:13 -04:00
Alex
97aabe466e
feat: action buttons place holder (#19561)
* feat: action buttons place holder

* lint

* Update base_action_button.widget.dart

Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com>

---------

Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com>
2025-06-27 13:33:46 +00:00
shenlong
72a53f43c8
feat: use sqlite timeline user provider (#19577)
use sqlite timeline user provider

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-27 08:29:27 -05:00
Brandon Wees
a43159f4ba
fix(mobile): skip widget updates if on android (#19553)
* fix: skip widget updates if on android

* remove dead line
2025-06-26 10:07:22 -05:00
shenlong
ea3a14ed25
feat(mobile): add album asset sync (#19522)
* feat(mobile): add album asset sync

* add SyncAlbumToAssetDeleteV1 to openapi-spec

* update delete queries to use where in statements

* clear remote album when clear remote data

* fix: bad merge

* fix: bad merge

* fix: _SyncAckV1 return type

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: wuzihao051119 <wuzihao051119@outlook.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-06-26 08:50:39 -05:00
shenlong
24a4cba953
fix: enable photo manager custom filter by default (#19520)
enable photo manager custom filter by default

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-25 21:28:17 -05:00
shenlong
65dce58aa4
refactor(mobile): do not skip iCloud albums during local sync (#19231)
do not skip cloud albums during local sync

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-25 16:46:31 +00:00
Brandon Wees
64cc7239fe
feat(mobile): ios widget deeplink to asset in app (#19510)
* feat: ios widget deeplinks to asset in app

* fix: casing

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-25 11:37:25 -05:00
Jason Rasmussen
881a96cdf9
feat: add album asset sync (#19503)
wip: fix album asset exif and some other refactorings

feat: add album assets sync

feat: album to assets relation sync

Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2025-06-25 16:10:31 +00:00
Alex
b001ba44f5
feat: generic control bottom app bar (#19524)
* feat: sliver appbar

* feat: snapping segment

* Date label font size

* lint

* fix: scrollController reinitialize multiple times

* feat: tab navigation

* chore: refactor to private widget

* feat: new control bottom app bar

* bad merge

* feat: sliver control bottom app bar
2025-06-25 16:08:02 +00:00
Zack Pollard
027c4a8b34
ci: much faster mobile builds (#19490) 2025-06-25 10:40:53 -05:00
Jason Rasmussen
eca9b56847
feat(server): person delete (#19511)
feat(api): person delete
2025-06-25 11:12:36 -04:00
shenlong
5b0575b956
refactor: DCM - const border radius, constructor & switch expressions (#19515)
* enable border radius, switch exp, const constructor

* regenerate provider

* more formatting

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-25 13:06:24 +05:30
Alex
05064f87f0
feat: sliver appbar and snap scrubbing (#19446) 2025-06-24 20:02:46 -05:00
Alex
522cdbac99
feat: sliver timeline selection optimization (#19504) 2025-06-24 19:34:30 -05:00
Brandon Wees
3751f8bc57
fix: android app link support (#19501)
* fix: android app link support

* add autoVerify tag

* adjust intent to have scheme separate
2025-06-24 12:52:15 -05:00
Brandon Wees
2e13543d5d
fix: ios widget webp support (#19469) 2025-06-24 10:33:38 -05:00
Brandon Wees
7d0e8f50f7
feat(mobile): deep links (#19232)
* add deep linking on ios app

* add deeplinking to android

* code review fixes

* lint

* cleanly handle malformed URIs when launching app

* refactor deep link builder/service, still have bug with navigation stack not containing TabControllerRoute

* fix: tab controller insertion conditions

* add my.immich.app app linking

* chore: remove one-liner if statement

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-24 09:20:24 -05:00
Alex
9ca31abae9
feat: new timeline multi-selection (#19443)
* feat: new timeline multiselection

* select all from bucket

* wip

* group multi-select

* group multi-select

* pr feedback

* pr feedback

* lint
2025-06-24 02:05:25 -05:00
Alex
1923f1a887
refactor(mobile): interfaces refactor (#19415)
* refactor(mobile): interfaces refactor

* generate files
2025-06-23 11:27:44 -05:00
fmis13
20d9204ada
feat(mobile): enable Croatian (hr) translations (#19428) 2025-06-23 12:18:04 +01:00
Alex
ce8c80dad0
refactor(mobile): cast_destination.interface.dart (#19346) 2025-06-21 21:56:49 -05:00
Alex
81eb98d4e5
refactor(mobile): album.interface.dart (#19354) 2025-06-21 23:32:06 +00:00
Alex
2b03802e9c
refactor(mobile): asset_api.interface.dart (#19353) 2025-06-21 23:06:38 +00:00
Alex
484311e9bb
refactor(mobile): asset-media.interface.dart (#19352)
* refactor(mobile): asset-media.interface.dart

* refactor(mobile): asset-media.interface.dart

* refactor: asset media repo

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-21 22:47:16 +00:00
Alex
366539bc4c
refactor(mobile): asset.interface.dart (#19351)
* refactor(mobile): asset.interface.dart

* refactor(mobile): asset.interface.dart
2025-06-21 22:41:02 +00:00
Alex
69b1331026
refactor(mobile): auth_api.interface.dart (#19350) 2025-06-21 22:20:58 +00:00
Alex
af30d97668
refactor(mobile): auth.interface.dart (#19349) 2025-06-21 22:09:12 +00:00
Alex
9b047d30e4
refactor(mobile): backup_album.interface.dart (#19348) 2025-06-21 21:58:02 +00:00
Alex
6a5597b36b
refactor(mobile): etag.interface.dart (#19344)
* refactor(mobile): etag.interface.dart

* merge main
2025-06-21 21:46:38 +00:00
Alex
c10b795e99
refactor(mobile): file_media.interface.dart (#19343)
* refactor(mobile): file_media.interface.dart

* merge main
2025-06-21 19:24:59 +00:00
Alex
b606d4fe73
refactor(mobile): local_file_manager.interface.dart (#19340) 2025-06-21 18:35:30 +00:00
Alex
4c2ad44303
refactor(mobile): folder_api.interface.dart (#19342) 2025-06-21 13:14:14 -05:00
github-actions
6563fa608a chore: version v1.135.3 2025-06-20 19:48:18 +00:00
Alex
c707f9cef4
refactor(mobile): partner.interface.dart (#19338) 2025-06-20 18:37:59 +00:00
Alex
0426699f13
refactor(mobile): partner_api.interface.dart (#19337)
* refactor(mobile): partner_api.interface.dart

* merge main
2025-06-20 17:04:15 +00:00
Alex
8154ec29df
refactor(mobile): person_api.interface.dart (#19336) 2025-06-20 11:45:31 -05:00
Alex
3024cd343b
refactor(mobile): timeline.interface.dart (#19331)
refactor(mobile): timeline.repository.dart
2025-06-20 11:44:02 -05:00
github-actions
a04c6ed80d chore: version v1.135.2 2025-06-20 14:52:47 +00:00
Alex
e61d7f2616
refactor(mobile): album_media.interface.dart (#19355)
* refactor(mobile): album_media.interface.dart

* refactor: album_media repo

* make dcm happy

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-20 14:23:43 +00:00
Alex
a6b0869714
refactor(mobile): secure_storage.interface.dart (#19335)
* refactor(mobile): secure_storage.interface.dart

* fix: lint
2025-06-20 09:12:07 -05:00
Alex
9c25b8ba7d
refactor(mobile): download.interface.dart (#19345) 2025-06-20 09:11:52 -05:00
Alex
3c72f489d8
refactor(mobile): sessions_api.interface.dart (#19334)
refactor(mobile): sessions_api.repository.dart
2025-06-20 09:11:33 -05:00
Alex
1f2c779b36
refactor(mobile): shared_handler.interface.dart (#19333)
refactor(mobile): shared_handler.repository.dart
2025-06-20 09:11:21 -05:00
Alex
5c74f634b7
refactor(mobile): network.interface.dart (#19341)
* refactor(mobile): network.interface.dart

* refactor(mobile): network.interface.dart
2025-06-20 09:11:03 -05:00
Alex
ecc99bfd16
refactor(mobile): biometric.interface.dart (#19347) 2025-06-20 09:10:53 -05:00
Alex
ff4d70e351
refactor(mobile): album_api.interface.dart (#19356) 2025-06-20 09:08:23 -05:00
Alex
42c2389eb5
refactor(mobile): activity_api.interface.dart (#19357) 2025-06-20 09:08:12 -05:00
Alex
bce4f93c90
refactor(mobile): (1) user.interface.dart (#19322)
* refactor(mobile): user.interface.dart

* generate files

* refactor(mobile): (2) user_api.interface.dart (#19323)

* refactor(mobile): (2) user_api.interface.dart

* generate files

* refactor(mobile): (3) sync_stream.interface.dart (#19325)
2025-06-19 23:25:18 +00:00
Alex
a4c0dc5007
chore: post release tasks (#19311) 2025-06-19 15:35:25 -04:00
github-actions
3434544864 chore: version v1.135.1 2025-06-19 17:37:39 +00:00
Brandon Wees
269bf4b344
fix: iOS 17.0 target version for widget (#19308) 2025-06-19 17:00:54 +00:00
Alex
10e2ec2841
chore: skip truncating table in this release (#19300) 2025-06-19 16:11:18 +00:00
Alex
3e62497fd0
fix: local network permission (#19285) 2025-06-19 14:18:51 +00:00
Alex
a1bc862a32
chore: post release tasks (#19249) 2025-06-19 09:11:24 -05:00
Jason Rasmussen
e0144b4ece
feat: backfill album users (#19234) 2025-06-18 10:48:11 -04:00
github-actions
65e8d75e82 chore: version v1.135.0 2025-06-18 13:45:07 +00:00
Alex
06f1d0dc4d
fix(mobile): correct share option for local asset (#19233) 2025-06-17 20:56:42 +00:00
Brandon Wees
a0f44f147b
feat(mobile): ios widgets (#19148)
* feat: working widgets

* chore/feat: cleaned up API, added album picker to random widget

* album filtering for requests

* check album and throw if not found

* fix app IDs and project configuration

* switch to repository/service model for updating widgets

* fix: remove home widget import

* revert info.plist formatting changes

* ran swift-format on widget code

* more formatting changes (this time run from xcode)

* show memory on widget picker snapshot

* fix: dart changes from code review

* fix: swift code review changes (not including task groups)

* fix: use task groups to run image retrievals concurrently, get rid of do catch in favor of if let

* chore: cleanup widget service in dart app

* chore: format swift

* fix: remove comma

why does xcode not freak out over this >:(

* switch to preview size for thumbnail

* chore: cropped large image

* fix: properly resize widgets so we dont OOM

* fix: set app group on logout

happens on first install

* fix: stupid app ids

* fix: revert back to thumbnail

we are hitting OOM exceptions due to resizing, once we have on-the-fly resizing on server this can be upgraded

* fix: more memory efficient resizing method, remove extraneous resize commands from API call

* fix: random widget use 12 entries instead of 24 to save memory

* fix: modify duration of entries to 20 minutes and only generate 10 at a time to avoid OOM

* feat: toggle to show album name on random widget

* Podfile lock

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-17 14:43:09 +00:00
Zack Pollard
749f63e4a0
fix: partner asset and exif sync backfill (#19224)
* fix: partner asset sync backfill

* fix: add partner asset exif backfill

* ci: output content of files that have changed
2025-06-17 09:56:54 -04:00
shenlong
db68d1af9b
feat(server): add duration to SyncAssetV1 (#19196)
add duration to SyncAssetV1

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-17 08:09:50 -04:00
shenlong
3b0a803089
fix: translation util rename (#19213)
fix: translation util refactor

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-16 11:43:53 -05:00
shenlong
bcda2c6e22
feat(mobile): sqlite timeline (#19197)
* wip: timeline

* more segment extensions

* added scrubber

* refactor: timeline state

* more refactors

* fix scrubber segments

* added remote thumb & thumbhash provider

* feat: merged view

* scrub / merged asset fixes

* rename stuff & add tile indicators

* fix local album timeline query

* ignore hidden assets during sync

* ignore recovered assets during sync

* old scrubber

* add video indicator

* handle groupBy

* handle partner inTimeline

* show duration

* reduce widget nesting in thumb tile

* merge main

* chore: extend cacheExtent

* ignore touch events on scrub label when not visible

* scrub label ignore events and hide immediately

* auto reload on sync

* refactor image providers

* throttle db updates

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-06-16 20:37:45 +05:30
Thien Dang
3d0c851636
fix(mobile): add translate extension (#18942)
* re-write localization service and add translation extension

* Revert "re-write localization service and add translation extension"

This reverts commit fdd7386020f638b92ad4f4691667d67e8c2935fc.

* fix can't use context for easy_localization

* fix lint

* update new translate context

* handle context null

* revert main file

* Revert "revert main file"

This reverts commit 16faca46d0a36abafe41a19bb46b38fffa4940f1.

* remove fix nested MaterialApp

* change use t extenstion and remove translation utils

* update function call similar for consistently

---------

Co-authored-by: dvbthien <dvbthien@gmail.com>
2025-06-16 10:01:16 -05:00
shenlong
7f56443b24
fix(mobile): asset type mismatch from android sync (#19201)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-15 20:54:30 +00:00
Alex
5f5308631e
chore: Revert "feat(mobile): remote album sync" (#19159)
Revert "feat(mobile): remote album sync (#18876)"

This reverts commit 242817c49a.
2025-06-13 16:15:39 +00:00
Daimolean
004c2f2496
fix(web): OAuth quota size (#18526)
fix(server): oauth quota size
2025-06-13 10:57:29 -04:00
Andreas Tollkötter
f54cfa7a5a
feat: improve mobile screen reader accessibility (#17876)
* WIP: adding screen reader support to mobile

* implemented getAltText

* implemented alt text solution that stores the alt text in the DB, which isn't really great

* moved alt text computation to immich_thumbnail.dart

* added unit tests

* revert unintended changes

* Added text to remaining buttons in Photo page

* fixed import

* Fixed issue of easy_localization not parsing select blocks

* Transferred the new screen reader help to web frontend

* remove unused property

* npm run format:fix

* code review

* revert unwanted change

* dart fmt

* revert web changes

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-13 10:39:59 -04:00
Jason Rasmussen
c9bcae813b
feat: duplicate delete groups api (#19142) 2025-06-12 17:48:43 -04:00
Alex
176656b5f4
feat: pass filename in body on asset upload (#19138)
* chore: get upload filename from request body

* use info from request body
2025-06-12 17:31:00 -04:00
nosajthenitram
e5219f1f31
feat(web): Added admin user config to user settings (#15380)
* feat(web): Added admin user config to user settings

* feat (web) - cleaned up the files and added tests

* feat (web) - added missing files

* feat (web) - updated per review comments

* feat (web) - e2e admin command test failures
2025-06-12 02:11:13 +00:00
JobiJoba
c03e72c1da
feat(mobile): Add Scrollbar for vertical scrolling on the actions button multi-select (#18940)
* feat(mobile): Add Scrollbar for vertical scrolling on the actions button of a selected asset.

* fixed error scroll position and add more space for the scrollbar

* revert scrollbar change and display always 5.5 icons button

* minWidth set to 5.5 and used

* fix: logic and fine tuning

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-10 10:22:42 -05:00
Alex
b50d9fa448
chore: catch migration error (#19096) 2025-06-10 15:21:36 +00:00
Jonathan Gilbert
e88bd74fd2
feat(server): add memories statistics resource (#19035) 2025-06-10 09:47:46 -04:00
Andreas Tollkötter
b890440f6b
feat(mobile): enabled DCM (#17957)
* enable DCM in CI

* chore: up version

* chore: up version

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-09 11:09:02 -05:00
Thien Dang
2572413b2b
fix(mobile): fix nested MaterialApp (#18998)
* fix nested MaterialApp

* chore

---------

Co-authored-by: dvbthien <dvbthien@gmail.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-09 15:15:31 +00:00
xCJPECKOVERx
14d785cec9
feat(server): Add album filter to search (#18985)
* - updated dtos
- added inAlbums to search builder
- only check isNotInAlbum if albumIds is blank/empty

* - consider inAlbums as OR

* - make open-api-dart

* - lint & format

* - remove inAlbums groupBy clause

* - merge main open-api

* - make open-api

* - inAlbums filter AND instead of OR
2025-06-09 11:11:43 -04:00
Daimolean
242817c49a
feat(mobile): remote album sync (#18876)
* feat(mobile): remote album sync

* fix: lint

* missing createdAt field

* lint
2025-06-09 10:09:14 -05:00
Savely Krasovsky
047c7821a3
feat(mobile): update maplibre to support PMTiles in the mobile app (#19016)
* feat(mobile): update maplibre to support PMTiles in the mobile app

* feat(mobile): update Podfile.lock
2025-06-09 09:40:12 -05:00
renovate[bot]
ccb0e711f0
chore(deps): update dependency lints to v6 (#19049)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-09 14:17:05 +00:00
shenlong
02246cdd1f
chore: re-genenrate intl_keys.g.dart (#19031)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-09 12:01:04 +01:00
shenlong
2d05a5482f
refactor: logger service and remove dynamic (#17733)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-08 22:01:31 -05:00
shenlong
84024f6cdc
refactor(mobile): simplify local sync and hash service (#18970)
* Hash service review changes

* local album repo test

* simplify local album repo method names

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-08 21:56:44 -05:00
Brandon Wees
5574b2dd39
feat(mobile): add cast support (#18341)
* initial cast framework complete and mocked cast dialog working

* wip casting

* casting works!

just need to add session key check and remote video controls

* cleanup of classes

* add session expiration checks

* cast dialog now shows connected device at top of list with a list header. Discovered devices are also cached for app session.

* cast video player finalized

* show fullsize assets on casting

* translation already happens on the text element

* remove prints

* fix lintings

* code review changes from @shenlong-tanwen

* fix connect method override

* fix alphabetization

* remove important

* filter chromecast audio devices

* fix some disconnect command ordering issues and unawaited futures

* remove prints

* only disconnect if we are connected

* don't try to reconnect if its the current device

* add cast button to top bar

* format sessions api

* more formatting issues fixed

* add snack bar to tell user that we cannot cast an asset that is not uploaded to server

* make casting icon change to primary color when casting is active

* only show casting snackbar if we are casting

* dont show cast button if asset is remote and we are not casting

* stop playing media if we seek to an asset that is not remote

* remove https check since it works with local http IP addresses

* remove unneeded imports

* fix recasting when socket closes

* fix info plist formatting

* only show cast button if there is an active websocket connection (ie the server is accessible)

* add device capability bitmask checks

* small comment about bitmask
2025-06-08 21:55:23 -05:00
JobiJoba
e88eb44aba
fix(mobile): After editing people name, back button close the app (#18992)
* fix: update dialog to not use root navigator in multiple pages so back button won't close the app

* Remove unrelated changes to PR
2025-06-08 21:53:03 -05:00
shenlong
75c24f0023
feat(mobile): sync local asset width & height from platform (#18994)
* add width and height to sqlite entities

* sync width & height from platform

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-08 21:50:54 -05:00
JobiJoba
e376366b7b
fix(mobile): people collection page layout broken in landscape (#19004)
fix(mobile): people collection page layout broken on landscape
2025-06-08 21:49:13 -05:00
JobiJoba
48e16f0a5a
feat(mobile): Capitalize first letter when add / edit name (#19005) 2025-06-08 21:48:52 -05:00
shenlong
a932cbae38
feat(mobile): typed translation keys (#18946)
* feat(mobile): typed translation keys

* ignore lint

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-08 21:38:45 -05:00
JobiJoba
e0ac588ca8
fix(mobile): share asset back button exit application (#18919)
* fix(mobile): remove dialog wrapper around share asset

* removed from multiple share and delete share dialog class

* Revert change to ShareDialog and useRootNavigator: false for showDialog
2025-06-08 21:35:19 -05:00
Jonathan Gilbert
fb4be6e231
feat(server): add /search/statistics resource (#18885) 2025-06-06 21:12:53 -04:00
shenlong
ce6631f7e0
feat(mobile): hash assets in isolate (#18924) 2025-06-06 11:23:05 +05:30
Dag Stuan
b46e066cc2
feat(web): add a user setting for default album sort order. (#18950)
* Add a user setting for default album sort order.

Add a user setting under "Features" to control the initial sort order
when creating an album. Default to the existing behavior of
"newest first".

* chore: patch openapi

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-05 23:31:34 -05:00
Min Idzelis
55f4e93456
fix: regression: sort day by fileCreatedAt again (#18732)
* fix: regression: sort day by fileCreatedAt again

* lint

* e2e test

* inline function

* e2e

* Address comments. Drop dayGroup and timezone in favor of localOffsetMinutes

* lint and some api-doc

* lint, more api-doc

* format

* Move minutes to fractional hours

* make sql

* merge/conflict

* merge fallout, review comments

* spelling

* drop offset from returned date

* move description into decorator where possible, regen api
2025-06-05 20:56:32 -05:00
shenlong
81423420c8
chore(mobile): patch isOnboarded (#18949)
fix: patch isOnboarded

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-05 17:23:45 +00:00
Alex
f64a3003af
chore: album's header styling (#18930) 2025-06-04 21:09:53 -05:00
Robin Brisa
a26d703335
feat(web): display number of likes in asset viewer (#18911)
* feat: display number of likes

* fix: properly decrement like count on unlike

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

* chore: pr feedback

* chore: updated related test

* chore: formatter run

* chore: force numberOfLikes to null in album context to pass lint

* chore: open-api updated

* fix: use undefined, not null

* styling tweaks

* chore: updated sql

---------

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-06-04 12:41:50 -05:00
JobiJoba
5d0ad853f4
feat(mobile): add album description functionality (#18886)
* feat(mobile): add album description functionality

- Introduced a new optional `description` field in the `Album` entity.
- Updated `AlbumViewerPageState` to manage `editDescriptionText`.
- Created `AlbumDescription` and `AlbumViewerEditableDescription` widgets for displaying and editing album descriptions.
- Enhanced `CreateAlbumPage` to include a description input field.
- Implemented backend support for updating album descriptions in `AlbumApiRepository` and `AlbumService`.
- Updated sync logic to handle album descriptions during data synchronization.
- Adjusted UI components to accommodate the new description feature.

* fix dart analysis error

* remove comment that shouldn't be there

* Album header styling

* fix: disable edit after album creation

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-04 17:41:28 +00:00
JobiJoba
8733d1e554
feat(mobile): add bulk download functionality (#18878)
* feat(mobile): add bulk download functionality and update UI messages

- Added `downloadAll` method to `IDownloadRepository` and its implementation in `DownloadRepository` to handle multiple asset downloads.
- Implemented `downloadAllAsset` in `DownloadStateNotifier` to trigger bulk downloads.
- Updated `DownloadService` to create download tasks for all selected assets.
- Enhanced UI with new download success and failure messages in `en.json`.
- Added download button to `ControlBottomAppBar` and integrated download functionality in `MultiselectGrid`.

* translations use i18n method t()

* Update mobile/lib/services/download.service.dart

Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com>

* fix(mobile): update download logic in DownloadService

- Changed the download method to utilize downloadAll for handling multiple tasks.
- Simplified remoteId check by removing unnecessary condition.

* sort i18n keys

* remove the download signature from interface and logic as we use the downloadAll now

---------

Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com>
2025-06-04 09:49:43 -05:00
JobiJoba
1fb8861e35
fix(mobile): prevent upload intent replacement in splash screen and reset upload button when minimize app (#18914)
fix(mobile): prevent upload intent replacement in splash screen

- Added a check in the SplashScreenPage to ensure that the route is only replaced when it's not a share intent
- Added lifecycle event to reset the isUpload.value when minimize the app
2025-06-04 08:30:23 -05:00
shenlong
70b9a4c8f1
chore: add missing api properties on sync enums (#18916)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-04 08:21:34 -05:00
Jin Xuan
3d3e5dc547
chore(server): cleanup unused query parameters in time bucket (#18893)
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-03 19:29:11 +00:00
shenlong
b4a798c39f
feat(mobile): remote asset & exif sync (#18756)
* feat(mobile): remote asset & exif sync

* add visibility and update constraints

* chore: generate drifts

* update ids to be strings

* clear remote entities on logout

* reset sqlite button

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-03 11:01:50 -05:00
waclaw66
edae9c2d3d
fix(mobile): t function localization (#18768)
* fix(mobile): items translation

* Intl.defaultLocale null coalescence
2025-06-03 09:52:29 -05:00
JobiJoba
246d593c9d
fix(mobile): reset current asset if we try to go on a activity list page (#18895) 2025-06-03 14:36:14 +00:00
Thien Dang
e4322ae0a2
feat(mobile): Add new language to mobile (#18891)
add pt_BR, bg, ta, te locates

Co-authored-by: dvbthien <dvbthien@gmail.com>
2025-06-03 14:33:13 +00:00
Thien Dang
e506c7fb19
feat(mobile): Improve language setting UI (#18854)
* improve language ui

* fix lint

* add search language, add safe area, fix button in dark

* hide apply button when search not found

---------

Co-authored-by: dvbthien <dvbthien@gmail.com>
2025-06-03 09:30:39 -05: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
shenlong
df927dd3ce
fix(mobile): photo_manager ignore filters (#18742)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-02 09:43:59 -05:00
JobiJoba
d48702f943
fix(mobile): Showing videos of partner in search page quick links (#18855)
Add userId to the contact of the timeline interface method watchAllVideosTimeline and modify the query in the repository
2025-06-02 09:35:18 -05:00
Thien Dang
a53d033622
fix(mobile): notification, dialog that don't translate properly (#18827)
* Fix notification, dialog that don't translate properly

* use localeProvider to re-build

---------

Co-authored-by: dvbthien <dvbthien@gmail.com>
2025-06-01 21:03:22 -05:00
JobiJoba
36506250c4
fix(mobile): Set the currentAsset to the asset clicked when opening an asset from folders (#18825)
Set the currentAsset to the asset clicked when opening an asset from the folder view ; fix issue #17691
2025-06-01 21:03:03 -05:00
shenlong
091a101f39
fix(mobile): group settings not respected without restart (#18823)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-06-01 20:53:45 -05:00
Nicholas
3a5fed99e1
fix(server): rename android-links api endpoint to apk-links (#18790)
* remove auth from endpoint and change android to apk

* add auth back to `apk-links`
2025-05-31 00:27:55 -04:00
Yaros
f4e4e6628e
fix(mobile): center loading spinner in people page (#18781)
fix: center loading spinner in people page
2025-05-30 16:45:29 -05:00
Yaros
4b9a7b2ce0
fix(mobile): android status bar overlays icon in map (#18780) 2025-05-30 16:04:20 +00:00
shenlong
b854a3dd47
feat(server): add originalFileName to SyncAssetV1 (#18767)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-05-30 09:56:35 -05:00
Thien Dang
0f42babb6b
fix: Update locked folder text and improve translations (#18622)
* Update locked folder text and remove unused translations

* uppercase Locked folder in Menu

* convert some translates to icu and improve

* add iOS debug info translations for background processes

* fix lint

---------

Co-authored-by: dvbthien <dvbthien@gmail.com>
2025-05-29 15:06:08 -05:00
shenlong
dbdb64f6c5
feat: delta sync (#18428)
* feat: delta sync

* fix: ignore iCloud assets

* feat: dev logs

* add full sync button

* remove photo_manager dep for sync

* misc logs and fix

* add time taken to DLog

* fix: build release iOS

* ios sync go brrr

* rename local sync service

* update isar fork

* rename to platform assets / albums

* fix ci check

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-05-29 10:42:00 -05:00
shenlong
44d49b9671
fix(mobile): double swipe (#18749)
debug: double swipe issue

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-05-29 14:35:36 +00:00
toamz
0e81c20cbb
fix: pinch zoom in mobile app (#18744)
* Change photo zoom logic

To properly zoom to current position and pan at the correct speed

TODO: zoom to current pinch position

* zoom to current pinch position

* Clean unused variable

* Formatting

* fix: lint

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-05-29 14:19:26 +00:00
Brandon Wees
0257f1a743
chore(mobile): add default cast user pref to openapi patching (#18747)
add default cast user pref to mobile patching
2025-05-29 09:06:13 -05:00
Daimolean
6f39a706b2
fix: missing permissions and optional update (#18735)
* fix: missing permissions

* fix: test
2025-05-29 08:48:44 -05:00
Nicholas
8ea40973a7
feat(server): apk links API endpoint for Obtainium Android mobile-server version sync (#18700) 2025-05-28 23:45:49 +02:00
Brandon Wees
78224961d1
feat(web): make google cast opt in (#18514)
* add setting switch

this isnt bound to anything yet

* make google casting opt-in

* doc updates

* lint docs

* remove unneeded translation items

* update mobile openai defs

* fix failing test

we need to mock user prefs since CastButton uses it
2025-05-28 15:57:36 -05:00
Daimolean
b054e9dc2c
feat(web): granular api access controls (#18179)
* feat: api access control

* feat(web): granular api access controls

* fix test

* fix e2e test

* fix: lint

* pr feedback

* merge main + new design

* finalize styling

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-05-28 13:16:43 -05:00
Alex
219f5b25a4
chore: post release tasks (#18692) 2025-05-27 17:56:12 +00:00
waclaw66
486bb47ddb
fix(mobile): local albums translation (#18637)
* fix(mobile): local albums translation

* ICU usage
2025-05-27 12:02:00 -05:00
github-actions
58ae77ec92 chore: version v1.134.0 2025-05-27 16:47:49 +00:00
Daniel Dietzler
5268dc4ee2
feat: version check endpoint (#18572) 2025-05-27 09:33:23 -05:00
Indrek Haav
099a1e4210
feat(mobile): add Estonian (#18666) 2025-05-27 14:25:44 +00:00
toamz
40e7b58ba4
fix(mobile): pinch to zoom + move acceleration (#18569)
Fix pinch to zoom + move acceleration
2025-05-25 14:32:04 -05:00
Alex
806000e671
chore: post release tasks (#18549) 2025-05-24 00:44:25 +05:30
github-actions
54bafccbf9 chore: version v1.133.1 2025-05-23 17:37:44 +00:00
Alex
e12c67742c
fix(mobile): don't show locked asset in local album view (#18536) 2025-05-23 10:20:49 -05:00
Alex
2fa7a40996
fix(mobile): chinese translation (#18491)
* fix: Chinese translation

* using Locale.fromsubtags
2025-05-23 08:01:29 -05:00
Alex
529359de2d
fix: add Swedish (#18506) 2025-05-23 10:48:30 +01:00
shenlong
15877ddf1f
fix: translations from background service (#18473)
* fix: translations from background service

* test: generate translation before running tests

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-05-22 15:13:16 -05:00
Zack Pollard
c61ea483ba
fix: mobile user agent set to immich_platform_version (#18478)
* fix: mobile user agent

* refactor: typo in MapService
2025-05-22 10:35:24 -05:00
github-actions
55adc136c8 chore: version v1.133.0 2025-05-21 19:47:42 +00:00
Jason Rasmussen
cd288533a1
feat: sync albums and album users (#18377) 2025-05-21 14:35:32 -05:00
shenlong
9771e48049
fix(mobile): do not continue on remote stream parse error (#18344)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-05-20 16:09:49 -05:00
Alex
bdf19ce331
fix: TimelineAsset visibility (#18395)
* fix: TimelineAsset visibility

* fix enum values
2025-05-20 15:53:34 +00:00
Alex
4e2fc9f017
chore: remove PIN code from secure storage on logged out (#18393) 2025-05-20 14:39:05 +00:00
Alex
fe71894308
feat: locked view mobile (#18316)
* feat: locked/private view

* feat: locked/private view

* feat: mobile lock/private view

* feat: mobile lock/private view

* merge main

* pr feedback

* pr feedback

* bottom sheet sizing

* always lock when navigating away
2025-05-20 13:35:22 +00:00
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 -05:00
Alex
2431e04a09
fix(mobile): stale thumbnail cache (#18351)
* fix(mobile): stale thumbnail cache

* Revert height/width usage
2025-05-19 09:25:27 -05:00
Saschl
9e47093501
fix(mobile): reduce stutter/jank on search pages (#18363)
fix: reduce stutter/jank on search pages
2025-05-19 09:24:58 -05:00
koostamas
b63d6cdcd6
feat: bulk change description (#18288)
Co-authored-by: Tamas Koos <ext_tamas.koos@btrl.ro>
2025-05-17 12:17:00 +02:00
Jason Rasmussen
c1150fe7e3
feat: lock auth session (#18322) 2025-05-15 18:08:31 -04:00
Brandon Wees
6117329057
feat: add session creation endpoint (#18295) 2025-05-15 13:34:33 -05: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
Jason Rasmussen
3066c8198c
feat(web): user detail page (#18230)
feat: user detail page
2025-05-12 16:50:26 -04: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
Martin Schmidt
2ffcfe06f3
fix: properly work with languages with multiple scripts (#18167)
Co-authored-by: Ewe Zu Lin <zlewe1997@gmail.com>
2025-05-09 10:09:24 -05:00
Robert Vollmer
f75d853e9a
fix(mobile): Remote video playback and asset download on Android with mTLS (#16403)
* Add class to apply SSL options

* Apply client certificate for native Android code

* Refactor self-signed check

* Allow self-signed certificates

* Fix Dart analysis

* Add HostnameVerifier

Android explicitly does NOT check the Common Name of a certificate,
only the Subject Alt Names. Chances are that someone who self-signs a
certificate doesn't go through the extra steps to add a SAN, and in
that case the connection would be prevented by the HostnameVerifier
even thought the TrustManager was fine with the certificate itself.

* Rename parameter like in Dart

* Fix NPE

* Catch all native errors in HttpSSLOptionsPlugin

* Workaround for too early onChanged() callback

* Fix formatting

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-05-08 13:45:11 +00: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
shenlong
ece977d9ca
fix(mobile): empty translation placeholders (#18063)
* fix: empty placeholders

* fix: use namedArgs

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-05-06 09:21:05 -04:00
Matthew Momjian
ab95881ebb
fix(mobile): Share page URL (#17834)
* Update share_intent.page.dart

* Update share_intent.page.dart

* unused stores

* remove unused duplicate function
2025-05-04 08:58:45 -05:00
Jason Rasmussen
b845184c80
chore: remove old memory lane implementation (#18000) 2025-04-30 14:23:32 -04:00
Jason Rasmussen
094a41ac9a
chore: remove audit file report (#17994) 2025-04-30 11:17:23 -04:00
Ben
ac73e163df
chore(mobile): translate toast messages (#17964) 2025-04-29 14:26:41 -05:00
Jason Rasmussen
d89e88bb3f
feat: configure token endpoint auth method (#17968) 2025-04-29 15:17:48 -04: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
Yaros
23717ce981
feat(mobile): save grid size on gesture resize (#17891) 2025-04-28 09:23:33 -05:00
Andreas Tollkötter
21c7d70336
feat(mobile): Capitalize month names in asset grid (#17898)
* capitalize month titles

* capitalize day titles as well
2025-04-28 13:56:36 +00:00
Jason Rasmussen
ad272333db
refactor: user avatar color (#17753) 2025-04-28 08:54:51 -05:00
Alex
205260d31c
chore: post release tasks (#17895) 2025-04-27 23:02:03 -05:00
Alex
3858973be5
chore(mobile): translation (#17920) 2025-04-27 23:00:40 -05:00
github-actions
02994883fe chore: version v1.132.3 2025-04-25 19:44:05 +00:00
Alex
a1f8150c30
fix: Authelia OAuth code verifier value contains invalid characters (#17886)
* fix(mobile): Authelia OAuth code verifier value contains invalid characters

* Refactor

* Refactoring with Jason

* Refactoring with Jason
2025-04-25 19:39:14 +00:00
Yaros
d85ef19bfc
fix(mobile): revert get location on app start (#17882) 2025-04-25 10:38:30 -05:00
Alex
644defa4a1
chore: post release tasks (#17867) 2025-04-25 04:14:40 +00:00
github-actions
0d60be3d87 chore: version v1.132.2 2025-04-25 03:07:06 +00:00
Alex
765da7b182
fix(mobile): mobile migration logic (#17865)
* fix(mobile): mobile migration logic

* add exception

* remove unused comment

* finalize
2025-04-25 00:16:54 +00:00
shenlong
b037158028
fix(mobile): auto trash using MANAGE_MEDIA (#17828)
fix: auto trash using MANAGE_MEDIA

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-04-24 19:09:50 -05:00
github-actions
37f5e6e2cb chore: version v1.132.1 2025-04-23 21:43:47 +00:00
Alex
57d622bc43
chore: post release tasks (#17816) 2025-04-23 16:41:08 -05:00
Alex
c167e46ec7
chore: revert #16732 (#17819)
* chore: revert #16732

* lint
2025-04-23 16:40:59 -05:00
github-actions
f659ef4b7a chore: version v1.132.0 2025-04-23 16:44:47 +00:00
Toni
59fa8fbd0e
perf(mobile): remove small thumbnail and cache generated thumbnails (#17792)
* Remove small thumbnail and cache generated thumbnails

* Creating the small thumbnails takes quite some time, which should not be underestimated.
* The time needed to generate the small or big thumbnail is not too different from each other. Therefore there is no real benefit of the small thumbnail and it only adds frustration to the end user experience. That is because the image appeared to have loaded (the visual move from blur to something better) but it's still so bad that it is basically a blur. The better solution is therefore to stay at the blur until the actual thumbnail has loaded.
* Additionaly to the faster generation of the thumbnail, it now also gets cached similarly to the remote thumbnail which already gets cached. This further speeds up the all over usage of the app and prevents a repeatet thumbnail generation when opening the app.
* Decreased the quality from the default 95 to 80 to provide similar quality with much reduces thumbnail size.
* Use try catch around the read of the cache file.
* Use the key provided in the loadImage method instead of the asset of the constructor.

* Use userId instead of ownerId

* Remove import

* Add checksum to thumbnail cache key
2025-04-23 10:31:35 -05: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
Alex
13d6bd67b1
feat: no small local thumbnail (#17787)
* feat: no small local thumbnail

* pr feedback
2025-04-23 14:02:51 +00:00
Toni
1de2eae12d
perf(mobile): remove load of thumbnails in the image provider (#17773)
Remove loading of thumbnail in the image provider

* Removed the load of the thumbnail from the local and remote image provider as they shall provide the image, not the thumbnail. The thumbnail gets provided by the thumbnail provider.
* The thumbnail provider is used as the loadingBuilder and the image provider as the imageProvider. Therefore loading the thumbnail in the image provider loads it a second time which is completely redundant, uses precious time and yields no results.

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-23 13:55:51 +00:00
Matthew Momjian
699fdd0d1b
fix(mobile): recently added -> taken (#17780) 2025-04-23 12:38:25 +01:00
Łukasz Wawrzyk
ee017803bf
fix(mobile): use immutable cache keys for local images (#17794) 2025-04-23 02:32:03 +00:00
Alex
0986a71ce3
fix(mobile): revert cache fixes (#17786)
* Revert "fix(mobile): use immutable cache keys for local images (#17736)"

This reverts commit 010b144754.

* Revert "perf(mobile): remove small thumbnail and cache generated thumbnails (#17682)"

This reverts commit b71039e83c.
2025-04-22 12:15:54 -05:00
Alex
af36eaa61b
fix(mobile): video player initialization (#17778)
* fix(mobile): video player initialization

* nit
2025-04-22 11:51:20 -04:00
Łukasz Wawrzyk
010b144754
fix(mobile): use immutable cache keys for local images (#17736)
fix(mobile): usse immutable cache keys for local images
2025-04-21 13:00:46 -05:00
Toni
b71039e83c
perf(mobile): remove small thumbnail and cache generated thumbnails (#17682)
* Remove small thumbnail and cache generated thumbnails

* Creating the small thumbnails takes quite some time, which should not be underestimated.
* The time needed to generate the small or big thumbnail is not too different from each other. Therefore there is no real benefit of the small thumbnail and it only adds frustration to the end user experience. That is because the image appeared to have loaded (the visual move from blur to something better) but it's still so bad that it is basically a blur. The better solution is therefore to stay at the blur until the actual thumbnail has loaded.
* Additionaly to the faster generation of the thumbnail, it now also gets cached similarly to the remote thumbnail which already gets cached. This further speeds up the all over usage of the app and prevents a repeatet thumbnail generation when opening the app.

* Decrease quality and use try catch

* Decreased the quality from the default 95 to 80 to provide similar quality with much reduces thumbnail size.
* Use try catch around the read of the cache file.

* Replace ImmutableBuffer.fromUint8List with ImmutableBuffer.fromFilePath

* Removed unnecessary comment

* Replace debugPrint with log.severe for catch of error

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-21 12:51:37 -05:00
Jason Rasmussen
488dc4efbd
refactor: notification-admin controller (#17748) 2025-04-21 10:49:26 -04:00
Yaros
f0ff8581da
feat(mobile): map improvements (#17714)
* fix: remove unnecessary db operations in map

* feat: use user's location for map thumbnails

* chore: refactored handleMapEvents

* fix: location fails fetching & update geolocator

* chore: minor refactor

* chore: small style tweak

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-21 05:55:13 +00:00
Yaros
c49fd2065b
chore(mobile): bump ios deployment target (#17715)
* chore: bump ios deployment target

* podfile

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-21 05:18:25 +00:00
Alex
0e6ac87645
feat(mobile): assets + exif stream sync placeholder (#17677)
* feat(mobile): assets + exif stream sync placeholder

* feat(mobile): assets + exif stream sync placeholder

* refactor

* fix: test

* fix:test

* refactor(mobile): sync stream service (#17687)

* refactor: sync stream to use callbacks

* pr feedback

* pr feedback

* pr feedback

* fix: test

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>

---------

Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com>
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-04-18 19:01:16 +00:00
Yaros
bd2deda50c
feat(mobile): search on places page (#17679)
* feat: search on places page

* chore: use searchfield on people page
2025-04-18 11:19:51 -05:00
shenlong
81ed54aa61
feat: user sync stream (#16862)
* refactor: user entity

* chore: rebase fixes

* refactor: remove int user Id

* refactor: migrate store userId from int to string

* refactor: rename uid to id

* feat: drift

* pr feedback

* refactor: move common overrides to mixin

* refactor: remove int user Id

* refactor: migrate store userId from int to string

* refactor: rename uid to id

* feat: user & partner sync stream

* pr changes

* refactor: sync service and add tests

* chore: remove generated change

* chore: move sync model

* rebase: convert string ids to byte uuids

* rebase

* add processing logs

* batch db calls

* rewrite isolate manager

* rewrite with worker_manager

* misc fixes

* add sync order test

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-17 10:25:27 -05:00
Daniel Dietzler
067338b0ed
chore: remove transfer encoding header (#17671) 2025-04-17 09:46:52 -05:00
Alex
7efcba2b12
chore(mobile): flutter 3.29.3 (#17638)
* chore(mobile): flutter 3.29.3

* chore(mobile): flutter 3.29.3

* upgrade background_downloader
2025-04-15 21:03:22 +00:00
Alex
36fa61c013
fix(mobile): new loading icon too small (#17636) 2025-04-15 20:08:34 +00:00
Alex
19e5a6f68f
chore(doc): translation instruction for mobile app (#17629) 2025-04-15 14:31:13 -05:00
shenlong
78f8e23834
fix(mobile): exif not updated on sync (#17633)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-04-15 14:30:58 -05:00
Toni
7c422363fb
chore(mobile): clear the backup detail view when no backup is in progress (#17619)
Clear the backup detail view when no backup is in progress

* When no backup is in progress, display a simple "-" for the details in the upload file info, instead of the data of the last uploaded asset.
* This prevents confusion if a upload job is stuck or just finished.
2025-04-15 11:30:24 -05:00
Alex
b2c903c000
feat(mobile): use Weblate for i18n (2) (#17620)
* feat(mobile): use Weblate for i18n (2)

* remove old translation files

* dedup keys

* remove migration report

* chore

* remove localizely.yml
2025-04-15 15:54:26 +00:00
Alex
a522130122
feat(mobile): use Weblate for i18n (1) (#17609) 2025-04-15 08:30:01 -05:00
Andrei Mironov
bd92748ddd
perf(mobile): optimize date loading with batch loading (#17240)
* perf(mobile): optimize date loading with batch loading

Introduce DateBatchLoader to reduce the number of database queries by loading dates in batches, improving performance when querying large lists.

* remove unused totalCount parameter from DateBatchLoader

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-14 19:06:36 +00:00
Toni
aad5c3bada
chore(mobile): don't show drag scroll date in search page (#17594)
Dont show drag scroll date in search page

* When using the drag scroll, the date of the current image is shown. This is now made toggleable.
* For the mobile search result page, the display of the date is now disabled because the results are not sorted by date and therefore a display of the date is not desirable.
2025-04-14 14:03:18 -05:00
AutisticShark
664c99278a
feat(mobile): remove duplicated i18n file (#17591)
https://github.com/immich-app/immich/issues/8946

Co-authored-by: Cat <cat@nextpanel.dev>
2025-04-14 11:36:18 -05:00
Alex
ab2a7006f9
chore(mobile): small visual fix and update (#17547)
* chore(mobile): small visual fix and update

* update

* update

* remove design placeholder
2025-04-13 08:01:32 -05:00
Yaros
52d4b2fe57
fix(mobile): remove locate asset button from trashed asset (#17503)
* fix: remove locate asset button from trashed asset

* chore: refactor code
2025-04-11 09:41:10 -05:00
Gagan Yadav
04b03f2924
fix(mobile): asset grid will infinitely scroll on iOS when select and… (#17469)
fix(mobile): asset grid will infinitely scroll on iOS when select and drag
2025-04-09 08:36:27 -05:00
Gagan Yadav
ac65d46ec6
fix(mobile): adds support for Internationalized Domain Name (IDN) (#17461) 2025-04-08 11:04:42 -05:00
Gagan Yadav
75bc32b47b
fix(mobile): hide asset description text field if user is not owner (#17442)
* fix(mobile): hide asset description text field if user is not owner

* If user is not the owner and asset has no description then hide the text field

* Apply suggestions from code review

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

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-08 09:18:33 -05:00
Aleksandr
2b131fe935
feat: opt-in sync of deletes and restores from web to Android (#16732)
* Features: Local file movement to trash and restoration back to the album added. (Android)

* Comments fixes

* settings button marked as [EXPERIMENTAL]

* _moveToTrashMatchedAssets refactored, moveToTrash renamed.

* fix: bad merge

* Permission check and request for local storage added.

* Permission request added on settings switcher

* Settings button logic changed

* Method channel file_trash moved to BackgroundServicePlugin

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-04-08 08:50:40 -05:00
shenlong
43d585ce55
fix(mobile): exifInfo not updated on sync (#17407)
* fix(mobile): exifInfo not updated on sync

* add tests

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-04-07 10:21:37 -05:00
shenlong
042da669d1
fix(mobile): use custom filter to fetch asset path entities (#17344)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-04-07 09:39:24 -05:00
Yaros
a724f147fe
fix(mobile): items not deselecting on back button (#17403)
* fix: items not deselecting on back button

* chore: add comments
2025-04-07 09:35:27 -05:00
Sebastian Schneider
1e4b9ae5b7
fix(mobile): video player restarting when device rotates (#17362)
* fix(mobile): Video player restarting when device rotates

* use global key in state

* Implement suggestions from code review
2025-04-07 09:26:08 -05: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
shenlong
b58a450152
fix(mobile): prevent unnecessary reload on multi user timeline (#17418)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-04-06 22:04:13 -05:00
shenlong
dfab32c8f2
fix(mobile): ignore invalid store keys (#17370)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-04-03 22:35:50 -05:00
shenlong
60174d662d
fix(mobile): bump isar maxSize (#17372) 2025-04-03 21:49:50 -05:00
shenlong
97e52c5156
refactor(mobile): device asset entity to use modified time (#17064)
* refactor: device asset entity to use modified time

* chore: cleanup

* refactor: remove album media dependency from hashservice

* refactor: return updated copy of asset

* add hash service tests

* chore: rename hash batch constants

* chore: log the number of assets processed during migration

* chore: more logs

* refactor: use lookup and more tests

* use sort approach

* refactor hash service to use for loop instead

* refactor: rename to getByIds

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-04-03 14:42:35 -05:00
Alex
548298b0c7
chore: post release tasks (#17341) 2025-04-03 08:47:52 -04:00
shenlong
5a456ef277
feat(mobile): sqlite (#16861)
* refactor: user entity

* chore: rebase fixes

* refactor: remove int user Id

* refactor: migrate store userId from int to string

* refactor: rename uid to id

* feat: drift

* pr feedback

* refactor: move common overrides to mixin

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-04-02 08:58:17 -05:00
github-actions
00d3b8d83a chore: version v1.131.3 2025-04-01 22:27:52 +00:00
Alex
f434e858ed
fix(mobile): getAllByRemoteId return all assets on empty arguments value (#17263)
* chore: post release tasks

* fix(mobile): getAllByRemoteId return all assets if ids is empty
2025-04-01 08:59:21 -05:00
github-actions
9aa3850769 chore: version v1.131.2 2025-04-01 11:41:56 +00:00
Alex
bd822657d3
chore: post release tasks (#17262) 2025-04-01 00:36:18 +01:00
github-actions
7729fe80fa chore: version v1.131.1 2025-03-31 20:36:48 +00:00
github-actions
5b63b9fc8b chore: version v1.131.0 2025-03-31 18:41:13 +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
Mert
6789c2ac19
feat(ml): better multilingual search with nllb models (#13567) 2025-03-31 11:06:57 -04:00
Saschl
6419ac74af
fix: update renderlist after asset deleted (#16786) 2025-03-28 18:34:19 +00:00
Yaros
d2bcf5d716
fix(mobile): pause background video play (#17032)
* fix(mobile): prevent background video playback

* fix: logic for tracking app state

* chore: move lifecycle handler in separate file

* chore: replace useState with useRef

* chore: useOnAppLifecycleStateChange

* fix: removed print statement
2025-03-28 10:32:25 -05:00
shenlong
c8331f111f
fix(mobile): prefer remote orientation (#17177)
* fix(mobile): prefer remote orientation

* pr feedback

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-28 10:24:31 -05:00
Alex
411521b21d
chore: post release tasks (#17179) 2025-03-27 19:41:22 -04:00
github-actions
43f8f473e9 chore: version v1.130.3 2025-03-27 15:54:30 +00:00
shenlong
cc393b2b7b
fix(mobile): oauth-mobile-first-login (#17173)
invalidate ref

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-27 15:49:55 +00:00
shenlong
c72c82c401
fix(mobile): faster device album refresh after initial sync (#17170)
fix(mobile): faster device album refresh after fresh sync

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-27 08:47:05 -05:00
github-actions
2f8725c66f chore: version v1.130.2 2025-03-26 15:34:54 +00:00
github-actions
4cf7c55680 chore: version v1.130.1 2025-03-25 20:25:01 +00:00
Alex
b8ff93a3c9
chore: post release tasks (#17097) 2025-03-25 21:22:30 +01:00
github-actions
42b1efb679 chore: version v1.130.0 2025-03-25 13:48:45 +00:00
Alex
c14668bdd4
chore(mobile): translation (#17073)
chore(mobile): translation update
2025-03-24 22:16:10 +00:00
Yaros
a651a4bf0e
chore(mobile): search field in separate widget (#16977)
* chore(mobile): search field in separate widget

* fix: removed unnecessary use of context

* chore: minor styling tweak

* fix: controller not bound

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-24 14:40:33 -05:00
Alex
8bc80076bb
fix(mobile): show new local assets in offline mode (#16817)
fix: show new local assets in offline mode
2025-03-24 16:56:18 +00:00
Luigi311
89656472ef
fix(mobile): fallback authentication client model/type to unknown (#17059)
mobile: fallback authentication client model/type to unknown

Add fallback for client model/type if device is not ios or android

Signed-off-by: Luis Garcia <git@luigi311.com>
2025-03-24 11:26:05 -05:00
Yaros
d9c6ec06e5
chore(mobile): suffix to app name on debug builds (#17044) 2025-03-24 11:23:07 -05:00
shenlong
ad151130f9
chore: rename user api interface (#17062)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-24 11:00:08 -05:00
Damiano Ferrari
a77608e36b
fix(mobile): selectedIcon not set when the device is landscape (#17027) 2025-03-24 10:50:49 -05:00
Damiano Ferrari
df8ba21b7d
fix(mobile): Make icons consistent (all outlined) (#17028)
* fix(mobile): Make icons consistent (all outlined)

* fix(mobile): make `date_range` icon outlined
2025-03-24 10:10:15 -05:00
Yaros
a285b1898e
fix(mobile): platform-dependent share icons & label (#17034)
fix: platform-dependant icons
2025-03-24 08:36:15 -05:00
renovate[bot]
8de71ddaf3
chore(deps): update dependency flutter to v3.29.2 (#16963)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-19 10:58:57 -05:00
renovate[bot]
b609f35841
chore(deps): update base-image to v20250318 (major) (#16950)
* chore(deps): update base-image to v20250318

* chore

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-18 11:07:11 -05:00
shenlong
9cf3b88f80
refactor(mobile): remove int user id (#16814)
* refactor: user entity

* chore: rebase fixes

* refactor: remove int user Id

* refactor: migrate store userId from int to string

* refactor: rename uid to id

* fix: migration

* pr feedback

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-18 11:05:37 -05:00
shenlong
dd263b010c
refactor(mobile): use user service methods (#16783)
* refactor: user entity

* chore: rebase fixes

* refactor(mobile): refactor to use user service methods

* fix: late init error

* fix: lint

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-18 08:32:33 -05:00
Yaros
93907a89d8
fix(mobile): age calculation & formatting (#16833) 2025-03-17 13:51:17 -05:00
Yaros
f8b40188e2
fix(mobile): change share icons for consistency (#16904) 2025-03-17 12:34:58 -05:00
shenlong
1e184a70f1
refactor: cleanup background service (#16855)
refactor: background service

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-17 08:48:22 -05:00
shenlong
b778a86c99
refactor(mobile): move user service to domain (#16782)
* refactor: user entity

* chore: rebase fixes

* refactor(mobile): move user service to domain

* fix: timeline not visible on album selection page

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-13 22:20:26 -05:00
ExceptionsOccur
858d1e9d9b
fix(mobile): back gesture in asset selection page from an album (#16449)
* fix(mobile): the page for adding photos to the album cannot be navigated back using gestures #16409

* First-time return gesture adds the feature to cancel all current selections

---------

Co-authored-by: ExceptionsOccur <yuyu.tao@foxmail.com>
2025-03-13 11:37:05 +05:30
shenlong
77fad86b82
chore(mobile): bump dependency versions (#16823)
* chore(mobile): bump dep version

* reorganize files

* sort

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-12 14:33:11 +00:00
shenlong
d1c8fe5303
refactor: user entity (#16655)
* refactor: user entity

* fix: add users to album & user profile url

* chore: rebase fixes

* generate files

* fix(mobile): timeline not reset on login

* fix: test stub

* refactor: rename user model (#16813)

* refactor: rename user model

* simplify import

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>

* chore: generate files

* fix: use getAllAccessible instead of getAll

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-12 08:56:56 -05:00
shenlong
6caa11d079
chore(mobile): use path provider foundation (#16804)
* chore(mobile): use path provider foundation

* chore: update podfile

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-11 09:26:43 -05:00
shenlong
653fa3f0b1
chore(mobile): add orientation tests for exif (#16806)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-11 09:25:46 -05:00
Alex
2be8b6c16d
chore: ignore correct build folder (#16808) 2025-03-11 14:22:05 +00:00
shenlong
ac1b2d2fab
chore(mobile): generated files and ci check (#16798)
* chore(mobile): more generated files

* ci: verify generated files in mobile are up-to-date

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-11 12:22:31 +00: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 +00:00
shenlong
81df812f56
fix(mobile): calculate isFlipped for exif from db (#16797)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-11 10:41:47 +00:00
Alex
75fa305e98
chore: flutter 3.29.1 (#16730)
* update dependencies

* update flutter version reference

* update flutter version reference

* update AndroidManifest with flutter_web_auth_2

* chore: lock file flutter version

* fix: ios build
2025-03-10 21:46:36 -05: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 -04:00
Alex
57272904d6
chore(mobile): upgrade maplibre (#16739)
* chore(mobile): upgrade maplibre

* chore(mobile): upgrade maplibre

* color
2025-03-10 09:41:43 -05:00
Yaros
bdabea4030
feat(mobile): locate in timeline (#16722)
* feat(mobile): view in timeline

* fix: throwing error on scroll

* only show option if not in photos tab
2025-03-09 21:31:34 -05:00
Alex
82624b0979
chore(mobile): upgrade riverpod (#16742) 2025-03-09 20:30:58 -05:00
Alex
17c5094719
chore(mobile): upgrade flutter_web_auth_2 (#16741)
* chore(mobile): upgrade flutter_web_auth_2

* pod file
2025-03-09 20:26:37 -05:00
Yaros
6c5f99c47a
feat(mobile): person age on photo properties (#16728)
* feat(mobile): person age on photo properties

* switch to using placeholder
2025-03-08 23:02:40 +01:00
Yaros
5252c013ec
fix(mobile): fix notification icon not displaying properly (#16710) 2025-03-07 19:08:53 -06:00
Yaros
b0bf4e4fff
feat(mobile): search on people page (#16696) 2025-03-07 14:43:32 -06:00
Yaros
c12986d38c
fix(mobile): remain on albums tab after album deletion (#16698)
fix(mobile): remain on albums after album deletion
2025-03-07 13:25:07 -06:00
shenlong
fe931faf17
refactor: exif entity (#16621)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-06 11:58:24 -06:00
Arno
4ebc25c754
feat(mobile): Folder View for mobile (#15047)
* very rough prototype for folder navigation without assets

* fix: refactored data model and tried to implement asset loading

* fix: openapi generator shadowing query param in /view/folder

* add simple alphanumeric sorting for folders

* basic asset viewing in folders

* rudimentary switch sorting order

* fixed reactivity when toggling sort order

* Fixed trailing comma

* Fixed bad merge conflict resolution

* Regenerated open-api

* Added rudimentary breadcrumbs

* Fixed linting problems

* feat: cleanup

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-06 17:27:43 +00:00
Alex
1ed1a0a1fc
feat(mobile): new sync (#16556)
* feat(mobile): new sync

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* update analysis option

* remove database operation

* pr feedback
2025-03-06 08:44:28 -06:00
Alex
c110c9b00e
chore(mobile): post release task (#16623) 2025-03-05 14:54:56 -06:00
Yaros
b241a80339
feat(mobile): Navigate back on memories (#16545)
* Navigate back on memories

* Fixes crash on navigating back
2025-03-05 14:42:43 -06:00
github-actions
31dd15ce8a chore: version v1.129.0 2025-03-05 19:47:50 +00:00
Alex
3e50f668d9
feat(mobile): add catalan i18n (#16616)
* feat(mobile): Add Catalan

* refactor

* fix: load correct file

* chore: remove unused language files
2025-03-05 11:47:31 -06:00
Alex
76cb32d8d0
chore(mobile): translations update (#16615)
chore(mobile): translation update
2025-03-05 16:33:41 +00:00
Yaros
e8f3348833
fix(mobile): Fixed zh-Hans not persisting (#16608)
Fixed zh-Hans not persisting
2025-03-05 09:56:00 -06:00
shenlong
3f4bbab4eb
fix: isar crash on resume from app detach (#16599)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-05 08:28:40 -06:00
waclaw66
8b43066632
fix(mobile): .well-known usage (#16577)
fix: .well-known

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-03-04 20:25:57 -06:00
shenlong
3b0af1c8a9
fix(mobile): do not pause audio on app start (#16596)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-04 16:00:01 -06:00
Alex
86e8effd8e
fix(mobile): incorrect memories with timezone (#16562) 2025-03-04 12:54:54 +00:00
shenlong
7f61ac6983
chore(mobile): fix store.put type def (#16517)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-03 09:11:13 -06:00
shenlong
4db8f0c666
refactor(mobile): move timeline methods to timeline repo (#16526)
* refactor: move timeline calls to timeline repo

* refactor: review changes

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-03 09:10:09 -06:00
Zack Pollard
fe702ba6d7
feat: partner sync (#16424)
feat: partner CUD sync
2025-03-03 11:05:30 +00:00
Justin Cichra
8885e3105e
chore: reword backup_manual_in_progress (#16513)
fix(i18n): reword backup_manual_in_progress

Split "sometime" into "some time".
2025-03-03 03:27:20 +00:00
Yaros
fd5e931617
fix(mobile): Updated formatting of server address in networking (#16483)
* Updated formatting of server address in networking

* fallback for undefined endpoint
2025-03-02 06:58:05 -06:00
shenlong
d8d87bb565
chore(mobile): rename log enum to lowercase (#16476)
* chore(mobile): rename log enum to lowercase

* chore(mobile): do not abbreviate

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-03-02 06:30:48 -06:00
luzpaz
c8eef5ad4d
fix(mobile): fix typos (#16456)
Found via codespell
2025-03-01 20:06:47 +00:00
Alex
f11080cc2d
chore(mobile): post release task (#16437) 2025-02-28 21:09:09 -06:00
github-actions
dc143046e3 chore: version v1.128.0 2025-02-28 18:54:08 +00:00
shenlong
9a98712db7
fix(mobile): background backup failing due to store (#16418)
fix: background backup failing due to store

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-02-28 07:38:51 -06:00
shenlong
28c664c769
refactor(mobile): log service (#16383)
refactor: log service

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-02-27 15:18:49 -05:00
Alex
1c86293035
chore(mobile): update analysis option (#16396)
chore-update-analysis-option
2025-02-27 18:35:28 +00:00
shenlong
4a9d80298b
fix(mobile): bootstrap store inside isolates (#16392)
fix: bootstrap store inside isolates

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-02-27 18:01:36 +00:00
Alex
c70c9067b0
refactor(mobile): backup provider (#16360)
* refactor(mobile): backup provider

* refactor(mobile): backup provider
2025-02-27 09:56:23 -06:00
Alex
082471dfd9
chore(mobile): post release task (#16349) 2025-02-27 09:46:34 -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
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
8fbd650483
refactor(mobile): refactor user provider (#16358) 2025-02-26 17:04:43 -06:00
github-actions
5f7f88ff17 chore: version v1.127.0 2025-02-26 15:18:50 +00:00
Alex
8ecc67a364
feat(mobile): use memories api (#16329) 2025-02-25 19:10:31 -06:00
Alex
90f7c3d9ae
chore(mobile): translations update (#16328)
chore(mobile): translation update
2025-02-25 15:06:40 -06:00
Alex
d0381fddec
refactor(mobile): render list (#16303)
* refactor(mobile): render list 2

* wip

* wip: asset selection page

* remove render_list provider

* remove dead code

* yaml format

* remove unused file

* woop woop more clean up

* woop woop more clean up 2

* fix: album selection doesn't load instantly
2025-02-25 11:33:48 -06:00
ExceptionsOccur
c0fe98fe27
feat(mobile): photos group by date in album page view (#16272)
* feat(mobile): photos group by date in album page view

* fix: format

---------

Co-authored-by: ExceptionsOccur <yuyu.tao@foxmail.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-02-25 15:10:08 +00:00
Alex
579321251f
refactor(mobile): partners provider (#16299)
* refactor(mobile): partners provider

* update analysis option

* update analysis option
2025-02-25 08:52:33 -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
shenlong
94c0e8253a
test(mobile): store (#16243)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-02-21 09:10:42 -06:00
Alex
5acf6868b7
refactor(mobile): render list (#16239)
* refactor(mobile): trash provider

* refactor(mobile): trash provider

* pr feedback

* archive timeline

* favorite

* album

* trash timeline

* all videos timeline

* refactor

* refactor: home timeline and partner timeline

* update analysis option
2025-02-21 09:01:46 -06: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 -05:00
Alex
17a2043e76
refactor(mobile): trash provider (#16219)
* refactor(mobile): trash provider

* refactor(mobile): trash provider

* pr feedback
2025-02-20 22:14:41 -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
shenlong
76d95cd348
refactor(mobile): move store settings and store into domain folder (#16201)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-02-19 19:27:32 +00:00
shenlong
aeb3e0a84f
refactor(mobile): split store into repo and service (#16199)
* refactor(mobile): migrate store

* refactor(mobile): expand abbreviations

* chore(mobile): fix lint

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-02-19 13:05:24 -06:00
Alex
9d4aee36e2
refactor(mobile): asset provider (#16159)
* refactor(mobile): asset provider

* wip

* wip: delete local assets

* wip: delete remote assets

* wip: deletion logic

* refactor

* pr feedback
2025-02-18 13:10:55 -06:00
shenlong
70d08a2b2a
chore(mobile): lint (#16182)
* lint - convert path to lowercase for finding index

* update dcm lint rules

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-02-18 09:34:19 -06:00
João Paulo Ros
efd8d8b884
fix(mobile): Server endpoint on the login screen. (#16149)
Fixing the server endpoint on the login screen. It added the "/api" suffix instead of using the default method getServerUrl, which takes care of sanitizing the URL.

Co-authored-by: Joao Paulo Ros <ros@voxit.ai>
2025-02-17 19:12:48 +00:00
Jason Rasmussen
7c26663013
chore: removed unused endpoint (#16167) 2025-02-17 13:07:50 -06:00
Pablo P Varela
5cd1018db3
fix(mobile): failed to load gl-ES locale (#16123) 2025-02-17 08:48:55 -06:00
Alex
4f912de018
refactor(mobile): album provider (#16099) 2025-02-14 19:27:39 -06:00
Alex
47203d2760
refactor(mobile): asset stack provider (#16100)
* refactor(mobile): asset stack provider

* remove file from ignore list
2025-02-14 13:23:14 -06:00
Yaros
7c821dd205
feat(mobile): Made Map Bottom Sheet extendable higher (#16056)
Made Map Bottom Sheet extendable higher
2025-02-12 14:56:50 +00:00
Alex
1a190c33a0
chore(mobile): post release task (#16004) 2025-02-11 11:23:02 -06:00
github-actions
8794c84e9d chore: version v1.126.1 2025-02-10 17:54:02 +00:00
Alex
cef19eed97
chore(mobile): patch openapi preference (#16000) 2025-02-10 17:39:43 +00:00
Alex
90c607c1a6
chore(mobile): post release task (#15998) 2025-02-10 11:12:36 -06:00
github-actions
feba590de7 chore: version v1.126.0 2025-02-10 16:10:06 +00: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
Jason Rasmussen
23014c263b
feat(api): set person color (#15937) 2025-02-07 10:06:58 -05: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
Tom Graham
69e88ef985
fix(mobile): #15182 Video memories no longer play (#15210)
* Update current asset to play video.

* Updated location of currentAssetProvider update per feedback.

* Added a playbackDelayFactor to the video viewer to resolve an issue in memories.

Also adjusted the scale of the memory preview image to match the ratio of the video. This still appears to jump because the video preview doesn't seem to be the first frame for some reason :\

* add video indicator

---------

Co-authored-by: Tom graham <tomg@questps.com.au>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-02-03 22:43:23 +00:00
Meesam
47f6181d42
fix(mobile): improved the visibility of backup cloud icon on lighter images (#15886)
* fix(mobile): improved the visibility of backup cloud icon on lighter images

* refactor(mobile): add 'const' keyword to Offset constructor for improved performance
2025-02-03 20:30:39 +00:00
Damiano Ferrari
ef245ea2d2
feat(mobile): Use NavigationRail when the screen is in landscape mode (#15885) 2025-02-03 13:49:55 -06:00
Damiano Ferrari
96a6cc20b7
refactor(mobile): Use switch expression when possible (#15852)
refactor: Use `switch` expression when possible

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-02-02 15:46:46 -06: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
Matthew Momjian
a808a840c8
fix(mobile): title of custom proxy headers (#15859)
fix title
2025-02-02 20:43:14 +00: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
Mangat Singh Toor | ਮੰਗਤ ਸਿੰਘ ਤੂਰ
221e197633
fix(mobile): retain edited title when album updates (#15806)
* fix(album-viewer): retain edited title when album updates

ensure `AlbumViewerEditableTitle` keeps user input while editing,
even when the album updates from another provider. fall back to
`albumName` only when not in edit mode.

* linting

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-01-31 09:24:53 -06:00
Alex
098bab7c9b
fix(mobile): search page issues (#15804)
* fix: don't repeat search

* fix: show snackbar for no result

* fix: do not search on empty filter

* chore: syling
2025-01-31 03:12:57 +00:00
Justin Forseth
6e31ac4c75
feat(mobile): Add filter to people_picker.dart (#15771)
* Add filter to people_picker.dart

* feat: styling

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-01-29 21:02:54 +00:00
github-actions
4fd8c1b3c1 chore: version v1.125.7 2025-01-29 17:41:38 +00: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 -05:00
Simon
cb6d94c7a7
chore: update of the Ukrainian translation (#15751)
Update uk-UA.json

Update of the Ukrainian translation for the Immich app
2025-01-28 20:32:57 +00: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 -06:00
github-actions
f44669447f chore: version v1.125.6 2025-01-28 02:58:27 +00:00
github-actions
64d926581f chore: version v1.125.5 2025-01-27 20:04:50 +00:00
Alex
c139e05170
fix(mobile): locale option causes the datetime filter error out (#15704) 2025-01-27 14:02:23 -06:00
github-actions
e5794e6cfc chore: version v1.125.4 2025-01-27 18:44:12 +00:00
Alex
8dab5d3798
chore(mobile): post release task (#15662) 2025-01-26 15:09:15 -06:00
github-actions
72a55c13b6 chore: version v1.125.3 2025-01-26 14:14:48 +00:00
Damiano Ferrari
f780a56e24
fix(mobile): Misaligned text icon in circle avatar (#15683)
style(mobile): Use `DefaultTextStyle` for the text icon in `CircleAvatar`
2025-01-26 07:51:46 -06:00
Gagan Yadav
19f2f888ee
fix(mobile): improve timezone picker (#15615)
- Fix missing timezones

- Remove the UTC prefix from timezone display text to align with web app

- Remove unnecessary layout builder

- Created a custom `DropdownSearchMenu` widget

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-01-25 13:36:49 -06:00
github-actions
9871a04d54 chore: version v1.125.2 2025-01-24 19:09:06 +00:00
Alex
f5a3d7ba23
fix(mobile): failed to load ga/gl locale (#15623) 2025-01-24 12:47:29 -06:00
Saschl
3c1fa22109
fix(mobile): deletion of single assets (#15597)
fix: set asset in currentassetprovider on image load

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-01-24 17:47:54 +00:00
Matthew Momjian
c0210bd6c0
fix(mobile): translation (no /api, experimental features) (#15600)
* initial /api removal

* translations /api

* experimental features

* japanese url update

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-01-24 11:47:01 -06:00
Alex
61bc24d7ea
chore(mobile): post release task (#15581) 2025-01-24 17:28:00 +00:00
Alex
6c95eb22b7
fix(mobile): full refresh doesn't get albums (#15560) 2025-01-24 17:27:33 +00:00
Alex
96d2e9b4c5
fix(mobile): unit test (#15604)
* fix(mobile): unit test

* fix(mobile): unit test
2025-01-24 12:11:38 -05:00
github-actions
50a2f6193f chore: version v1.125.1 2025-01-23 16:52:23 +00:00
github-actions
49a16045bd chore: version v1.125.0 2025-01-23 16:23:47 +00:00
Alex
7b882b35e5
chore(mobile): translations update (#15523)
chore(mobile): translation update
2025-01-22 18:38:01 +00:00
Alex
a0b2c69b99
fix(mobile): cannot get new photos on Android (#15461) 2025-01-20 07:25:43 -06:00
Alex
d249b63c99
fix(mobile): Cannot type date format on Samsung phone (#15430)
* fix(mobile): Cannot type date format on Samsung phone

* use calendar
2025-01-18 21:56:18 +00:00
Tom Graham
efbc0cb192
fix(mobile): 14983 Images upload to shared album with common name (#15127)
* Initial look at fixing issue where images are uploaded to the wrong album if a shared album conflicts with a local users album.

* Use owner instead of shared flag when fetching albums.

* Fix issue with refreshRemoteAlbums getting shared items twice and removed incorrect isShared comment.

Using `getAll(shared: true)` gets all shared albums the user can access (regardless of owner, despite the previous comment).

Using `getAll(shared: null)` gets all albums (incuding shared = true and shared = false). I presume the intent here was to get albums that were shared (and not mine), and not shared (ie: mine), but the logic is way off. It also just then combines them - so makes more sense to just get them in a single call.

* Fix formatting.

* Fixed tests.

* Revert "Fixed tests."

This reverts commit c38f5af5acfc38444b00ed716755c241d297216a.

* Revert "Fix issue with refreshRemoteAlbums getting shared items twice and removed incorrect isShared comment."

This reverts commit 979ce90abf22c6cd80ff06f61a08d0c03092991b.

* Added comments to explain why filters behave the way they do for getAll() albums.

---------

Co-authored-by: Tom graham <tomg@questps.com.au>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-01-16 21:24:09 -06:00
Alex
fd99bd05cf
feat(mobile): share to mechanism (#15229)
* setup ios

* chore: succesfully sent media to the app

* share from Android

* wip: navigate to share screen

* wip: UI for displaying upload candidate

* wip: logic

* wip: upload logic

* wip: up up up we got it up

* wip

* wip

* wip

* upload state

* feat: i18n

* fix: release build ios'

* feat: clear file cache

* pr feedback

* using const for checking download status

---------

Co-authored-by: Alex <alex@pop-os.localdomain>
2025-01-16 21:20:44 -06:00
Matthew Momjian
be1187bc46
chore(docs): clarify experimental network features (#15228)
* auth

* URL switch

* mobile app

* caps

* headers, app changes

* oxford comma

* Match case to other use in Immich

* add url

* asset download also causes issues
2025-01-11 22:09:54 -06:00
Mert
beb31cebed
fix(mobile): don't crash android app when video player throws exception (#15236)
update commit ref
2025-01-10 19:20:56 -06:00
Tom Graham
f9db60f25b
fix(mobile): 15072 Fix issue with boolean filters filtering out results when they shouldn't (#15208)
Fix issue with boolean filters filtering out results when they shouldn't.

Co-authored-by: Tom graham <tomg@questps.com.au>
2025-01-10 09:18:40 -06:00
Mert
2e12c46980
refactor(server): use kysely (#12857) 2025-01-09 11:15:41 -05:00
github-actions
8d836ae04f chore: version v1.124.2 2025-01-08 23:16:35 +00:00
github-actions
cc10fc15c3 chore: version v1.124.1 2025-01-08 16:16:15 +00:00
Alex
c5baf79f61
chore(mobile): post release task (#15148) 2025-01-08 11:51:08 +01:00
github-actions
840d99ed25 chore: version v1.124.0 2025-01-07 19:00:42 +00:00
Alex
61c9c14ba6
fix(mobile): mismatch language (#15141) 2025-01-07 17:02:52 +00:00
Alex
d0ec24ef08
chore(mobile): translations update (#15139)
chore(mobile): translation update
2025-01-07 16:52:25 +00:00
John Stef
c148a28a82
fix(mobile): fix text search (#14873)
* fix(mobile): fix text search

* chore(mobile): add tests for SearchPage

* fix(mobile): fix render overflow for small screens

Needed for SearchPage test to not throw overflow error

* chore(mobile): update import_rule_openapi

* styling

* preserve styling and skip a test

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-01-07 16:26:14 +00:00
Alex
c937097db4
chore(mobile): add new language locales (#15138)
chore(mobile): add new languages locale
2025-01-07 15:30:52 +00:00
Ovidijus R
a13b7b364e
feat(mobile): add ability to force view original videos (#15094) 2025-01-06 15:29:47 -05:00
waclaw66
d19a749903
fix(mobile): album tile translation and consolidation with card appereance (#15032)
fix(mobile): album tile translation and consolidation with card

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-01-02 10:19:55 -06:00
Tom Graham
5111ceffac
fix(mobile): playing a live photo causes the gallery to redraw the wrong image (#15027)
Fixed an issue where playing a motion video caused the gallery to re-render on the wrong image.

Co-authored-by: Tom graham <tomg@questps.com.au>
2025-01-01 22:46:06 -06:00
Sam Debruyn
05cea0fc69
chore(mobile): remove duplicate settingsservice (#14946)
remove duplicate settingsservice
2024-12-27 09:45:23 -06:00
Yaros
2255f3e966
feat(mobile): Modified draggable area of detail modal (#14953)
Modified draggable area of detail modal
2024-12-27 09:28:54 -06:00
Yaros
2be1cb7de2
fix(mobile): Fixed resolution format in Details (#14954)
Fixed resolution format on mobile
2024-12-27 09:20:07 -06: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 +00:00
Alex
a14735846c
chore(mobile): add timeout when reading video files (#14831) 2024-12-20 13:52:42 -06:00
Alex
b034cb1861
fix(mobile): keep empty album as selected target (#14778) 2024-12-18 11:10:29 -06:00
Alex
f58b2572e6
chore: post release tasks (#14749) 2024-12-17 14:02:07 -06:00
github-actions
fd34a914a6 chore: version v1.123.0 2024-12-17 16:00:50 +00:00
Alex
6f3b6365e5
chore(mobile): translations update (#14747)
chore(mobile): translation update
2024-12-17 15:16:22 +00:00
Alex
a2dd9622a3
fix(mobile): live photos playback (#14731) 2024-12-16 21:00:49 +00:00
Alex
c7b44bef81
fix(mobile): native dialog location (#14730) 2024-12-16 15:26:52 -05:00
Alex
9503bf479b
feat(album): album view sort order (#14648)
* feat(mobile): album view sort order

* feat: add error message

* refactor(mobile): album page (#14659)

* refactor album page

* update lint rule

* const record

* fix: updating sort order when pull to refresh

---------

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

* Move sort toggle button to bottom sheet menu

* chore: revert multiselectgrid loading status

* chore: revert multiselectgrid loading status

---------

Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com>
2024-12-16 16:11:48 +00: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 -06:00
Alex
6b0f9ec46c
chore(mobile): post release tasks (#14656) 2024-12-16 08:42:40 -06:00
Alex Sherwin
fe554c3a5b
fix(mobile): set custom headers on external url (#14707) (#14708) 2024-12-15 21:09:52 +00:00
Alex
dd9feeec45
chore(mobile): remove screen auto-dimming (#14699) 2024-12-14 14:53:15 -05:00
renovate[bot]
cc111a1fcb
fix(deps): update dependency analyzer to v7 (#14673)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-14 13:43:31 -06:00
github-actions
c52f1bae81 chore: version v1.122.3 2024-12-11 21:15:03 +00:00
Mert
3053d84e49
fix(mobile): not being able to zoom into live photos (#14608)
fix live photo zoom
2024-12-11 11:23:20 -06:00
dvbthien
11f585d0ad
refactor(mobile): refactor theme management (#14415) 2024-12-11 16:30:56 +00:00
Alex
70b4647a21
chore(mobile): post release tasks (#14603) 2024-12-10 21:55:59 +00:00
github-actions
03eb5903fe chore: version v1.122.2 2024-12-08 23:41:22 +00:00
Alex
04b311bd93
chore(mobile): disable Impeller (#14589) 2024-12-08 23:22:39 +00:00
Cotterman-b
e99edc47b7
fix(mobile): fix translations on search page (#14533)
* Update en-US.json

* Update search.page.dart
2024-12-07 10:46:19 -06:00
Alex
c02e3e2a2e
chore(mobile): post release tasks (#14520) 2024-12-06 21:04:02 -05:00
github-actions
97c1eb7289 chore: version v1.122.1 2024-12-06 13:49:14 +00:00
github-actions
37220a342a chore: version v1.122.0 2024-12-05 16:29:46 +00:00
Alex
5e662e4a93
chore(mobile): Translations update (#14493)
chore(mobile): translation update
2024-12-05 16:26:48 +00:00
Alex
055f1fc72f
feat(mobile): Auto switching server URLs (#14437) 2024-12-05 09:11:48 -06:00
shenlong
3c38851d50
feat(mobile): native_video_player (#12104)
* add native player library

* splitup the player

* stateful widget

* refactor: native_video_player

* fix: handle buffering

* turn on volume when video plays

* fix: aspect ratio

* fix: handle remote asset orientation

* refinements and fixes

fix orientation for remote assets

wip separate widget

separate video loader widget

fixed memory leak

optimized seeking, cleanup

debug context pop

use global key

back to one widget

fixed rebuild

wait for swipe animation to finish

smooth hero animation for remote videos

faster scroll animation

* clean up logging

* refactor aspect ratio calculation

* removed unnecessary import

* transitive dependencies

* fixed referencing uninitialized orientation

* use correct ref to build android

* higher res placeholder for local videos

* slightly lower delay

* await things

* fix controls when swiping between image and video

* linting

* extra smooth seeking, add comments

* chore: generate router page

* use current asset provider and loadAsset

* fix stack handling

* improved motion photo handling

* use visibility for motion videos

* error handling for async calls

* fix duplicate key error

* maybe fix duplicate key error

* increase delay for hero animation

* faster initialization for remote videos

* ensure dimensions for memory cards

* make aspect ratio logic reusable, optimizations

* refactor: move exif search from aspect ratio to orientation

* local orientation on ios is unreliable; prefer remote

* fix no audio in silent mode on ios

* increase bottom bar opacity to account for hdr

* remove unused import

* fix live photo play button not updating

* fix map marker -> galleryviewer

* remove video_player

* fix hdr playback on android

* fix looping

* remove unused dependencies

* update to latest player commit

* fix player controls hiding when video is not playing

* fix restart video

* stop showing motion video after ending when looping is disabled

* delay video initialization to avoid placeholder flicker

* faster animation

* shorter delay

* small delay for image -> video on android

* fix: lint

* hide stacked children when controls are hidden, avoid bottom bar dropping

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2024-12-04 16:03:46 -05:00
Tim Van Onckelen
292182fa7f
feat: Notification Email Templates (#13940) 2024-12-04 20:26:02 +00: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 +00:00
Alessandro Piccin
411878c0aa
fix(mobile): album most recent sorting on mobile (#13766)
* Fix album most recent sorting on mobile

* fix: format

* fix: format

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-12-04 19:53:55 +00:00
System Tester
ba71fd42da
chore(mobile): added 'corrupt asset check' translation item (#14402) 2024-12-02 12:14:12 -06:00
Alex
1bb6926b5e
chore(mobile): Add const linter (#14447) 2024-12-02 15:33:44 +00:00
System Tester
56d2309122
fix: ConnectivityResult.wifi regression (#14401) 2024-11-28 22:34:18 -06:00
Alex
b4c96a09fb
chore: follow up on auth refactoring (#14367)
* chore: follow up on auth refactoring

* remove async
2024-11-26 13:36:12 -06:00
Alex
21f14be949
chore(mobile): refactor authentication (#14322) 2024-11-26 12:43:44 -06: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 +00:00
renovate[bot]
b9e98d2706
chore(deps): update dependency flutter to v3.24.5 (#14332)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-25 04:20:00 +00:00
dvbthien
e8da6604c9
refactor(mobile): refactor to use context helpers for consistency (#14235)
refactor to use context helpers for consistency

Co-authored-by: dvbthien <dvbthien@gmail.com>
2024-11-21 09:35:58 -06:00
Jason Rasmussen
9e1e9b1fbf
refactor: rename searchMetadata to searchAssets (#14151) 2024-11-20 14:47:25 -05:00
Alex
95297cd024
chore(mobile): post release tasks (#14259) 2024-11-20 14:04:33 -05:00
github-actions
98c9ae1f7d chore: version v1.121.0 2024-11-20 16:15:53 +00:00
Alex
026482099a
chore(mobile): translations update (#14254)
chore(mobile): translation update
2024-11-20 15:32:17 +00:00
John Stef
3a2e30e30e
fix(mobile): fixes on language change (#14089)
* fix(mobile): make widgets rebuild on locale changes

This will make the make the pages to instantly refresh the correct
translated string, without the need to pop and push the settings page.

* fix(mobile): set the default intl locale

This is needed because across the app, you don't pass the context.locale
to DateFormat, so by default it uses the system's locale. This will fix
the issue without the need to refactor a lot of code.

* feat(mobile): create localeProvider

This provider can be used to refresh providers that provide UI elements
and get cached.

* fix(mobile): refresh asset providers on locale change

This is necessary to update the locale on the already evaluated
DateFormat.

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-11-19 12:09:29 -06:00
John Stef
53940f7d42
fix(mobile): make search page scrollable (#14228)
Fixes #13657
2024-11-19 17:59:26 +00:00
John Stef
bcd17c2ebe
feat(mobile): exclude locales from overpass font (#14158)
* feat(mobile): create localeProvider

This provider can be used to refresh providers that provide UI elements
and get cached.

* feat(mobile): use default font for locales not supported by Overpass

* chore(mobile): fix test

* refactor(mobile): use Locale instead of String
2024-11-19 09:36:46 -06:00
John Stef
41f138d3c8
fix(mobile): Dismissible menus (#14192)
* chore(mobile): make all search filters dismissible

* chore(mobile): make ImmichAppBarDialog dismissible

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-11-18 10:06:07 -06:00
Mert
6b5defc27b
fix(mobile): use sets in album refresh, concurrent futures (#14193)
* use sets in album sync, concurrent futures

* batch excluded asset IDs

* update test

* take advantage of sets in Recents check

* move log statement

* smaller diff
2024-11-18 09:26:23 -06:00
Mert
944ea7dbcd
fix(mobile): unnecessary rebuilds from partner share notifier (#14170)
* fix unnecessary notifications

* move equality function

* sort by id

* use same comparison for initial and later queries
2024-11-17 12:04:55 -05: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 -06:00
Mert
caf6c0996d
refactor(mobile): backup info box (#14171)
split up backup info box into separate widgets
2024-11-15 17:16:52 -05:00
Alex
33263cf9f3
fix(mobile): Android local notification failes to invoke (#14155)
* fix(mobile): local notification failed to invoke

* add proguard rules
2024-11-14 16:05:32 -06:00
Mert
11403abfbc
feat(mobile): new video slider ui (#14126) 2024-11-13 19:49:25 -05:00
John Stef
de993289ad
fix(mobile): fix logout timeout (#14104)
* fix(mobile): add timeout to logout

* chore(mobile): refactor timeout durations

* feat(mobile): add loading state to logout button

* chore(mobile): format authentication.provider.dart

* chore: format

* chore: revert settings.json change

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-11-13 17:27:49 +00:00
Alex
3dad19883d
fix(mobile): duration ui overflow (#14120)
* fix(mobile): duration ui overflow

* pr feedback
2024-11-13 09:39:21 -06:00
Mert
e1feba2198
refactor(mobile): video controls (#14086)
* refactor video controls

* inline

* make mute icon const

* move placeholder to private widget

* adjust text width, move volume button slightly right
2024-11-13 01:13:21 -05:00
Alex
a9525de356
chore(mobile): post release tasks (#14105) 2024-11-12 14:34:33 -05:00
github-actions
31a1e64b58 chore: version v1.120.2 2024-11-12 17:30:29 +00:00
Alex
6b49104d59
fix(mobile): make sure date locale is inititialized for some languages (#14035) 2024-11-09 10:40:13 -05:00
Alex
2fe6607aea
chore(mobile): post release tasks (#13989) 2024-11-07 10:27:28 -06:00
Jason Rasmussen
64831e2328
refactor: remove smart info table (#13985) 2024-11-07 11:25:10 -05:00
Alex
6053214e75
chore(mobile): update isar build (#13987) 2024-11-07 09:54:19 -06:00
github-actions
599b489f81 chore: version v1.120.1 2024-11-07 15:31:19 +00:00
Alex
b238b69689
fix(mobile): video player not playing in full size on Android (#13986) 2024-11-07 15:04:20 +00:00
Alex
cff0b95f4c
chore(mobile): post release task (#13954) 2024-11-06 17:57:45 -05:00
github-actions
f1b8a9374f chore: version v1.120.0 2024-11-06 16:17:29 +00:00
Alex
9fd425dd5c
chore(mobile): translation update (#13942) 2024-11-06 08:37:39 -06:00
Alex
b36de7d7d4
chore(mobile): upgrade gradle (#13901)
* chore(mobile): upgrade gradle

* update photo_manager

* migrate from kapt to ksp

pumps kotlin and other dependency version to fix build issues

* increase java heap size

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-11-05 10:34:24 -06:00
Yashraj Jain
b95bc32310
fix(mobile): do not removed not backup asset when selecting the correspond options (#13256)
* fixed the local ids selecting issue

* code: updated impl inside deleteLocalOnlyAssets

* fix: used png instead of jpg to maintain picture quality

* Revert "fix: used png instead of jpg to maintain picture quality"

This reverts commit 04f2ed54e40b454a057f97872836d71af50b06de.

* fix: update logic from code-review perspective

* refractor (mobile) : Dart fix applied

* fix (mobile) : Updated multi grid as per requirement

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-11-01 09:03:03 -05:00
Mert
b9096f3e99
feat(server): use tonemapx for software tone-mapping (#13785) 2024-10-31 20:48:23 -04:00
Alex
5ac236d6fd
chore(mobile): update flutter_web_auth (#13863) 2024-10-31 17:35:01 -05:00
renovate[bot]
458f2acf42
chore(deps): update flutter (#13455)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-31 17:53:26 +00:00
Alex
343cdcfeed
fix(mobile): not throwing error when cannot parse orientation value (#13853)
* fix(mobile): not throw when error in parsing the orientation

* fix(mobile): not throw when error in parsing the orientation

* linting
2024-10-31 09:37:02 -05:00
Zack Pollard
7d933ec97a
feat: built-in automatic database backups (#13773) 2024-10-31 11:29:42 +00:00
dvbthien
30d42e571c
fix(mobile): Reapply thumbnail image improvements and fix issue #13804 (#13835)
fix issue #13804

Co-authored-by: dvbthien <dvbthien@gmail.com>
2024-10-30 14:40:04 -05:00
Alex
318ab756cb
fix(mobile): search page (#13833)
* fix(mobile): search page minor problems

* fix: flashing between search

* restore search size

* remove print statement

* linting
2024-10-30 14:27:13 -05:00
Alex
a39a1cfffa
fix(mobile): thumbnail not filled area on tablet (#13808) 2024-10-29 16:39:14 +00:00
Alex
143ee0bc34
fix(mobile): Revert thumbnail image ui improvements (#13655) (#13806)
Revert "chore(mobile): thumbnail image ui improvements  (#13655)"

This reverts commit 16f2364e93.
2024-10-29 15:38:20 +00:00
github-actions
00dd9419a5 chore: version v1.119.1 2024-10-29 13:33:36 +00:00
Alex
044c3e93f8
chore(mobile): post release task (#13779) 2024-10-28 16:12:35 +00:00
github-actions
8449e78c8f chore: version v1.119.0 2024-10-28 14:41:08 +00:00
dvbthien
16f2364e93
chore(mobile): thumbnail image ui improvements (#13655)
improve ui for thumbnail image

Co-authored-by: dvbthien <dvbthien@gmail.com>
2024-10-21 16:36:15 -05:00
Alex
791c37d2cc
chore(mobile): proper new UI layout for tablet (#13650)
* chore(mobile): better tablet UI

* fix spacing when trash is disable

* better layout for library page

* Removed navigation rail

* removed navigation rail reference

* correct padding

* fixed people page
2024-10-21 13:39:18 -05:00
dvbthien
ee0130a58b
fix(mobile): Fix minor issues with downloading assets (#13609)
* improve download asset

* fix: download motion photos on ios

---------

Co-authored-by: dvbthien <dvbthien@gmail.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-10-20 12:56:02 -05:00
pyorot
b1149881bd
feat(server): add pcm_s16le accepted audio codec (#13418) 2024-10-18 08:26:16 -04:00
github-actions
e8015dc7d7 chore: version v1.118.2 2024-10-16 18:44:39 +00:00
github-actions
edd7dfb5d8 chore: version v1.118.1 2024-10-15 20:44:10 +00:00
renovate[bot]
0a3bfd5cc3
fix(deps): update dependency device_info_plus to v11 (#13427) 2024-10-15 14:41:42 -04:00
github-actions
8f69d9d0ec chore: version v1.118.0 2024-10-15 10:48:53 +00:00
Alex
22a2bfc812
chore(mobile): Translations update (#13423)
chore(mobile): translation update
2024-10-14 11:06:24 -04:00
Alex
452ce73e7f
fix(mobile): more efficient loading local image on ios (#13426) 2024-10-14 15:52:58 +07:00
Alex
f59b813ffe
chore(mobile): search page minor enhancements (#13403)
* chore(mobile): search page retouched

* add placeholder photos

* remove unused page

* focus the search input when tapping on the search controller button

* detail fixed

* remove print statements

* disable scrolling of empty content
2024-10-14 09:50:07 +07:00
Alex
ee461e5910
chore(mobile): remove unused translation keys (#13335) 2024-10-10 16:53:33 +07:00
Alex
4ce49e4666
chore(mobile): clean up (#13338) 2024-10-10 16:53:20 +07:00
Yashraj Jain
53358c768c
fix(mobile): trash sorting order (#13299)
* fix: trash sorting order

* updated after comparing with web
2024-10-10 08:52:12 +00:00
Alex
e9813315e7
feat(mobile): new mobile UI (#12582) 2024-10-10 15:44:14 +07:00
rgomulin
057510af0a
chore(mobile): added 'ignore_icloud' translation item (#12788)
impr: added 'ignore_icloud' translation item
2024-10-09 16:06:16 +00:00
dependabot[bot]
e1540c8dfd
chore(deps): bump rexml from 3.2.8 to 3.3.6 in /mobile/ios (#12621)
Bumps [rexml](https://github.com/ruby/rexml) from 3.2.8 to 3.3.6.
- [Release notes](https://github.com/ruby/rexml/releases)
- [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/rexml/compare/v3.2.8...v3.3.6)

---
updated-dependencies:
- dependency-name: rexml
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-09 22:59:24 +07:00
Alex
6f86c2f372
chore(mobile): use sdk to for ping endpoint (#13218) 2024-10-07 08:45:23 +07:00
Yuvraj P
52c700e9b0
feat(mobile): Adding filters feature to mobile image editor (#13174)
* Adding filters button

* Filter selection page

* routing

* Localization

* Add Filters to this page

* More Filters yay!

* Final filters

* Logic for saving the image

* Fixes

* Formmating

* Finalizing, formating, and fixes

* Layout fix

* chores

* Chore: Static code analysis

* fix translation file

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-10-06 13:51:11 +07:00
Fynn Petersen-Frey
0f3b8b67fe
refactor(mobile): assert lists are sorted for diffing (#13180) 2024-10-05 08:02:34 +07:00
Jason Rasmussen
7ee0221c8e
chore: remove deprecated endpoint (#13190) 2024-10-04 15:10:13 -04: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 -04:00
renovate[bot]
0454863c1e
fix(deps): update dependency connectivity_plus to v6 (#13115)
* fix(deps): update dependency connectivity_plus to v6

* update api

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-10-03 03:57:50 +00:00
Alex
432bcbbd1a
chore(mobile): post release task (#13136) 2024-10-03 10:19:14 +07:00
renovate[bot]
1700de909e
fix(deps): update dependency device_info_plus to v10 (#13117)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-03 10:16:59 +07:00
Hannes R. Brunsch
35bb2e786f
fix(mobile): respect orientation on displaying asset dimensions (#13129)
* fix(mobile): respect orientation on displaying asset dimensions

* lint

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-10-03 03:02:38 +00:00
github-actions
6b8462402b chore: version v1.117.0 2024-10-03 01:59:28 +00:00
Fynn Petersen-Frey
f463bd18ef
fix(mobile): device album sync (#13116) 2024-10-02 13:09:34 +00:00
renovate[bot]
e5457ac8ee
chore(deps): update dependency flutter_launcher_icons to ^0.14.0 (#13072)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-02 15:04:47 +07:00
Jason Rasmussen
4d20b11f25
feat: track upgrade history (#13097) 2024-10-01 13:33:58 -04:00
Zack Pollard
3eccff4306
feat: support and feedback modal with third party support (#13056) 2024-10-01 11:15:31 +01:00
renovate[bot]
ecb5cb00eb
chore(deps): update dependency flutter_lints to v5 (#13077)
* chore(deps): update dependency flutter_lints to v5

* lint

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-10-01 04:10:05 +00:00
renovate[bot]
d772cc6c6a
chore(deps): update dependency lints to v5 (#13059)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-01 08:23:15 +07:00
Alex
fe33732958
chore(mobile): update photo_manager 3.5.0 (#13050) 2024-10-01 08:18:13 +07:00
Fynn Petersen-Frey
15c04d3056
refactor(mobile): DB repository for asset, backup, sync service (#12953)
* refactor(mobile): DB repository for asset, backup, sync service

* review feedback

* fix bug found by Alex

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-09-30 21:37:30 +07:00
Alex
95c67949f7
fix(mobile): share to error (#13044) 2024-09-30 20:51:47 +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 -04:00
Alex
fa9bb8074c
feat(mobile): enhance download operations (#12973)
* add packages

* create download task

* show progress

* save video and image

* show progress info

* live photo wip

* download and link live photos

* Update list of assets

* wip

* correct progress

* add state to download

* revert unncessary change

* repository pattern

* translation

* remove unused code

* update method call from repository

* remove unused variable

* handle multiple livephotos download

* remove logging statement

* lint

* not removing all records
2024-09-29 08:22:02 +00: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 +00:00
github-actions
8bbcd5c31e chore: version v1.116.2 2024-09-27 18:17:49 +00:00
Alex
4ed1517e60
chore(mobile): post release task (#12991) 2024-09-27 14:13:24 -04:00
github-actions
7c15e11efc chore: version v1.116.1 2024-09-27 15:32:16 +00:00
Alex
03aa346020
fix(mobile): incorrect filename is retrieved during upload (#12990)
* fix(mobile): incorrect filename is retrieve during upload

* use the same convention to get local id

* revert previous change

* pr feedback
2024-09-27 22:28:31 +07:00
Alex
971ba63447
fix(mobile): uninitialize provider causes unable to logging in (#12970)
fix(mobile): use uninitialize provider
2024-09-27 09:40:55 +07:00
Lauritz Tieste
42ad3e6bb0
fix(mobile): navigation panel overlaps with right rotate (#12950)
fix: navigation panel overlaps with right rotate
2024-09-27 08:40:07 +07:00
Alex
a6e703ed6b
chore(mobile): post release task (#12955) 2024-09-27 08:11:22 +07:00
github-actions
60679a6369 chore: version v1.116.0 2024-09-26 14:51:27 +00:00
Alex
63ad3c8373
chore(mobile): invalidate api repository for new sign in instance (#12940)
* chore(mobile): invalidate api repository for new sign in instasnce

* add comments
2024-09-26 19:45:39 +07:00
Jonathan Jogenfors
b2f2be3485
refactor(server): library syncing (#12220)
* refactor: library scanning

fix tests

remove offline files step

cleanup library service

improve tests

cleanup tests

add db migration

fix e2e

cleanup openapi

fix tests

fix tests

update docs

update docs

update mobile code

fix formatting

don't remove assets from library with invalid import path

use trash for offline files

add migration

simplify scan endpoint

cleanup library panel

fix library tests

e2e lint

fix e2e

trash e2e

fix lint

add asset trash tests

add more tests

ensure thumbs are generated

cleanup svelte

cleanup queue names

fix tests

fix lint

add warning due to trash

fix trash tests

fix lint

fix tests

Admin message for offline asset

fix comments

Update web/src/lib/components/asset-viewer/asset-viewer-nav-bar.svelte

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

add permission to library scan endpoint

revert asset interface sort

add trash reason to shared link stub

improve path view in offline

update docs

improve trash performance

fix comments

remove stray comment

* refactor: add back isOffline and remove trashReason from asset, change sync job flow

* chore(server): drop coverage to 80% for functions

* chore: rebase and generated files

---------

Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2024-09-25 18:26:19 +01:00
Jason Rasmussen
005528ab5e
fix(server): http error parsing on endpoints without a default response (#12927) 2024-09-25 12:05:03 -04:00
Fynn Petersen-Frey
202082f62e
refactor(mobile): use repositories in a number of services (#12891)
* UserService
* PartnerService
* HashService
* MemoryService
* PersonService
* SearchService
* StackService
2024-09-24 12:50:21 +00:00
Fynn Petersen-Frey
e0fa3cdbc7
refactor(mobile): more repositories (#12879)
* ExifInfoRepository
 * ActivityApiRepository
 * initial AssetApiRepository
2024-09-24 08:24:48 +02:00
Daniel Dietzler
ec32a9e610
fix: set min values for face detection to reasonable values (#12877)
fix: set min values for face detection to >0
2024-09-23 22:03:59 -04:00
Zack Pollard
bcd416477b
feat: serve map tile styles from tiles.immich.cloud (#12858)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-09-23 20:30:23 +00:00
Daniel Dietzler
e41785b1a1
fix: open api (#12878) 2024-09-23 20:08:01 +00:00
Jason Rasmussen
ad33ce5938
refactor(mobile): open api dto upgrade (#12793) 2024-09-23 15:41:41 -04:00
jschwalbe
9f8a7e0bea
feat(server): sort assets randomly from the API 'api/search/metadata' endpoint by including 'order': 'rand' in the API call. (#12741)
feat(server): search metadata random sort order

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2024-09-23 12:09:26 -04:00
Fynn Petersen-Frey
39ea73d654
chore(mobile): restrict isar use via CI checks (#12840) 2024-09-22 09:24:08 -04:00
renovate[bot]
7c1ea2dc73
chore(deps): update dependency flutter to v3.24.3 (#11738)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-22 07:29:30 +07:00
Alex
14169d310a
fix(mobile): fix uncaught error in getting file cause hashing procses to be aborted entirely (#12826)
* fix(mobile): fix uncaught error in getting file cause hashing procses to be aborted entirely

* log error
2024-09-21 00:29:07 +00:00
Shubham
af70111645
fix(mobile): Issue Selecting Many Albuns for Backup (#12784)
* Update backup.provider.dart

* Revert "Update backup.provider.dart"

This reverts commit ac2b7acef9c4390a61a30884a05589723f572403.

* Reapply "Update backup.provider.dart"

This reverts commit c9fe934b3bde472a579b465fbd3b21448b819930.

* dart formatting
2024-09-21 06:01:26 +07:00
Fynn Petersen-Frey
3868736799
refactor(mobile): album api repository for album service (#12791)
* refactor(mobile): album api repository for album service
2024-09-20 13:32:37 +00:00
Fynn Petersen-Frey
0ceb773865
fix(mobile): profileChangedAt compatiblity with old servers (#12774)
* fix(mobile): profileChangedAt compatiblity with old servers

* chore: add breaks

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2024-09-18 15:59:30 +00:00
Fynn Petersen-Frey
6995cc2b38
refactor(mobile): encapsulate most access to photomanager in repository (#12754)
* refactor(mobile): encapsulate most access to photomanager in repository
2024-09-18 17:15:52 +02:00
Jason Rasmussen
6740c67ed8
fix: empty and restore over 1,000 items (#12751) 2024-09-18 09:57:52 -04:00
martin
c468da589a
fix: update the profile picture in the navigation-bar (#12723)
* fix: update the profile picture in the navigation-bar

* chore: clean up

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2024-09-17 01:48:15 +00:00
Jason Rasmussen
b74b20824a
feat: tag cleanup job (#12654) 2024-09-16 16:49:12 -04:00
Fynn Petersen-Frey
4a1ff6abce
refactor(mobile): repositories for album service (#12701)
* refactor(mobile): repositories for album service

* review feedback, first service unit test
2024-09-16 16:26:14 -04:00
Tom Vincent
4735db8e79
chore(mobile): add isar lock file (#12705) 2024-09-15 19:20:09 +00:00
aryiu
e6bc831c97
fix(mobile): fix mn-MN.json file name (#12558)
* Update and rename ca.json to ca-CA.json

* Add mn-MN.json

* Delete mobile/assets/i18n/mn.json

* Update mn-MN.json

* Update localizely.yml
2024-09-15 16:11:52 +00:00
Alex
cdbc673a59
chore(mobile): post release task (#12615) 2024-09-13 13:25:43 +01:00
github-actions
230eff4e1a chore: version v1.115.0 2024-09-12 15:37:59 +00:00
Jason Rasmussen
01c7adc24d
feat(web): unlink live photos (#12574)
feat(web): unlink live photo
2024-09-11 16:26:29 -04:00
Jason Rasmussen
27050af57b
feat(web): manually link live photos (#12514)
feat(web,server): manually link live photos
2024-09-10 08:51:11 -04:00
Jonathan Simon
f2f6713a53
fix: typo in es-US localization (#12510)
Fix typo in es-US localization

search_page_motion_photos string should be 'Fotos en movimiento' not 'Fotos en .ovimiento'
2024-09-09 23:07:56 -05:00
Jason Rasmussen
d39917a4db
fix(web): show trash indicator (#12521) 2024-09-09 16:03:17 -04:00
Alex
9323b69c61
fix(mobile): scroll thumb is hidden behind the tab navigation bar (#12512)
* fix(mobile): scroll thumb is hidden behind the tab navigation bar

* better variable names

* fix rounding error
2024-09-09 19:15:47 +00:00
Lauritz Tieste
7b2f98a433
feat(mobile): Add dismiss action on app_bar_dialog (#12511)
Add dismiss action on app_bar_dialog
2024-09-09 15:53:44 +00:00
Alex
00a5da0ebc
chore(mobile): post release task (#12398)
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
2024-09-07 13:26:18 -04:00
github-actions
068904f746 chore: version v1.114.0 2024-09-06 13:49:08 +00:00
Alex
5d8052202e
chore(mobile): Translations update (#12392)
chore(mobile): translation update
2024-09-06 13:30:26 +00:00
Alex
77904a54d8
fix(mobile): download asset to Camera folder on Android (#12355)
* fix(mobile): download asset to Camera folder on Android

* remove unused import

* better message

* linting
2024-09-05 17:33:55 +00:00
Alex
0148005931
chore: upgrade openapi generator version (#12358) 2024-09-05 11:31:48 -05:00
Alex
f26d47c8d9
fix(mobile): background task crashing on Android (#12314) 2024-09-04 22:39:50 -05:00
BugFest
77e6a6d78b
feat(server): Import face regions from metadata (#6455)
* feat: faces-from-metadata - Import face regions from metadata

Implements immich-app#1692.
- OpenAPI spec changes to accomodate metadata face import configs. New settings to enable the feature.
- Updates admin UI compoments
- ML faces detection/recognition & Exif/Metadata faces compatibility

Signed-off-by: BugFest <bugfest.dev@pm.me>

* chore(web): remove unused file confirm-enable-import-faces

* chore(web): format metadata-settings

* fix(server): faces-from-metadata tests and format

* fix(server): code refinements, nullable face asset sourceType

* fix(server): Add RegionInfo to ImmichTags interface

* fix(server): deleteAllFaces sourceType param can be undefined

* fix(server): exiftool-vendored 27.0.0 moves readArgs into ExifToolOptions

* fix(server): rename isImportFacesFromMetadataEnabled to isFaceImportEnabled

* fix(server): simplify sourceType conditional

* fix(server): small fixes

* fix(server): handling sourceType

* fix(server): sourceType enum

* fix(server): refactor metadata applyTaggedFaces

* fix(server): create/update signature changes

* fix(server): reduce computational cost of Person.getManyByName

* fix(server): use faceList instead of faceSet

* fix(server): Skip regions without Name defined

* fix(mobile): Update open-api (face assets feature changes)

* fix(server): Face-Person reconciliation with map/index

* fix(server): tags.RegionInfo.AppliedToDimensions must be defined to process face-region

* fix(server): fix shared-link.service.ts format

* fix(mobile): Update open-api after branch update

* simplify

* fix(server): minor fixes

* fix(server): person create/update methods type enforcement

* fix(server): style fixes

* fix(server): remove unused metadata code

* fix(server): metadata faces unit tests

* fix(server): top level config metadata category

* fix(server): rename upsertFaces to replaceFaces

* fix(server): remove sourceType when unnecessary

* fix(server): sourceType as ENUM

* fix(server): format fixes

* fix(server): fix tests after sourceType ENUM change

* fix(server): remove unnecessary JobItem cast

* fix(server): fix asset enum imports

* fix(open-api): add metadata config

* fix(mobile): update open-api after metadata open-api spec changes

* fix(web): update web/api metadata config

* fix(server): remove duplicated sourceType def

* fix(server): update generated sql queries

* fix(e2e): tests for metadata face import feature

* fix(web): Fix check:typescript

* fix(e2e): update subproject ref

* fix(server): revert format changes to pass format checks after ci

* fix(mobile): update open-api

* fix(server,movile,open-api,mobile): sourceType as DB data type

* fix(e2e): upload face asset after enabling metadata face import

* fix(web): simplify metadata admin settings and i18n keys

* Update person.repository.ts

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

* fix(server): asset_faces.sourceType column not nullable

* fix(server): simplified syntax

* fix(e2e): use SDK for everything except the endpoint being tested

* fix(e2e): fix test format

* chore: clean up

* chore: clean up

* chore: update e2e/test-assets

---------

Signed-off-by: BugFest <bugfest.dev@pm.me>
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
2024-09-04 18:23:58 -04:00
Alex
d685bc1f34
chore(mobile): handle sync album on duplicated (#12173)
* chore(mobile): handle sync album on duplicated

* remove check for duplicate in manual sync

* linting
2024-09-04 10:39:31 -05:00
Alex
5d6716d265
chore(mobile): post release task (#12268) 2024-09-03 18:32:20 +01:00
github-actions
48da4c9317 chore: version v1.113.1 2024-09-03 14:12:24 +00:00
Yun Jiang
f46abbb5b5
fix(mobile): set SSL options properly in background backup process (#11870) (#12206)
Co-authored-by: Yun Jiang <yjiang@pulsesecure.net>
2024-09-02 19:42:51 +00:00
Ivan Mondragon
174de979db
fix(mobile): Android back gesture closes app (#12221)
fix(mobile): Android back gesture closes app, disable predictive back gestures on Android

Co-authored-by: Ivan Mondragon <ivanmondragon42@gmail.com>
2024-09-02 14:40:11 -05:00
Alex
40327ad987
chore(mobile): post release tasks (#12157)
* sent to reviewer

* sent to reviewer

* update to app store

* update to app store
2024-08-30 16:35:06 -05:00
github-actions
cc88cbb456 chore: version v1.113.0 2024-08-30 17:16:21 +00:00
Jason Rasmussen
9b1a985d29
fix(server): tag upsert (#12141) 2024-08-30 12:44:24 -04:00
Alex
1736887f96
chore(mobile): translations update (#12144)
chore(mobile): translation update
2024-08-30 12:06:25 -04:00
Alex
b3b599e071
chore(server): deprecate resized property (#12143)
* chore: add dummy resized value for release

* openapi

* add deprecation life cycle info

* use correct default value
2024-08-30 11:01:50 -05:00
Alex
fa9b2219f8
chore(mobile): disable Impeller on Android (#12130)
chore(mobile): disable Impeller
2024-08-29 23:41:07 -05:00
Alex
ebecb60f39
feat: user's features preferences (#12099)
* feat: metadata in UserPreference

* feat: web metadata settings

* feat: web metadata settings

* fix: typo

* patch openapi

* fix: missing translation key

* new organization of preference strucutre

* feature settings on web

* localization

* added and used feature settings

* add default value to response dto

* patch openapi

* format en.json file

* implement helper method

* use tags preference logic

* Fix logic bug and add tests

* fix preference can be null in detail panel
2024-08-29 14:29:04 -05:00
Alex
9bfaa525db
fix(mobile): long waiting time for login request when server is unreachable (#12100)
* fix(mobile): long waiting time for login request when server is unreachable

* lint

* increase timeout duration
2024-08-29 13:46:47 -05:00
Jason Rasmussen
d08a20bd57
feat: tags (#11980)
* feat: tags

* fix: folder tree icons

* navigate to tag from detail panel

* delete tag

* Tag position and add tag button

* Tag asset in detail panel

* refactor form

* feat: navigate to tag page from clicking on a tag

* feat: delete tags from the tag page

* refactor: moving tag section in detail panel and add + tag button

* feat: tag asset action in detail panel

* refactor add tag form

* fdisable add tag button when there is no selection

* feat: tag bulk endpoint

* feat: tag colors

* chore: clean up

* chore: unit tests

* feat: write tags to sidecar

* Remove tag and auto focus on tag creation form opened

* chore: regenerate migration

* chore: linting

* add color picker to tag edit form

* fix: force render tags timeline on navigating back from asset viewer

* feat: read tags from keywords

* chore: clean up

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-08-29 12:14:03 -04:00
src
682adaa334
fix(mobile): allow create empty non-shared albums, add proper button colors (#12103)
* Add proper colors to create album button
Allow creation of empty albums with names, or non-empty albums without names

* Add proper colors to create album button
Allow creation of empty albums with names, or non-empty albums without names

* Small changes

* Revert change

* Simplify logic

* lint

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-08-29 15:57:42 +00: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
Yuvraj P
3e970bc2d3
fix(mobile): Changes in the UI for the image editor pages (#12018)
* Ui enchancements and fixes

* Reruning the github review thing

* conflicts fix, apparently

* conflicts fix, apparently

* Fixed edit.page.dart

* Fixed crop page; localization etc

* Updated es-US.json; for Localization

* Formatting

* Changing the es-US.json back

* Update en-US.json

* localization

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-08-27 16:06:16 +00:00
Alex
6b6d2a6621
feat(mobile): preserve mobile album info on upload (#11965)
* curating assets with albums to upload

* sorting for background backup

* background upload works

* transform fields string array to javascript array

* send json array

* generate sql

* refactor upload callback

* remove albums info from upload payload

* mechanism to create album on album selection

* album creation

* Sync to upload album

* Remove unused service

* unify name changes

* Add mechanism to sync uploaded assets to albums

* Put add to album operation after updating the UI state

* clean up

* background album sync

* add to album in background context

* remove add to album in callback

* refactor

* refactor

* refactor

* fix: make sure all selected albums are selected for building upload candidate

* clean up

* add manual sync button

* lint

* revert server changes

* pr feedback

* revert time filtering

* const

* sync album on manual upload

* linting

* pr feedback and proper time filtering

* wording
2024-08-26 13:21:19 -05:00
Alex
e457d8d62e
chore(mobile): patch download > includeEmbeddedVideos user preferences (#11910)
* chore(mobile): patch download > includeEmbeddedVideos user preferences

* correct patch
2024-08-25 05:09:37 +00:00
Christopher Makarem
b41af65997
fix: align camera model drop down behavior with other drop downs on web and mobile (#11951)
* fix(web): align search filter behavior to show all camera models

* fix(mobile): align search filter behavior to clear camera model when make is set

* (mobile) correctly clear the model controller

* fix(mobile) re-add text controller to dropdown

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-08-25 05:00:15 +00:00
Yuvraj P
843345df4f
fix(mobile): Fix for incorrectly naming edited files and structure change (#11741)
* Fix null name

* Fix null name and Fix button

* Remove extension correctly

* Refactoring the code and formatting

* formatting

* Fix for the extension name
2024-08-24 15:30:31 -05:00
Jason Rasmussen
7fbf50a75e
fix: remove asset.resized (#11983)
fix: remove resized
2024-08-22 23:24:49 -04:00
David Kerr
07538299cf
feat: folder view (#11880)
* feat: folder view poc

* fix(folder-view): ui modifications

* fix(folder-view): improves utility return types

* fix(folder-view): update getAssetsByOriginalPath

Endpoint now only returns direct children of the path instead of all images in all subfolders.  Functions renamed and scoped to "folder", endpoints renamed

* fix(folder-view): improve typing

* fix(folder-view): replaces css with tailwind

* fix(folder-view): includes folders in main panel

* feat(folder-view): folder cache implementation

* fix(folder-view): can now search for absolute paths

* fix(folder-view): sets default sort to alphabetical by filename

* refactor/styling the browser view

* double click to navigate

* folder tree

* use correct side bar icon

* styling when selected

* correct open icon

* folder layout

* return assetReponseDto

* it's alive

* update new api

* more styling for folder tree

* use query params and path viewer

* use arrow up left for parent folder backward navigation

* use arrow up left for parent folder backward navigation

* encode URL

* handle long folder name

* refactor to the view controller

* remove unused code

* clear cache when logout

* cleaning up

* cleaning up web

* clean as new

* clean as new

* pr feedback + show asset name

* add tests

* add tests

* remove generated file

* lint

* revert docker-compose.dev file

* Update server/src/services/view.service.ts

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

* Update server/src/services/view.service.ts

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

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
2024-08-21 13:49:37 -05:00
Jason Rasmussen
3be1aaaaa4
refactor(server): controller cleanup (#11923)
chore(server): controller cleanup
2024-08-20 12:50:14 +00:00
Jason Rasmussen
ef9a06be5c
fix(server): album statistics endpoint (#11924) 2024-08-20 07:50:36 -04:00
Jason Rasmussen
8338657eaa
refactor(server): stacks (#11453)
* refactor: stacks

* mobile: get it built

* chore: feedback

* fix: sync and duplicates

* mobile: remove old stack reference

* chore: add primary asset id

* revert change to asset entity

* mobile: refactor mobile api

* mobile: sync stack info after creating stack

* mobile: update timeline after deleting stack

* server: update asset updatedAt when stack is deleted

* mobile: simplify action

* mobile: rename to match dto property

* fix: web test

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-08-19 12:37:15 -05:00
Alex
bc31b7c06c
feat(mobile): memories lane with the new CarouselView (#11892)
* feat(mobile): memories lane with the new CarouselView

* tuning

* tuning
2024-08-18 21:27:19 -05:00
Karthik Raja K
0261f79c72
fix(mobile): show correct notification icon for android (#11863) 2024-08-17 07:03:10 +00:00
Jason Rasmussen
f230b3aa42
feat(server): granular permissions for api keys (#11824)
feat(server): api auth permissions
2024-08-16 09:48:43 -04:00
waclaw66
a372b56d44
fix(mobile): download translation (#11838)
fix: download translation
2024-08-16 08:19:05 -05:00
Saschl
1c754b60dc
chore(mobile): only enable wakelock when backup is running (#11849)
chore: only enable wakelock when backup is running
2024-08-16 08:08:21 -05:00
Jason Rasmussen
32c05ea950
feat(server): do not automatically download android motion videos (#11774)
feat(server): do not automatically download embedded android motion videos
2024-08-15 20:06:16 +00:00
Alex
ed6971222c
chore(mobile): Flutter 3.24 (#11633)
* chore(mobile): Flutter 3.24

* fix lint

* fix rendering issues that lead to log get filled with error messages

* linting

* merge main

* fix isar prod build Android

* fix mismatch icon offset
2024-08-15 14:53:37 -05:00
Alex
00023e387f
feat(mobile): enable Impeller rendering engine on Android (#11831) 2024-08-15 14:12:56 -05:00
Alex
e51b581f6e
fix(mobile): correct native package naming convention (#11826) 2024-08-15 14:10:13 -05:00
Alex
3ab7438036
chore(mobile): post release task (#11791) 2024-08-15 12:38:02 -05:00
Alex
49610de4b3
chore(mobile): update target SDK version (#11719)
* chore(mobile): update target SDK version

* background service

* remove print statements

* remove extra line

* format kotlin

* Correct permission
2024-08-15 11:36:43 -05:00
Alex The Bot
f7bfde6a32 Version v1.112.1 2024-08-15 00:00:22 +00:00
Alex
7d5f07d1c7
fix(mobile): android always prompts permission when accessing backup page (#11790)
Android always prompt permission
2024-08-14 18:55:52 -05:00
Alex
7d888106ed
fix(mobile): load original (#11786)
* fix(mobile): load original

* revert change to format
2024-08-14 14:52:19 -05:00
Alex
9e21f254cd
chore(mobile): post release task (#11776) 2024-08-14 13:50:35 -05:00
Alex The Bot
228a7710e6 Version v1.112.0 2024-08-14 15:51:18 +00:00
Alex
8014b0f86d
chore(mobile): Translations update (#11771)
chore(mobile): translation update
2024-08-14 10:29:49 -05:00
waclaw66
e934e368b3
fix(mobile): trash translations (#11761)
trash translations
2024-08-14 08:21:59 -05:00
Alex
5ec407b57c
chore(mobile): properly patch openapi with custom response dto (#11753) 2024-08-13 14:39:25 -05:00
Christoph Suter
f33dbdfe9a
feat(web): add Exif-Rating (#11580)
* Add Exif-Rating

* Integrate star rating as own component

* Add e2e tests for rating and validation

* Rename component and async handleChangeRating

* Display rating can be enabled in app settings

* Correct i18n reference

Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com>

* Star rating: change from slider to buttons

* Star rating for clarity

* Design updates.

* Renaming and code optimization

* chore: clean up

* chore: e2e formatting

* light mode border and default value

---------

Co-authored-by: Christoph Suter <christoph@suter-burri.ch>
Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com>
Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com>
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-08-09 17:45:52 +00:00
Saschl
b1587a5dee
feat(mobile): darken screen on backup page (#11623)
* feat: keep screen active on backup

* show dialog

* improve dialog and use shared timer

* get rid of confirmation dialog

* fix timer logic

* fix: set timeout to 60 seconds

* fix: revert unwanted change

* fix: properly hide status bar

* remove unwanted change

* fix: properly restore status bar when waking up

* clean up

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-08-09 16:39:33 +00:00
Alex
501485d0b1
fix(mobile): incorrect remove action from the album assets detail view (#11671)
* fix(mobile): incorrect remove action from the album assets detail view

* better data structure
2024-08-09 09:51:08 -05:00
Alex
d346985457
chore(mobile): refactor detail panel (#11662)
* date time component

* rename to info_sheet

* simplify map info

* Edit datetime sheet

* fix janking when scroll on info sheet

* Location refactor

* refactor name

* Update date time after editing

* localize rebuild to smaller component

* restore advanced bottom sheet

* reassign EXIF back to local database

* remove print statements
2024-08-09 13:43:47 +00:00
Alex
720b9a286e
chore(mobile): update other dependencies (#11641) 2024-08-07 14:09:56 -05:00
Alex
d93ccb1669
chore(mobile): update maplibre_gl dep (#11640) 2024-08-07 13:47:40 -05:00
Alex
c34fc4f2d1
fix(mobile): iOS crashing when download iCloud content (#11639) 2024-08-07 13:09:15 -05:00
Saschl
745e1b003d
feat(mobile): enable wakelock on backup page (#11621) 2024-08-06 17:13:11 -05:00
Alex
1dae622dbc
chore(mobile): minor styling fix (#11619) 2024-08-06 14:39:07 -05:00
renovate[bot]
8ca24f0ef2
fix(deps): update dependency auto_route to v9 (#11566)
* fix(deps): update dependency auto_route to v9

* fix dep conflict

* linting

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-08-06 12:50:20 -05:00
renovate[bot]
f679021f0e
fix(deps): update dependency share_plus to v10 (#11550)
* fix(deps): update dependency share_plus to v10

* resolve dep conflict

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-08-06 17:24:55 +00:00
Alex
f040c9fb38
chore(server): remove get person asset limit (#11597)
* chore(server): remover get person asset limit

* sql

* remove getPersonAsset endpoint

* remove getPersonAsset endpoint

* use search endpoint to get people

* fix: server test

* mobile linter

* fix: server test

* remove debuglog

* deprecated endpoint

* change page size on mobile

* revert max size

* fix test
2024-08-06 16:22:13 +00:00
Pruthvi Bugidi
0eacdf93eb
feat(mobile): add support for material themes (#11560)
* feat(mobile): add support for material themes

Added support for custom theming and updated all elements accordingly.

* fix(mobile): Restored immich brand colors to default theme

* fix(mobile): make ListTile titles bold in settings main page

* feat(mobile): update bottom nav and appbar colors

* small tweaks

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-08-06 14:20:27 +00:00
Alex
c83df2686a
fix(mobile): autofill (#11591) 2024-08-05 12:02:31 -05:00
Yuvraj P
f0677735fd
fix(mobile): Naming fix for the edited file (#11503) 2024-08-04 23:48:02 -05:00
Justin Forseth
d3a5490e71
feat(server): search unknown place (#10866)
* Allow submission of null country

* Update searchAssetBuilder to handle nulls

andWhere({country:null}) produces `"exifInfo"."country" = NULL`. We want
`"exifInfo"."country" IS NULL`, so we have to treat NULL as a special
case

* Allow null country in frontend

* Make the query code a bit more straightforward

* Remove unused brackets import

* Remove log message

* Don't change whitespace for no reason

* Fix prettier style issue

* Update search.dto.ts validators per @jrasm91's recommendation

* Update api types

* Combine null country and state into one guard clause

* chore: clean up

* chore: add e2e for null/empty city, state, country search

* refactor: server returns suggestion for null values

* chore: clean up

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
2024-08-02 03:27:40 +00:00
Yuvraj P
01f8b7e458
fix(mobile): Crop presets break crop rectangle #11462 (#11467)
Fix Issue 11464
2024-07-31 12:19:19 -05:00
Michel Heusschen
b73f7fe16f
refactor: deduplicate MemoryType and ReactionType enums (#11479)
* refactor: deduplicate memorytype and reactiontype enums

* fix mobile
2024-07-31 12:08:31 -05:00
Alex
8ee8450d18
chore(mobile): post release task (#11456) 2024-07-30 21:41:10 -05:00
Alex The Bot
919fd7d41f Version v1.111.0 2024-07-30 19:06:39 +00:00
Alex
c2fdb6aab8
chores(mobile): Translations update (#11454)
chore(mobile): translation update
2024-07-30 14:03:04 -05:00
Alex
17c3e8e8bf
fix(mobile): mobile logging out randomly (#11431)
* fix(mobile): refactor splash screen to not require online connection

* chore: bump flutter sdk path for vscode

* refactor: authentication provider always try network calls and only fail if 401 or no local user

* lint

* fix: revert change to lookup serverendpoint from store the isar store implementation is very broken

* fix: clear serverUrl and serverEndpoint on logout, and await logout call

* refactor: remove unneeded extra conditions in splash screen useEffect

* revert change to remove serverEndpoint on logging out

* pr feedback

---------

Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2024-07-30 13:15:48 -05:00
Alex
13741410a7
chore(mobile): Add text to bottom gallery bar (#11417) 2024-07-29 21:25:04 -05:00
Jason Rasmussen
ebc71e428d
feat(server): reverse geocoding endpoint (#11430)
* feat(server): reverse geocoding endpoint

* chore: rename error message
2024-07-29 18:17:26 -04:00
Alex
ddc4d2f927
fix(mobile): client TLS on ios (#11415) 2024-07-28 17:32:53 -05:00
Yuvraj P
15503784c8
feat(mobile): adds crop and rotate to mobile (#10989)
* Added Crop Feature

* Using LayoutBuilder Fix

* Using Immich Colors

* Using Immich Text Theme

* Chnaging dynamic datatype to nullable

* Fix for the retrivel of the image from the cropscreen

* Using Hooks State

* Small edits

* Finals edits

* Saving to the mobile

* Commented final code

* Commented final code

* Comments and AutoRoute

* Fix AutoRoute Final

* Naming tools and Action when made no edits

* Updating timeline after edit

* chore: lint

* format

* Light Mode Compatible

* fix duplicate page name

* Fix Routing

* Hiding the Button

* lint

* remove unused code

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-07-28 15:41:14 -05:00
waclaw66
4b2bc8e4ce
fix(mobile): search filter translation + fixes (#11141)
translation + fixes
2024-07-26 16:32:19 -05:00
renovate[bot]
a444ea7361
chore(deps): update dependency flutter to v3.22.3 (#11301)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-26 15:39:33 -05:00
Alex
59b809012f
chore(mobile): post release task (#11382) 2024-07-26 15:38:41 -05:00
Alex The Bot
04340b3a62 Version v1.110.0 2024-07-26 15:38:20 +00:00
Alex
ef7a6bb246
chore(web): change license wording and other things (#11309) 2024-07-26 10:34:35 -05:00
Alex
bc20710c6d
chore(mobile): Translations update (#11373)
chore(mobile): translation update
2024-07-26 10:31:10 -05:00
Yun Jiang
ea5d6780f2
feat(mobile): Adding setting in mobile app to TLS client certificate (#10860)
* feat(mobile): Adding setting in mobile app to import TLS client certificate and private key

* Formating dart source code to pass dart format test

* Adding missed required trailing commas to pass dart static analysis

* update lock file

* variable names

---------

Co-authored-by: Yun Jiang <yjiang@roku.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-07-26 13:59:02 +00:00
Saschl
62ac9bb7cd
fix(mobile): native share functionality on iPad (#11294)
* pass context to share method

* use correct context

* fix: multiselection and logs sharing

* fix: lint
2024-07-26 08:43:59 -05:00
Michel Heusschen
86a658b891
fix(mobile): negative coordinate input (#11292)
* fix(mobile): negative coordinate input

* format
2024-07-26 08:37:29 -05:00
Jordy
2c7db0122d
fix(mobile): changed "x jaren" to "x jaar" in dutch app translations (#11371)
changed "x jaren" to "x jaar"
2024-07-26 08:29:59 -05:00
Michel Heusschen
8e6bc13540
feat: people infinite scroll (#11326)
* feat: people infinite scroll

* add infinite scroll to show & hide modal

* update unit tests

* show total people count instead of currently loaded

* update personsearchdto
2024-07-25 15:59:28 -04:00
Michel Heusschen
849bc6e3aa
fix(server): correct openapi response type for getServerLicense() (#11261)
* fix(server): correct openapi response type for getServerLicense()

* return 404 error when license doesn't exist

* update e2e test
2024-07-22 08:50:45 -05:00
Mert
9d2d556200
feat(server): accepted video containers (#11274)
* add accepted container config

* update api

* mp4 option makes no sense

* add to transcoding settings

* wording

* updated spec config

* formatting
2024-07-21 21:14:23 +00:00
Alex
7c3326b662
chore(mobile): post release task (#11220) 2024-07-19 15:10:29 +00:00
Fynn Petersen-Frey
745b16e4b4
feat(mobile): remove asset from album in gallery view (#11184)
Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-07-19 10:07:36 -05:00
Alex The Bot
b9fc59ca9f Version v1.109.2 2024-07-18 19:33:29 +00:00
Alex The Bot
01ba859567 Version v1.109.1 2024-07-18 17:55:58 +00:00
Alex The Bot
c77702279c Version v1.109.0 2024-07-18 16:03:42 +00:00
Alex
e852971a13
fix(mobile): fix database out of size (#11065) 2024-07-13 20:55:35 -05:00
Jason Rasmussen
25a380d023
feat(server): userinfo signing (#10756)
* feat(server): userinfo signing

* chore: e2e tests
2024-07-11 07:55:00 -04:00
Alex
0fbfbc86d2
chore(mobile): post release task (#11006) 2024-07-10 11:40:19 -05:00
Alex The Bot
c7432834d0 Version v1.108.0 2024-07-10 16:14:02 +00:00
Alex
a58a2eec53
fix(mobile): crash when navigate between large video files (#11002) 2024-07-10 10:30:27 -05:00
Alex
94f129d632
chore(mobile): update photo_manager dep (#10965) 2024-07-09 10:52:58 -05:00
Jason Rasmussen
334a709cc6
refactor(server): partner search dto (#10902)
* refactor(server): partner search dto

* fix: missed reference

* mobile fix

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-07-08 16:41:39 -04:00
Alex
b25642b889
fix(mobile): search picker overflow (#10870) 2024-07-05 09:47:33 -05:00
Alex
7bde19d842
chore(mobile): separate build flavors (#10872) 2024-07-05 09:43:11 -05:00
waclaw66
df10618a7e
fix(mobile): exposure time display (#10842)
exposure time fix
2024-07-04 23:30:06 -05:00
Alex The Bot
96f29cefeb Version v1.107.2 2024-07-03 03:18:19 +00:00
Alex
6f950ea45d
fix(mobile): incorrect translation string (#10794) 2024-07-02 22:13:22 -05:00
Alex
bed9ccadbc
chore(mobile): post release pump (#10775) 2024-07-02 16:41:40 -05:00
Alex The Bot
aa29f5d69c Version v1.107.1 2024-07-02 19:04:29 +00:00
Alex
1ee10ee2d6
feat(mobile): Revert render assets on device by default (#10470) (#10774)
Revert "feat(mobile): render assets on device by default (#10470)"

This reverts commit 32da9d90e4.
2024-07-02 19:01:54 +00:00
Alex
f23401d911
fix(mobile): map crashes on Android (#10773)
Revert "fix(mobile): upgrade maplibre_gl package to fix issue with crash in ios7.4 above simulator (#10182)"

This reverts commit 99c6fdbc1c.
2024-07-02 13:43:52 -05:00
Alex
14d94df1b8
chore(mobile): post release pump (#10759)
* chore(mobile): post release pump

* remove cache report file
2024-07-02 11:20:52 -05:00
Alex The Bot
b47ec2f88f Version v1.107.0 2024-07-02 14:13:10 +00:00
Zack Pollard
3b37b70626
feat(server): user and server license endpoints (#10682)
* feat: user license endpoints

* feat: server license endpoints

* chore: pr feedback

* chore: add more test cases

* chore: add prod license public keys

* chore: open-api generation
2024-07-01 17:43:16 +00:00
Alex
b54dd4e135
docs: Translations update (#10730)
chore(mobile): translation update
2024-07-01 09:44:15 -05:00
Alex
887acb9d9f
chore(mobile): Revert "remove exclude album mechanism for backup (#10552)" (#10686)
Revert "chore(mobile): remove exclude album mechanism for backup (#10552)"

This reverts commit 5f47cf604a.
2024-06-29 11:30:18 -05:00
Zack Pollard
a2364a12cf
refactor: move /server-info endpoints to /server (#10677) 2024-06-28 17:08:19 +01:00
martin
37b5d92110
fix(web): new feature photo (#9443)
* fix: new feature photo

* fix: use updatedAt
2024-06-27 20:16:26 -04:00
Zhenzhen Zhao
0b4153e256
chore(trans): add zh-CN translations for custom proxy headers (#10660)
chore: add zh-CN translations for proxy headers

Signed-off-by: TripleZ <me@triplez.cn>
2024-06-27 13:38:51 -05:00
Alex
d8175d8da8
fix(mobile): asset state remain in gallery view after being deleted (#10603)
* fix(mobile): asset doesn't get removed from state renderList

* fix delete last assets

* refactor
2024-06-26 23:15:26 -05:00
Matej Kramny
922430da36
feat(mobile): add additional request headers (#10588)
* add additional request headers

* improve interface

* move headers under advanced settings

* refactor

* refactor

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-06-26 19:31:55 +00:00
Jason Rasmussen
8a445cac07
chore: build metadata (#10612)
feat: build metadata
2024-06-26 08:25:09 -04:00
RanKKI
04f0e29df6
fix(mobile): inconsistent thumbnail's label (#10589)
* fix(mobile): inconsistent thumbnail with label

* fix: limit person's name width
2024-06-24 07:24:57 -07:00
Alex
5f47cf604a
chore(mobile): remove exclude album mechanism for backup (#10552)
* chore(mobile): remove exclude album selection mechanism

* code generator

* code generator
2024-06-22 15:31:27 -07:00
Alex
32da9d90e4
feat(mobile): render assets on device by default (#10470)
* feat(mobile): render asset on device by default

* remove unused service
2024-06-22 09:13:05 -07:00
Daniel Dietzler
5e9a7b17d9
fix(server): allow library id to be null in metadata search (#10512)
* fix: allow library id to be null in metadata search

* chore: open api
2024-06-20 16:02:05 -07:00
Muhideen Mujeeb Adeoye
99c6fdbc1c
fix(mobile): upgrade maplibre_gl package to fix issue with crash in ios7.4 above simulator (#10182)
* fix(mobile): upgrade maplibre_gl package to fix issue with crash in ios7.4 above simulator

* chore: switch from deprecated widget and controller name to new name in latest sdk

* remove todo

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-06-17 22:27:54 +00:00
RanKKI
29e4666dfa
fix(mobile): asset description is not shown on the sheet when opened for the first time (#10377)
* fix: invalidate asset's description when asset details changed

* refactor(exif-sheet): use description from exif instead

* refactor(asset-description): remove asset_description.provider

* fix(asset-description): set is empty based on exifInfo.description

* chore: rename service to provider
2024-06-17 10:01:02 -07:00
RanKKI
7ce87abc95
fix(mobile): my location button on maps not visible due to bottom padding (#10384)
fix(maps): my location button not visible due to bottom padding
2024-06-17 08:48:58 -07:00
RanKKI
eb987c14c1
fix(mobile): search page (#10385)
* refactor(search): hide people/places if empty

* refactor(search): remove unused stack

* refactor(search): fix dropdown menu's width

* feat(search): show camera make/model vertically on mobile devices

* fix: lint errors
2024-06-17 08:47:04 -07:00
RanKKI
0fe152b1ef
fix(mobile): translation for title (#10324)
* fix(memory): translation for title

* chore: update memoery translation for dutch

* refactor(translation): avoid incompatibility with i18n website

* fix: lint errors
2024-06-16 15:54:15 +00:00
RanKKI
1cd51cc2de
fix(app-bar): remove safe area of the app bar in photos page (#10340)
fix(app-bar): remove safe area of appbar in photos
2024-06-15 13:47:12 -07:00
Daniel Dietzler
dddc06c3b2
feat: user preferences for archive download size (#10296)
* feat: user preferences for archive download size

* chore: open api

* chore: clean up

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-06-14 11:27:12 -04:00
renovate[bot]
2bdb4bca9e
chore(deps): update dependency flutter to v3.22.2 (#10158)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-14 02:33:27 -05:00
Alex The Bot
8c2195c820 Version v1.106.4 2024-06-13 15:12:51 +00:00
Alex
e2a2c86a31
chore(server): optional originalMimeType in asset response payload (#10272)
* chore(server): optional originalMimeType in asset response payload

* lint

* Update web/src/lib/utils/asset-utils.ts

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>

* fix permission of shared link

* test

* test

* test

* test server

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-06-13 09:21:47 -05:00
Michel Heusschen
a54e01ef2f
fix: load original image for gifs (#10252) 2024-06-13 05:57:46 -05:00
Alex
c642150b85
chore(mobile): post release task (#10228) 2024-06-12 14:17:58 -05:00
Alex The Bot
a8a7d29891 Version v1.106.3 2024-06-12 18:26:10 +00:00
Alex
67e98ed313
fix(mobile): video player not updating state (#10220)
* fix(mobile): video player not updating state

* unused code
2024-06-12 12:43:01 -05:00
Jason Rasmussen
3d82005797
fix: no floats (replace with doubles) (#10218)
* fix: no floats (replace with doubles)

* Update server/src/utils/misc.ts

Co-authored-by: Zack Pollard <zackpollard@ymail.com>

---------

Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2024-06-12 17:36:24 +01:00
Alex The Bot
81790ab166 Version v1.106.2 2024-06-11 19:09:13 +00:00
Alejandro Armas
69b948f3d0
fix(mobile): Motion Photos stopping music (#10151)
Add videoPlayer opt to prevent motionPhotos pausing music
2024-06-11 11:14:49 -05:00
Alex
60701d131e
chore(mobile): post release pump (#10114) 2024-06-11 06:26:52 -05:00
Alex
04808f8b5c
fix(mobile): warning message not resetting when changing server URL (#10112) 2024-06-11 10:48:49 +00:00
Alex The Bot
b5991c908e Version v1.106.1 2024-06-11 09:39:23 +00:00
Alex The Bot
f32c02bd25 Version v1.106.0 2024-06-10 17:50:00 +00:00
Alex
46df165ef2
feat(mobile): compatibility message warning (#10065)
* feat(mobile): compatibility message warning

* refactor and better signature
2024-06-10 12:43:54 -05:00
Fynn Petersen-Frey
972c66d467
fix(server): proper asset sync (#10019)
* fix(server,mobile): proper asset sync

* fix CI issues

* only use id instead of createdAt+id

* remove createdAt index

* fix typo

* cleanup createdAt usage

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-06-09 14:19:28 -05:00
Alex
e1e7de4d4c
chore(mobile): translation update (#10053) 2024-06-08 19:51:36 +00:00
Alex
dbd9782763
fix(mobile): viewAsset URL string (#10044) 2024-06-08 10:50:14 +00:00
Alex
9ac2ac2fcb
feat(web): send test email button (#10011)
* feat(web): test email button

* openapi

* UI button

* Show notification

* pr feedback

* remove jobs

* send email directly from repository and add feedback

* avoid sending many emails

* linter

* pr feedback

* lint

* lint

* lint
2024-06-07 11:34:09 -05:00
Mert
2b1b43a7e4
feat(ml): composable ml (#9973)
* modularize model classes

* various fixes

* expose port

* change response

* round coordinates

* simplify preload

* update server

* simplify interface

simplify

* update tests

* composable endpoint

* cleanup

fixes

remove unnecessary interface

support text input, cleanup

* ew camelcase

* update server

server fixes

fix typing

* ml fixes

update locustfile

fixes

* cleaner response

* better repo response

* update tests

formatting and typing

rename

* undo compose change

* linting

fix type

actually fix typing

* stricter typing

fix detection-only response

no need for defaultdict

* update spec file

update api

linting

* update e2e

* unnecessary dimension

* remove commented code

* remove duplicate code

* remove unused imports

* add batch dim
2024-06-07 03:09:47 +00:00
Jan108
b2761b12d1
feat(web): Option to assign people to unassigned faces (#9773)
* added unassigned faces to people edit

* svelte fix

* fix format

* Captialized unassigned person name, removed person id from alttext, fixed problem with multiple faces per person

* Added faces to the getAssetInfo API endpoint

* Updated openApi clients

* Readded the photoeditor dependency

* fixed lint/format

* fixed photoViewer type

* changes getAssetInfo.faces to only include unassigned faces

* fix: bad merge

* title

* logic

---------

Co-authored-by: Jan108 <dasJan108@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-06-05 07:26:00 +00:00
Alex
b3ee394fdc
feat(web): email notification preference settings (#9934)
* feat(web): email notification preference settings

* Update

* remove failed api generation file

* fix handle album invite return value

* Update web/src/lib/components/user-settings-page/notifications-settings.svelte

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

* wording

* test

---------

Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
2024-06-03 16:00:20 -05:00
Jason Rasmussen
69d2fcb43e
refactor: asset media endpoints (#9831)
* refactor: asset media endpoints

* refactor: mobile upload livePhoto as separate request

* refactor: change mobile backup flow to use new asset upload endpoints

* chore: format and analyze dart code

* feat: mark motion as hidden when linked

* feat: upload video portion of live photo before image portion

* fix: incorrect assetApi calls in mobile code

* fix: download asset

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2024-05-31 13:44:04 -04:00
Daniel Dietzler
4376104e3a
refactor(server): rename api tags to follow plural nomenclature of endpoints (#9872)
* rename api tags to follow plural nomenclature of endpoints

* chore: open api

* fix mobile
2024-05-29 18:26:57 -04:00
Daniel Dietzler
5463660746
refactor(server)!: move markers and style to dedicated map endpoint/controller (#9832)
* move markers and style to dedicated map endpoint

* chore: open api

* chore: clean up repos

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-05-29 11:51:01 -04:00
renovate[bot]
3f6e61d073
chore(deps): update dependency flutter to v3.22.1 (#9820)
* chore(deps): update dependency flutter to v3.22.1

* ci: flutter actions pull flutter version from pubspec.yaml

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2024-05-28 12:15:28 +01:00
Snowknight26
ee3530b34c
feat: add units to exposure time display (#9803)
* feat(web): add units to exposure time display

* feat(mobile): add units to exposure time display
2024-05-28 10:05:36 +01:00
Jason Rasmussen
0fc6d69824
feat(server): user preferences (#9736)
* refactor(server): user endpoints

* feat(server): user preferences

* mobile: user preference

* wording

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-05-28 09:16:53 +07:00
Conner Hnatiuk
11152f9b3d
fix(mobile): appBar on album viewer screen animates out and doesnt alter asset grid position (#9741)
* Animated out top bar added, currenlty need to move up current app bar as it is too far down

* album viewer appBar animates out and does not cause screen shift

* Formatting

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-05-27 00:13:32 +00:00
Jason Rasmussen
75830a4878
refactor(server): user endpoints (#9730)
* refactor(server): user endpoints

* fix repos

* fix unit tests

---------

Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-05-27 05:15:52 +07:00
Min Idzelis
d5cf8e4bfe
refactor(server): move checkExistingAssets(), checkBulkUpdate() remove getAllAssets() (#9715)
* Refactor controller methods, non-breaking change

* Remove getAllAssets

* used imports

* sync:sql

* missing mock

* Removing remaining references

* chore: remove unused code

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-05-24 21:02:22 -04:00
Zack Pollard
39d2c4f37b
chore: remove all deprecated endpoints/properties from server and mobile app (#9724)
* chore: remove deprecated title property from MemoryLaneResponseDto

* chore: remove deprecated webpPath and resizePath from MetadataSearchDto

* chore: remove deprecated sharedUserIds property from Album AddUsersDto

* chore: remove deprecated sharedUsers property from AlbumResponseDto

* chore: remove deprecated sharedWithUserIds property from CreateAlbumDto

* chore: remove deprecated isExternal and isReadOnly properties from AssetResponseDto

* chore: remove deprecated /server-info endpoint

* chore: bloody linters
2024-05-24 15:37:01 +01:00
Kedas
1f5d82e9d9
fix(mobile): respect SSL override during background sync (#9587) 2024-05-24 10:16:14 +01:00
François-Xavier Payet
56ea07bcba
fix(mobile): use correct Focus Node for latitude and longitude (#9699)
FIx focus node for longitude

Co-authored-by: François-Xavier Payet <fxpayet@salesapps.io>
2024-05-24 09:59:05 +01:00
Min Idzelis
4f21f6a2e1
feat: API operation replaceAsset, POST /api/asset/:id/file (#9684)
* impl and unit tests for replaceAsset

* Remove it.only

* Typo in generated spec +regen

* Remove unused dtos

* Dto removal fallout/bugfix

* fix - missed a line

* sql:generate

* Review comments

* Unused imports

* chore: clean up

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-05-23 20:26:22 -04:00
Alex
57d94bce68
feat(web): deduplication UI (#9540) 2024-05-23 12:57:25 -05:00
Jason Rasmussen
8f37784eae
refactor(server): /user profile endpoint (#9669)
* refactor(server): user profile endpoint

* chore: open api
2024-05-22 14:31:12 -04:00
Jason Rasmussen
ecd018a826
refactor(server): user info endpoint (#9668)
* refactor(server): user info endpoint

* chore: open api
2024-05-22 14:15:33 -04:00
Jason Rasmussen
202745f14b
refactor(server): plural endpoints (#9667) 2024-05-22 13:24:57 -04:00
renovate[bot]
27a02c75dc
chore(deps): update dependency fastlane to v2.220.0 (#9653)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-22 09:46:53 +00:00
Zack Pollard
a3e7e8cc31
refactor: deprecate /server-info and replace with /server-info/storage (#9645) 2024-05-22 10:25:55 +01:00
Jason Rasmussen
2ada4a8426
chore: gitignore open api docs/tests (#9643) 2024-05-21 16:35:20 +01:00
renovate[bot]
924e9f08cd
chore(deps): update mobile (#9629)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-21 13:40:21 +00:00
renovate[bot]
67fa598f44
chore(deps): update mobile (#9621)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-21 08:31:53 +00:00
waclaw66
9222b9d130
fix(mobile): invite user list (#9624)
* fix(mobile): invite user list

* make it dense as before
2024-05-21 09:27:17 +01:00