Jason Rasmussen
6ce1533117
fix: activity types ( #15368 )
2025-01-15 23:31:26 -05:00
Jason Rasmussen
930f979960
feat: migration api keys to use kysely ( #15206 )
2025-01-10 14:02:12 -05:00
Mert
2e12c46980
refactor(server): use kysely ( #12857 )
2025-01-09 11:15:41 -05: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
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
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
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
Pablo Molina
333ca8827e
feat: use dateTimeOriginal to calculate album date ( #14119 )
2024-11-13 11:17:14 -06:00
Jason Rasmussen
e84ad084d5
refactor(server): cron validation ( #13990 )
2024-11-07 17:27:52 +00:00
Jason Rasmussen
64831e2328
refactor: remove smart info table ( #13985 )
2024-11-07 11:25:10 -05:00
Mert
b9096f3e99
feat(server): use tonemapx for software tone-mapping ( #13785 )
2024-10-31 20:48:23 -04:00
Zack Pollard
7d933ec97a
feat: built-in automatic database backups ( #13773 )
2024-10-31 11:29:42 +00:00
Jason Rasmussen
0f668fd5c6
refactor(server): env validation ( #13817 )
2024-10-30 05:00:41 -04:00
Jason Rasmussen
e3fc4d7b0a
refactor(server): auth enums ( #13552 )
2024-10-17 13:17:32 -04:00
jedi04
bb694aeeeb
fix(server): Allow passwordless users when oauth enabled ( #13517 )
...
* fix(server): Allow passwordless users when oauth enabled
* fix(web): Use features flags for checking oauth
2024-10-17 12:24:50 -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
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
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
Mert
2bcd27e166
feat(server): generate all thumbnails for an asset in one job ( #13012 )
...
* wip
cleanup
add success logs, rename method
do thumbhash too
fixes
fix tests
handle `notify`
wip refactor
refactor
* update tests
* update sql
* pr feedback
* remove unused code
* formatting
2024-09-28 17:47:24 +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
Jason Rasmussen
12da250028
refactor: enums ( #12988 )
2024-09-27 10:28:42 -04: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
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
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
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
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
Jason Rasmussen
d39917a4db
fix(web): show trash indicator ( #12521 )
2024-09-09 16:03:17 -04: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
Jason Rasmussen
5e6ac87eaf
chore: object shorthand linting rule ( #12152 )
...
chore: object shorthand
2024-08-30 14:38:53 -04:00
Jason Rasmussen
9b1a985d29
fix(server): tag upsert ( #12141 )
2024-08-30 12:44:24 -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
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
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
Geoffrey Frogeye
562fec6e2b
feat(server): sort images in duplicate groups by date ( #12094 )
...
* feat(server): sort images in duplicate groups by date
* Update server/src/dtos/duplicate.dto.ts
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com >
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com >
2024-08-28 19:59:09 +00:00
Jonathan Jogenfors
363c558db7
fix(server): don't crash when refreshing large libraries ( #7934 )
...
* add job to check for offline files
* fix lint
* only check for offline when using checkForOffline
* improve tests
* remove old test
* wip
* remove trie
* refactor batches
* also check offline status
* fix spelling
* don't do offline scan
* rename scan to check
* fix job statuses
* fix lint
* cleanup
* add test
* open-api
* fix test
* fix spinner
* reset text
* don't double batch
* fix comments from mert
* remove tries
* fix tests
* fix e2e
* fix test
* fix test
* add tests
* fix lint
* fix e2e
* interweave scans
* fix errors
* fix messages
* fix test
* add mock
* fix sql
* fix e2e
* use library batch size
* save -> update
* add file extensions
* update specs
* test for import paths
* check import paths when testing offline
* fix lint
* normalize import path
* remove console logs
* decrease batch size to 1000
* add test for import path
* add test for already-online assets
* fix merge
* fix lint
* add library job back
* add offline job to correct queue
* library spec compiles now
* move one test to new e2e
* fix comments
* fix comments
* fix lint
* refactor path validation
* fix loop bug
* remove logging
* expect responses
* fix asset mock
* take the straightforward approach
* use generator correctly
* fix vitest on file edit
* bump vitest to 1.6.0
* test for offline check
* add e2e tests for offlining assets depending on import path
* cleanup e2e test after finish
* cleanup library service
* paginate the walk generator
* fix tests
* fix typo
* refactoring handleOfflineCheck
* better testing of handleOfflineCheck
* fix lint
* handle large library deletions
* dont check if library is deleted
* fix mock
* add a 100k page size to library
* fix loading animation
* better log messages
* Better logging for offline asset removal
* fix sql and tests
* fix number format
* Remove submodule
* fix format
* chore: cleanup
* chore: fix tests
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
Co-authored-by: Jason Rasmussen <jason@rasm.me >
2024-08-28 13:05:48 -04:00
Jason Rasmussen
7fbf50a75e
fix: remove asset.resized ( #11983 )
...
fix: remove resized
2024-08-22 23:24:49 -04:00
Jason Rasmussen
ef9a06be5c
fix(server): album statistics endpoint ( #11924 )
2024-08-20 07:50:36 -04:00
Jason Rasmussen
7af6733665
refactor(server): move files to separate table ( #11861 )
2024-08-19 20:03:33 -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
Jason Rasmussen
f230b3aa42
feat(server): granular permissions for api keys ( #11824 )
...
feat(server): api auth permissions
2024-08-16 09:48:43 -04: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
Jason Rasmussen
a4506758aa
refactor: auth service ( #11811 )
2024-08-15 09:14:23 -04:00
Jason Rasmussen
b288241a5c
refactor(server): enums ( #11809 )
2024-08-15 06:57:01 -04:00