Fynn Petersen-Frey
21f2d3058a
feat(mobile)!: batched full/initial sync ( #4840 )
...
* feat(mobile): batched full/initial sync
* use OptionalBetween
* skip/take as integer
---------
Co-authored-by: Fynn Petersen-Frey <zoodyy@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-11-06 11:40:43 -06:00
Jason Rasmussen
279481ad54
feat(server): make is favorite optional on asset upload ( #4865 )
...
* feat(server): make isFavorite optional
* chore: open api
* chore: e2e
2023-11-06 09:04:39 -05:00
Jason Rasmussen
2e424fe249
feat(server): better api error messages (for unhandled exceptions) ( #4817 )
...
* feat(server): better error messages
* chore: open api
* chore: remove debug log
* fix: syntax error
* fix: e2e test
2023-11-03 20:33:15 -05:00
Jason Rasmussen
0130591a0f
fix: show/set activity like per user ( #4775 )
...
* fix: like per user
* chore: open api
* chore: e2e test for userId filtering
2023-11-01 11:49:12 -04:00
martin
ce5966c23d
feat(web,server): activity ( #4682 )
...
* feat: activity
* regenerate api
* fix: make asset owner unable to delete comment
* fix: merge
* fix: tests
* feat: use textarea instead of input
* fix: do actions only if the album is shared
* fix: placeholder opacity
* fix(web): improve messages UI
* fix(web): improve input message UI
* pr feedback
* fix: tests
* pr feedback
* pr feedback
* pr feedback
* fix permissions
* regenerate api
* pr feedback
* pr feedback
* multiple improvements on web
* fix: ui colors
* WIP
* chore: open api
* pr feedback
* fix: add comment
* chore: clean up
* pr feedback
* refactor: endpoints
* chore: open api
* fix: filter by type
* fix: e2e
* feat: e2e remove own comment
* fix: web tests
* remove console.log
* chore: cleanup
* fix: ui tweaks
* pr feedback
* fix web test
* fix: unit tests
* chore: remove unused code
* revert useless changes
* fix: grouping messages
* fix: remove nullable on updatedAt
* fix: text overflow
* styling
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-10-31 22:13:34 -05:00
Jason Rasmussen
8dcd159bd6
chore(server): remove user count endpoint ( #4724 )
...
* chore: remove unused endpoint
* chore: open api
2023-10-30 19:29:18 +00:00
jarvis2f
8a6889529c
feat(server,web,mobile): Add optional password option for share links. ( #4655 )
...
* feat(server,web,mobile): Add optional password option for share links.
Signed-off-by: jarvis2f <137974272+jarvis2f@users.noreply.github.com>
* feat(server,web): Update shared-link.controller and page.svelte for improved cookie handling and metadata updates.
Signed-off-by: jarvis2f <137974272+jarvis2f@users.noreply.github.com>
---------
Signed-off-by: jarvis2f <137974272+jarvis2f@users.noreply.github.com>
2023-10-28 20:35:38 -05:00
Alex
8b5b6d0821
feat(web): manual stacking asset ( #4650 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-27 20:34:01 +00:00
Wingy
cb0e37e76e
fix(web): fix Theme Custom CSS endpoint requiring the user to be logged in as the server admin ( #4633 )
...
* fix custom css requiring the user to be the admin and logged in
* move theme api to custom endpoint
* add e2e test
2023-10-25 22:13:05 +00:00
Jason Rasmussen
3021eca8e5
chore(server): remove unused method ( #4627 )
...
* chore(server): remove unused method
* chore: open api
2023-10-24 12:59:06 -04:00
martin
3e3598fd92
fix: suggest people ( #4566 )
...
* fix: suggest people
* feat: remove hidden people
* add hidden people when merging faces
* pr feedback
* fix: don't use reactive statement
* fixed section height
* improve merging
* fix: migration
* fix migration
* feat: add asset count
* fix: test
* rename endpoint
* add server test
* improve responsive design
* fix: remove videos from live photos in the asset count
* pr feedback
* fix: rename asset count endpoint
* fix: return firstname and lastname
* fix: reset people only on error
* fix: search
* fix: responsive design & div flickering
* fix: cleanup
* chore: open api
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-10-24 15:53:49 +00:00
shenlong
cf08ac7538
feat: manual stack assets ( #4198 )
2023-10-21 21:38:07 -05:00
Jason Rasmussen
d2807b8d6a
feat(web,server): offline/untracked files admin tool ( #4447 )
...
* feat: admin repair orphans tool
* chore: open api
* fix: include upload folder
* fix: bugs
* feat: empty placeholder
* fix: checks
* feat: move buttons to top of page
* feat: styling and clipboard
* styling
* better clicking hitbox
* fix: show title on hover
* feat: download report
* restrict file access to immich related files
* Add description
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2023-10-14 19:12:59 +02:00
martin
b8d6cc1e09
feat(server,web): improve performances in person page (1) ( #4387 )
...
* feat: improve performances in people page
* feat: add loadingspinner when searching
* fix: reset people on error
* fix: case insensitive
* feat: better sql query
* fix: reset people list before api request
* fix: format
2023-10-10 09:34:25 -05:00
shenlong
4a8887f37b
feat(server): trash asset ( #4015 )
...
* refactor(server): delete assets endpoint
* fix: formatting
* chore: cleanup
* chore: open api
* chore(mobile): replace DeleteAssetDTO with BulkIdsDTOs
* feat: trash an asset
* chore(server): formatting
* chore: open api
* chore: wording
* chore: open-api
* feat(server): add withDeleted to getAssets queries
* WIP: mobile-recycle-bin
* feat(server): recycle-bin to system config
* feat(web): use recycle-bin system config
* chore(server): domain assetcore removed
* chore(server): rename recycle-bin to trash
* chore(web): rename recycle-bin to trash
* chore(server): always send soft deleted assets for getAllByUserId
* chore(web): formatting
* feat(server): permanent delete assets older than trashed period
* feat(web): trash empty placeholder image
* feat(server): empty trash
* feat(web): empty trash
* WIP: mobile-recycle-bin
* refactor(server): empty / restore trash to separate endpoint
* test(server): handle failures
* test(server): fix e2e server-info test
* test(server): deletion test refactor
* feat(mobile): use map settings from server-config to enable / disable map
* feat(mobile): trash asset
* fix(server): operations on assets in trash
* feat(web): show trash statistics
* fix(web): handle trash enabled
* fix(mobile): restore updates from trash
* fix(server): ignore trashed assets for person
* fix(server): add / remove search index when trashed / restored
* chore(web): format
* fix(server): asset service test
* fix(server): include trashed assts for duplicates from uploads
* feat(mobile): no dialog for trash, always dialog for permanent delete
* refactor(mobile): use isar where instead of dart filter
* refactor(mobile): asset provide - handle deletes in single db txn
* chore(mobile): review changes
* feat(web): confirmation before empty trash
* server: review changes
* fix(server): handle library changes
* fix: filter external assets from getting trashed / deleted
* fix(server): empty-bin
* feat: broadcast config update events through ws
* change order of trash button on mobile
* styling
* fix(mobile): do not show trashed toast for local only assets
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-10-06 02:01:14 -05:00
Jason Rasmussen
192e950567
fix: use local time for time buckets and improve memories ( #4072 )
...
* fix: timezone bucket timezones
* chore: open api
* fix: interpret local time in utc
* fix: tests
* fix: refactor memory lane
* fix(web): use local date in memory viewer
* chore: set localDateTime non-null
* fix: filter out memories from the current year
* wip: move localDateTime to asset
* fix: correct sorting from db
* fix: migration
* fix: web typo
* fix: formatting
* fix: e2e
* chore: localDateTime is non-null
* chore: more non-nulliness
* fix: asset stub
* fix: tests
* fix: use extract and index for day of year
* fix: don't show memories before today
* fix: cleanup
* fix: tests
* fix: only use localtime for tz
* fix: display memories in client timezone
* fix: tests
* fix: svelte tests
* fix: bugs
* chore: open api
---------
Co-authored-by: Jonathan Jogenfors <jonathan@jogenfors.se>
2023-10-04 22:11:11 +00:00
Daniel Dietzler
e571880c16
feat(web, mobile): Options to show archived assets in map ( #4293 )
...
* Add include archive setting to map on web
* open api
* better naming for web isArchived variable
* add withArchived setting to mobile
* (e2e): tests for mapMarker endpoint and isArchived
* isArchived to mobile
* chore: cleanup test
* chore: optimize e2e
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-10-04 09:51:07 -04:00
Daniele Ricci
014d164d99
feat(server): random assets API ( #4184 )
...
* feat(server): get random assets API
* Fix tests
* Use correct validation annotation
* Fix offset use in query
* Update API specs
* Fix typo
* Random assets e2e tests
* Improve e2e tests
2023-09-23 22:28:55 +07:00
Jonathan Jogenfors
acdc66413c
feat(server,web): libraries ( #3124 )
...
* feat: libraries
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-09-20 13:16:33 +02:00
Jason Rasmussen
f1db257628
feat(server,web): server config ( #4006 )
...
* feat: server config
* chore: open api
* fix: redirect /map to /photos when disabled
2023-09-08 22:51:46 -04:00
Jason Rasmussen
454737ca79
refactor(server): update asset endpoint ( #3973 )
...
* refactor(server): update asset
* chore: open api
2023-09-04 22:25:31 -04:00
Jason Rasmussen
a26ed3d1a6
refactor(web,server): use feature flags for oauth ( #3928 )
...
* refactor: oauth to use feature flags
* chore: open api
* chore: e2e test for authorize endpoint
2023-09-01 18:08:42 +07:00
Jason Rasmussen
8211afb726
feat(web,server)!: configure machine learning via the UI ( #3768 )
2023-08-25 06:15:03 +02:00
Jason Rasmussen
10c2bda3a9
chore: remove without thumbs ( #3529 )
...
* refactor(server): remove withoutThumbs
* chore: open api
* fix: bad merge
2023-08-24 21:45:54 -04:00
Fynn Petersen-Frey
cf9e04c8ec
feat(server): asset entity audit ( #3824 )
...
* feat(server): audit log
* feedback
* Insert to database
* migration
* test
* controller/repository/service
* test
* module
* feat(server): implement audit endpoint
* directly return changed assets
* add daily cleanup of audit table
* fix tests
* review feedback
* ci
* refactor(server): audit implementation
* chore: open api
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
Co-authored-by: Fynn Petersen-Frey <zoodyy@users.noreply.github.com>
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-08-24 15:28:50 -04:00
Jason Rasmussen
5e901e4d21
feat(web,server): run jobs for specific assets ( #3712 )
...
* feat(web,server): manually queue asset job
* chore: open api
* chore: tests
2023-08-18 09:31:48 -05:00
Jason Rasmussen
2b839088c7
feat(web,server): server features ( #3756 )
...
* feat: server features
* chore: open api
* icon size
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-08-18 04:55:26 +00:00
Jason Rasmussen
bab739efbd
restore: bulk actions ( #3730 )
...
* feat: improve bulk isArchive and isFavorite updates
* chore: open api
2023-08-16 15:04:55 -05:00
Jason Rasmussen
efc7fdb669
fix(web,server): use POST request to get download info ( #3694 )
...
* fix(web,server): use POST request to get download info
* chore: open api
2023-08-15 10:49:32 -05:00
Jason Rasmussen
5cd13227ad
feat(web): timeline bucket for albums (4) ( #3604 )
...
* feat: server changes for album timeline
* feat(web): album timeline view
* chore: open api
* chore: remove archive action
* fix: favorite for non-owners
2023-08-11 11:00:51 -05:00
Jason Rasmussen
ff32506c5e
feat(web): use time buckets of person detail page (3) ( #3557 )
...
* feat: add personId to time bucket endpoints
* chore: open api
* feat(web): time bucket on person detail page
2023-08-05 08:58:52 -05:00
Jason Rasmussen
c6abef186c
refactor(server,web): time buckets for main timeline, archived, and favorites (1) ( #3537 )
...
* refactor: time buckets
* feat(web): use new time bucket api
* feat(web): use asset grid in archive/favorites
* chore: open api
* chore: clean up uuid validation
* refactor(web): move memory lane to photos page
* Update web/src/routes/(user)/archive/+page.svelte
Co-authored-by: Sergey Kondrikov <sergey.kondrikov@gmail.com>
* fix: hide archived photos on main timeline
* fix: select exif info
---------
Co-authored-by: Sergey Kondrikov <sergey.kondrikov@gmail.com>
2023-08-04 17:07:15 -04:00
Jason Rasmussen
b44f8d52ee
refactor(server): standardize user controller ( #3501 )
...
* chore: remove redundant sortint
* chore: standardize user controller
* chore: open api
* fix: web dtos
2023-08-03 13:17:38 -05:00
Jason Rasmussen
b9cda59172
refactor(server)!: add/remove album assets ( #3109 )
...
* refactor: add/remove album assets
* chore: open api
* feat: remove owned assets from album
* refactor: move to bulk id req/res dto
* chore: open api
* chore: merge main
* dev: mobile work
* fix: adding asset from web not sync with mobile
* remove print statement
---------
Co-authored-by: Alex Tran <Alex.Tran@conductix.com>
2023-08-01 20:29:14 -05:00
Jason Rasmussen
310fab526d
chore(server): auto sort open api spec ( #3500 )
...
* chore: recursively sort api keys
* chore: open api
2023-08-01 16:49:18 +00:00
PyKen
51cfe10c28
feat(web/server): Search by panorama photos ( #3470 )
...
* Add panorama filter
* Add generated api changes
* Fix naming
2023-07-30 20:31:57 -05:00
martin
ed64c91da6
fix: hide faces ( #3352 )
...
* fix: hide faces
* remove unused variable
* fix: work even if one fails
* better style for hidden people
* add hide face in the menu dropdown
* add buttons to toggle visibility for all faces
* add server test
* close modal with escape key
* fix: explore page
* improve show & hide faces modal
* keep name on people card
* simplify layout
* sticky app bar in show-hide page
* fix format
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-07-22 22:00:43 -05:00
martin
f28fc8fa5c
feat(server,web): hide faces ( #3262 )
...
* feat: hide faces
* fix: types
* pr feedback
* fix: svelte checks
* feat: new server endpoint
* refactor: rename person count dto
* fix(server): linter
* fix: remove duplicate button
* docs: add comments
* pr feedback
* fix: get unhidden faces
* fix: do not use PersonCountResponseDto
* fix: transition
* pr feedback
* pr feedback
* fix: remove unused check
* add server tests
* rename persons to people
* feat: add exit button
* pr feedback
* add server tests
* pr feedback
* pr feedback
* fix: show & hide faces
* simplify
* fix: close button
* pr feeback
* pr feeback
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-07-18 13:09:43 -05:00
Alex
c254a04aec
feat(server): add endpoint to get supported media types on the server ( #3284 )
...
* feat(server): add endpoint to get supported media types on the server
* api generation
* remove xmp format
* change dto
* openapi
* dev
2023-07-15 20:24:46 -05:00
Jason Rasmussen
f952bc0b64
refactor(server): asset stats ( #3253 )
...
* refactor(server): asset stats
* chore: open api
2023-07-14 08:30:17 -05:00
Jason Rasmussen
b71d7e33bb
refactor(server): calculate asset type server side ( #3200 )
...
* refactor(server): calculate asset type server-side
* chore: open api
* chore: remove comments
* fix: linting
* update
* Revert "update"
This reverts commit dc58702923
.
* fix: upload LivePhotos
* chore: remove unused request fields for upload
* remove unused method
* mobile-fix: livePhoto filename
* fix: revert check for livephotos filename and extension
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-07-11 22:56:30 -05:00
Alex
c86b2ae500
feat(web/server): merge faces ( #3121 )
...
* feat(server/web): Merge faces
* get parent id
* update
* query to get identical asset and change controller
* change delete asset signature
* delete identical assets
* gaming time
* delete merge person
* query
* query
* generate api
* pr feedback
* generate api
* naming
* remove unused method
* Update server/src/domain/person/person.service.ts
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* Update server/src/domain/person/person.service.ts
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* better method signature
* cleaning up
* fix bug
* added interfaces
* added tests
* merge main
* api
* build merge face interface
* api
* selector interface
* style
* more style
* clean up import
* styling
* styling
* better
* styling
* styling
* add merge face diablog
* finished
* refactor: merge person endpoint
* refactor: merge person component
* chore: open api
* fix: tests
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-07-11 16:52:41 -05:00
Alex
812cb3d940
Revert "fix(server): use thumbnail content type instead of application/octet-stream ( #3075 )" ( #3134 )
...
* Revert "fix(server): use thumbnail content type instead of application/octet-stream (#3075 )"
This reverts commit 3cc77d945b
.
* generate api
2023-07-06 17:25:56 -05:00
Alex Tran
852ef3cd1b
chore(server): update openapi
2023-07-06 16:56:02 -05:00
Jason Rasmussen
ad343b7b32
refactor(server): download assets ( #3032 )
...
* refactor: download assets
* chore: open api
* chore: finish tests, make size configurable
* chore: defualt to 4GiB
* chore: open api
* fix: optional archive size
* fix: bugs
* chore: cleanup
2023-06-30 11:24:28 -05:00
Alex Phillips
e171fec5aa
feat(server): support for read-only assets and importing existing items in the filesystem ( #2715 )
...
* Added read-only flag for assets, endpoint to trigger file import vs upload
* updated fixtures with new property
* if upload is 'read-only', ensure there is no existing asset at the designated originalPath
* added test for file import as well as detecting existing image at read-only destination location
* Added storage service test for a case where it should not move read-only assets
* upload doesn't need the read-only flag available, just importing
* default isReadOnly on import endpoint to true
* formatting fixes
* create-asset dto needs isReadOnly, so set it to false by default on create, updated api generation
* updated code to reflect changes in MR
* fixed read stream promise return type
* new index for originalPath, check for existing path on import, reglardless of user, to prevent duplicates
* refactor: import asset
* chore: open api
* chore: tests
* Added externalPath support for individual users, updated UI to allow this to be set by admin
* added missing var for externalPath in ui
* chore: open api
* fix: compilation issues
* fix: server test
* built api, fixed user-response dto to include externalPath
* reverted accidental commit
* bad commit of duplicate externalPath in user response dto
* fixed tests to include externalPath on expected result
* fix: unit tests
* centralized supported filetypes, perform file type checking of asset and sidecar during file import process
* centralized supported filetype check method to keep regex DRY
* fixed typo
* combined migrations into one
* update api
* Removed externalPath from shared-link code, added column to admin user page whether external paths / import is enabled or not
* update mimetype
* Fixed detect correct mimetype
* revert asset-upload config
* reverted domain.constant
* refactor
* fix mime-type issue
* fix format
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-06-21 21:33:20 -05:00
Jason Rasmussen
868f629f32
refactor(server, web): create shared link ( #2879 )
...
* refactor: shared links
* chore: open api
* fix: tsc error
2023-06-20 20:08:43 -05:00
Jason Rasmussen
fde410e2ac
refactor(server): send job command ( #2777 )
...
* refactor: send job command
* chore: open api
2023-06-16 14:36:07 -05:00
Jason Rasmussen
07f7fffae7
refactor(server): album count ( #2746 )
...
* refactor(server): album count
* chore: open api
2023-06-16 10:48:48 -05:00
Jason Rasmussen
896645130b
fix(server): memory lane title ( #2772 )
...
* fix(server): memory lane title
* feat: parallel requests
* pr feedback
* fix test
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-06-15 13:05:30 -05:00