mgabor
2688f9deaa
Merge branch 'main' into feature/readonly-sharing
...
# Conflicts:
# e2e/src/utils.ts
# mobile/openapi/.openapi-generator/FILES
# mobile/openapi/README.md
# mobile/openapi/lib/api.dart
# mobile/openapi/lib/api_client.dart
2024-04-21 22:35:48 +02:00
mgabor
7393bc1d73
fix "should migrate single moving picture" test failing on European system timezone
2024-04-21 22:34:22 +02:00
mgabor
5535e19a9d
rename to albumUsers in album entity as well
2024-04-19 20:18:53 +02:00
mgabor
81bebdaf33
capitalize serverside enum
2024-04-19 20:10:31 +02:00
mgabor
4960477627
rename new API field to albumUsers
2024-04-19 20:07:53 +02:00
Mert
431ffebddd
feat(server): use embedded preview from raw images ( #8773 )
...
* extract embedded
* update api
* add tests
* move temp file logic outside of media repo
* formatting
* revert `toSorted`
* disable by default
* clarify setting description
* wording
* wording
* update docs
* check extracted image dimensions
* test that it unlinks
* formatting
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2024-04-19 10:50:13 -05:00
Jason Rasmussen
74c921148b
refactor(server): cookies ( #8920 )
2024-04-19 11:19:23 -04:00
mgabor
3d528f0840
Merge branch 'main' into feature/readonly-sharing
...
# Conflicts:
# mobile/openapi/.openapi-generator/FILES
# mobile/openapi/README.md
# mobile/openapi/lib/api.dart
# mobile/openapi/lib/api_client.dart
2024-04-19 16:24:54 +02:00
Jason Rasmussen
4478e524f8
refactor(server): sessions ( #8915 )
...
* refactor: auth device => sessions
* chore: open api
2024-04-19 06:47:29 -04:00
mgabor
bce37d4c6c
Merge branch 'main' into feature/readonly-sharing
...
# Conflicts:
# mobile/openapi/.openapi-generator/FILES
# mobile/openapi/README.md
# mobile/openapi/lib/api.dart
# mobile/openapi/lib/api_client.dart
# server/src/services/album.service.spec.ts
2024-04-17 12:59:50 +02:00
mgabor
02eeee8a2b
fix existing tests
2024-04-17 12:52:47 +02:00
Kevin Huang
85df3f1e99
fix(server): external library motion photo video asset handling ( #8721 )
...
* added "isExternal" to the getLibraryAssetPaths query
* handleQueueAssetRefresh skip "non external" video asset, closes #8562
* correctly implements live photo deletion for external library
* use "external asset" for external library tests
* minor: external library asset checksum is "path hash" not file hash
* renamed to getExternalLibraryAssetPaths and added isExternal where clause
* generated sql
* reverted leftover change
2024-04-14 19:55:44 -04:00
Mert
55b9acca78
fix(server): hevc tag being set when copying a non-hevc stream ( #8582 )
2024-04-07 12:44:09 -04:00
Jason Rasmussen
cd0e537e3e
feat: persistent memories ( #8330 )
...
* feat: persistent memories
* refactor: use new add/remove asset utility
2024-04-02 10:23:17 -04:00
Mert
8edc2fb46f
refactor(server): decouple generated images from image formats ( #8246 )
...
* rename
thumbnail config
update target paths, fix tests
rename to image settings
replace legacy enum
better typing
update sql
update api
remove config option
fix
* update docs
* update other thumbnail configs in migration
* keep legacy enum for now
* fix jumbled job names
* fix jumbled job names in tests
* rename thumbhash job
* rename dto
* fix tests
* preserve order
* remove unused import
* keep old fields in dto, marked deprecated
* update sql
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2024-04-02 04:56:56 +00:00
Jonathan Jogenfors
ec48fccb30
fix(server): add missing file extensions to library files ( #8342 )
...
* fix file extensions
* fix tests
* fix formatting
* fixed bug
* fix merts comments
2024-03-28 22:51:07 -04:00
Daniel Dietzler
b588a87d4a
chore(server): rename domain repositories -> interfaces ( #8147 )
...
rename domain repositories
2024-03-21 06:59:49 -05:00
Jason Rasmussen
16d0df796c
refactor: infra folder ( #8138 )
2024-03-20 23:15:09 -04:00
Daniel Dietzler
6d9e7694b1
chore(server): move dtos ( #8131 )
...
move dtos
2024-03-20 23:53:07 +01:00
Jason Rasmussen
c1402eee8e
chore: migrate database files ( #8126 )
2024-03-20 21:02:51 +00:00
Daniel Dietzler
84f7ca855a
chore(server): move domain interfaces ( #8124 )
...
move domain interfaces
2024-03-20 16:42:58 -04:00
Daniel Dietzler
4b29bccc7c
chore(server): move cores ( #8120 )
...
move cores
2024-03-20 20:20:38 +00:00
Daniel Dietzler
30f499cf2e
chore(server): use absolute import paths ( #8080 )
...
update server to use absolute import paths
2024-03-20 14:32:04 -04:00
Mert
a9438a9c2d
fix(server): prevent feedback loop during library scan ( #7944 )
...
* prevent feedback loop
* add nesting
* made nesting less ugly
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2024-03-15 22:01:58 +00:00
martin
31f7e1aca3
feat(server, web): album orders ( #7819 )
...
* feat: album orders
* fix: tests
* pr feedback
* pr feedback
* pr feedback
* fix: tests
* add comment
* pr feedback
* fix: rendering issue
* wording
* fix: order value doesn't change
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2024-03-14 11:45:03 -05:00
Kokul Shanmugharajah
29c3a826c5
feat(server): Update XMP sidecar search to look for both photo.ext.xmp and photo.xmp ( #7813 )
...
* Add support for photo.xmp sidecars
* format
* Add comment
* Proper handling
* Handle mocking better
* Address PR feedback
* Add test coverage if both xmp files exist
* Update server/src/domain/metadata/metadata.service.ts
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
* Update server/src/domain/metadata/metadata.service.ts
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
* Update server/src/domain/metadata/metadata.service.ts
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
2024-03-13 12:14:26 -05:00
Jason Rasmussen
89f6190fb0
refactor: search e2e ( #7732 )
2024-03-08 11:20:54 -05:00
Alex
3da2b05428
chore(server): save original file name with extension ( #7679 )
...
* chore(server): save original file name with extension
* extract extension
* update e2e test
* update e2e test
* download archive
* fix download archive appending name
* pr feedback
* remove unused code
* test
* unit test
* remove unused code
* migration
* noops
* pr feedback
* Update server/src/domain/download/download.service.ts
Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com >
---------
Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com >
2024-03-07 02:34:55 +00:00
Sam Holton
9125999d1a
feat(server,web): make user deletion delay configurable ( #7663 )
...
* feat(server,web): make user deletion delay configurable
* alphabetical order
* add min for user.deleteDelay in SettingInputField
* make config.user.deleteDelay SettingInputField min consistent format
* fix e2e test
* update description on user delete delay
2024-03-05 23:45:40 -06:00
Mert
2fa10a254c
feat(web): improve alt text ( #7596 )
...
* alt text
* memory lane alt text
* revert sql generator change
* use getAltText
* oops
* handle large number of people in asset
* nit
* add aria-label to search button
* update api
* fixed tests
* fixed typing
* fixed spacing
* fix displaying null
2024-03-03 16:42:17 -05:00
Sam Holton
f03381a5b1
feat(server): allow oauth claim to set 0 for no quota ( #7581 )
...
* feat(server): allow oauth claim to set 0 for no quota
* PR feedback to remove extra objects from user.stub.ts
2024-03-02 14:18:56 -06:00
Sam Holton
7303fab9d9
feat(server/web): add oauth defaultStorageQuota and storageQuotaClaim ( #7548 )
...
* feat(server/web): add oauth defaultStorageQuota and storageQuotaClaim
* feat(server/web): fix format and use domain.util constants
* address some pr feedback
* simplify oauth storage quota logic
* adding tests and pr feedback
* chore: cleanup
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
2024-03-01 19:46:07 -05:00
Jonathan Jogenfors
efa6efd200
feat(server,web): remove external path nonsense and make libraries admin-only ( #7237 )
...
* remove external path
* open-api
* make sql
* move library settings to admin panel
* Add documentation
* show external libraries only
* fix library list
* make user library settings look good
* fix test
* fix tests
* fix tests
* can pick user for library
* fix tests
* fix e2e
* chore: make sql
* Use unauth exception
* delete user library list
* cleanup
* fix e2e
* fix await lint
* chore: remove unused code
* chore: cleanup
* revert docs
* fix: is admin stuff
* table alignment
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2024-02-29 12:35:37 -06:00
Jonathan Jogenfors
b3c7bebbd4
feat(server,web) Semantic import path validation ( #7076 )
...
* add library validation api
* chore: open api
* show warning i UI
* add flex row
* fix e2e
* tests
* fix tests
* enforce path validation
* enforce validation on refresh
* return 400 on bad import path
* add limits to import paths
* set response code to 200
* fix e2e
* fix lint
* fix test
* restore e2e folder
* fix import
* use startsWith
* icon color
* notify user of failed validation
* add parent div to validation
* add docs to the import validation
* improve library troubleshooting docs
* fix button alignment
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2024-02-20 09:53:12 -06:00
Jason Rasmussen
a03b37ca86
refactor: server auth e2e ( #7203 )
2024-02-19 12:03:51 -05:00
Mert
5ff68d4cdb
feat(server): only transcode streams that require it ( #7106 )
2024-02-14 11:24:39 -05:00
martin
f1e4fdf175
refactor: authentication on public routes ( #6765 )
...
* refactor: authentication on public routes
* fix: remove public user
* pr feedback
* pr feedback
* pr feedback
* pr feedback
* remove unused method
* fix: tests
* fix: useless methods
* fix: tests
* pr feedback
* pr feedback
* chore: cleanup
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
2024-02-13 01:47:26 +00:00
Jonathan Jogenfors
f44fa45aa0
chore(server,cli,web): housekeeping and stricter code style ( #6751 )
...
* add unicorn to eslint
* fix lint errors for cli
* fix merge
* fix album name extraction
* Update cli/src/commands/upload.command.ts
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com >
* es2k23
* use lowercase os
* return undefined album name
* fix bug in asset response dto
* auto fix issues
* fix server code style
* es2022 and formatting
* fix compilation error
* fix test
* fix config load
* fix last lint errors
* set string type
* bump ts
* start work on web
* web formatting
* Fix UUIDParamDto as UUIDParamDto
* fix library service lint
* fix web errors
* fix errors
* formatting
* wip
* lints fixed
* web can now start
* alphabetical package json
* rename error
* chore: clean up
---------
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com >
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
2024-02-01 22:18:00 -05:00
Jonathan Jogenfors
068e703e88
feat(server): Automatic watching of library folders ( #6192 )
...
* feat: initial watch support
* allow offline files
* chore: ignore query errors when resetting e2e db
* revert db query
* add savepoint
* guard the user query
* chore: openapi and db migration
* wip
* support multiple libraries
* fix tests
* wip
* can now cleanup chokidar watchers
* fix unit tests
* add library watch queue
* add missing init from merge
* wip
* can now filter file extensions
* remove watch api from non job client
* Fix e2e test
* watch library with updated import path and exclusion pattern
* add library watch frontend ui
* case sensitive watching extensions
* can auto watch libraries
* move watcher e2e tests to separate file
* don't watch libraries from a queue
* use event emitters
* shorten e2e test timeout
* refactor chokidar code to filesystem provider
* expose chokidar parameters to config file
* fix storage mock
* set default config for library watching
* add fs provider mocks
* cleanup
* add more unit tests for watcher
* chore: fix format + sql
* add more tests
* move unwatch feature back to library service
* add file event unit tests
* chore: formatting
* add documentation
* fix e2e tests
* chore: fix e2e tests
* fix library updating
* test cleanup
* fix typo
* cleanup
* fixing as per pr comments
* reduce library watch config file
* update storage config and mocks
* move negative event tests to unit tests
* fix library watcher e2e
* make watch configuration global
* remove the feature flag
* refactor watcher teardown
* fix microservices init
* centralize asset scan job queue
* improve docs
* add more tests
* chore: open api
* initialize app service
* fix docs
* fix library watch feature flag
* Update docs/docs/features/libraries.md
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com >
* fix: import right app service
* don't be truthy
* fix test speling
* stricter library update tests
* move fs watcher mock to external file
* subscribe to config changes
* docker does not need polling
* make library watch() private
* feat: add configuration ui
---------
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com >
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2024-01-31 08:15:54 +00:00
Markus
87c38d1832
feat(server, web): Added TranscodePolicy "Bitrate higher than max bitrate or not in accepted format" ( #6479 )
...
* chore: rebase
* chore: open api
* Add Database-Migration for setting targetCodec as acceptedCodec if it was set by admin
* Add TranscodePolicy setting, to only transcode files with a bitrate higher than set max bitrate
* Rename enum value of TranscodePolicy
* calculate max_bitrate according to "k" and "m" suffix for comparison
* remove migration
* minor changes
* UnitTest for Bitrate Policy
* Fix UnitTest
* Add missing output options
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com >
2024-01-30 20:25:07 -05:00
Zack Pollard
25cad79657
refactor: move asset stacks to their own entity ( #6353 )
...
* feat: auto-stack burst photos
* feat: move stacks to asset stack entity
* chore: pin node version with volta in server
* chore: update e2e cases
* chore: cleanup
* feat: migrate existing stacks
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
2024-01-27 18:52:14 +00:00
Aram Akhavan
a972dd4060
fix(server): extraction of Samsung Motionphoto videos ( #6337 )
...
* Fix extraction of samsung motionphoto videos
* Refactor binary tag extraction to the repository to consolidate exiftool usage
* format
* fix linting and swap argument orders
* Fix tag name and conditional order
* Add unit test
* Update server test assets submodule
* Remove old motion photo video assets when a new one is extracted
* delete first, then write
* Include motion photo asset uuid's in the filename
If the filenames are not uniquified, then we can't delete old/corrupt ones
* Fix formatting and fix/add tests
* chore: only use new uuid
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
2024-01-22 13:04:45 -05:00
martin
17eaeb695e
feat: smart merge ( #6508 )
...
* pr feedback
* fix: tests
* update assets statistics
* pr feedback
* pr feedback
* fix: linter
* pr feedback
* fix: don't limit the smart merge
* pr feedback
* fix: server code
* remove slider
* fix: tests
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
2024-01-19 17:52:26 +00:00
Alex
07b874edda
fix(web): revert smart merge ( #6504 )
...
* revert smart merge
* fix test
* fix test
* Remove Slider file
2024-01-19 11:34:20 -06:00
Mert
68f52818ae
feat(server): separate face clustering job ( #5598 )
...
* separate facial clustering job
* update api
* fixed some tests
* invert clustering
* hdbscan
* update api
* remove commented code
* wip dbscan
* cleanup
removed cluster endpoint
remove commented code
* fixes
updated tests
minor fixes and formatting
fixed queuing
refinements
* scale search range based on library size
* defer non-core faces
* optimizations
removed unused query option
* assign faces individually for correctness
fixed unit tests
remove unused method
* don't select face embedding
update sql
linting
fixed ml typing
* updated job mock
* paginate people query
* select face embeddings because typeorm
* fix setting face detection concurrency
* update sql
formatting
linting
* simplify logic
remove unused imports
* more specific delete signature
* more accurate typing for face stubs
* add migration
formatting
* chore: better typing
* don't select embedding by default
remove unused import
* updated sql
* use normal try/catch
* stricter concurrency typing and enforcement
* update api
* update job concurrency panel to show disabled queues
formatting
* check jobId in queueAll
fix tests
* remove outdated comment
* better facial recognition icon
* wording
wording
formatting
* fixed tests
* fix
* formatting & sql
* try to fix sql check
* more detailed description
* update sql
* formatting
* wording
* update `minFaces` description
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
Co-authored-by: Alex Tran <alex.tran1502@gmail.com >
2024-01-18 00:08:48 -05:00
Mert
9a2fa21b28
fix(server): scale transcoded videos if dimensions are odd ( #6461 )
...
scale if odd resolution
2024-01-17 22:16:44 -05:00
martin
f0b328fb6b
feat(server, web): smart merge ( #5796 )
...
* pr feedback
* fix: tests
* update assets statistics
* pr feedback
* pr feedback
* fix: linter
* pr feedback
* fix: don't limit the smart merge
* pr feedback
* fix: server code
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
2024-01-18 01:52:11 +00:00
cfitzw
deb1f970a8
feat(server, web): quotas ( #4471 )
...
* feat: quotas
* chore: open api
* chore: update status box and upload error message
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com >
2024-01-12 19:43:36 -05:00
Zack Pollard
4cf1e553d2
feat(server): in upload folder, split the files into folders based on the first four of the files uuid ( #6175 )
2024-01-04 14:45:16 -06:00
Mert
a1e1f11399
feat(server): delete unnecessary encoded videos ( #6027 )
...
* delete unnecessary transcodes
* added test
2023-12-27 23:34:00 -06:00