Jason Rasmussen
eefe5266a8
chore(server): remove unused filename ( #2517 )
2023-05-22 10:26:56 -05:00
Jason Rasmussen
74353193f8
feat(web,server): user storage label ( #2418 )
...
* feat: user storage label
* chore: open api
* fix: checks
* fix: api update validation and tests
* feat: default admin storage label
* fix: linting
* fix: user create/update dto
* fix: delete library with custom label
2023-05-21 23:18:10 -04:00
Mert
356f4424df
chore(server): queue handlers shouldn't increase concurrency ( #2508 )
2023-05-21 21:11:26 -05:00
Michel Heusschen
a7b9adc692
feat(web+server): map improvements ( #2498 )
...
* feat(web+server): map improvements
* add number format double to fix mobile
2023-05-21 01:26:06 -05:00
Jason Rasmussen
e028cf9002
fix(server): reverse geocoding crash loop ( #2489 )
2023-05-20 21:39:12 -05:00
Jason Rasmussen
3d426b55d3
chore(server): auth request type ( #2502 )
2023-05-20 20:44:26 -05:00
Alex
35c4887e4a
fix return update asset with new update time ( #2457 )
2023-05-17 14:28:58 -05:00
Jason Rasmussen
93863b0629
feat: facial recognition ( #2180 )
2023-05-17 12:07:17 -05:00
Sergey Kondrikov
7f2fa23179
feat (server, web): Share with partner ( #2388 )
...
* feat(server, web): implement share with partner
* chore: regenerate api
* chore: regenerate api
* Pass userId to getAssetCountByTimeBucket and getAssetByTimeBucket
* chore: regenerate api
* Use AssetGrid to view partner's assets
* Remove disableNavBarActions flag
* Check access to buckets
* Apply suggestions from code review
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* Remove exception rethrowing
* Simplify partner access check
* Create new PartnerController
* chore api:generate
* Use partnerApi
* Remove id from PartnerResponseDto
* Refactor PartnerEntity
* Rename args
* Remove duplicate code in getAll
* Create composite primary keys for partners table
* Move asset access check into PartnerCore
* Remove redundant getUserAssets call
* Remove unused getUserAssets method
* chore: regenerate api
* Simplify getAll
* Replace ?? with ||
* Simplify PartnerRepository.create
* Introduce PartnerIds interface
* Replace two database migrations with one
* Simplify getAll
* Change PartnerResponseDto to include UserResponseDto
* Move partner sharing endpoints to PartnerController
* Rename ShareController to SharedLinkController
* chore: regenerate api after rebase
* refactor: shared link remove return type
* refactor: return user response dto
* chore: regenerate open api
* refactor: partner getAll
* refactor: partner settings event typing
* chore: remove unused code
* refactor: add partners modal trigger
* refactor: update url for viewing partner photos
* feat: update partner sharing title
* refactor: rename service method names
* refactor: http exception logic to service, PartnerIds interface
* chore: regenerate open api
* test: coverage for domain code
* fix: addPartner => createPartner
* fix: missed rename
* refactor: more code cleanup
* chore: alphabetize settings order
* feat: stop sharing confirmation modal
* Enhance contrast of the email in dark mode
* Replace button with CircleIconButton
* Fix linter warning
* Fix date types for PartnerEntity
* Fix PartnerEntity creation
* Reset assetStore state
* Change layout of the partner's assets page
* Add bulk download action for partner's assets
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-05-15 12:30:53 -05:00
Jason Rasmussen
a808b9403e
feat(web,server): logout all devices ( #2415 )
...
* feat: logout all devices
* chore: regenerate openapi
* chore: add test
* chore: logout vs log out
2023-05-09 14:34:17 -05:00
Matthias Rupp
65daf342df
feat(web): Global map showing all assets with geo information ( #2355 )
...
* First crude implementation of the global asset map in web
* Use single DOM element for all markers
* Minor layout changes
* Refactor
* Add asset viewer
* Add API endpoint that returns only assets with location information (Thanks @EPP100)
* Remove sidebar icon flip
* Add dark theme support
* Center map to most recent asset
* Allow cluster viewing
* Fix linter errors
* Add newlines
* Fix ts errors
* Fix eslint error
* Run prettier
* Server code style
* Fix openapi mobile code generation issues
* Map markers test
* fix: Support video thumbnails
* Update API
* Review suggestions
* Review suggestions
* Linter error
* Chage mapMarker endpoint to map-marker
* Clean up leaflet imports
2023-05-05 20:33:30 -05:00
Michel Heusschen
15a498fd60
feat(server): add api key to openapi spec ( #2362 )
...
* feat(server): add api key to openapi spec
* regenerate api
2023-05-04 11:41:29 -05:00
Jason Rasmussen
af7da9d2c9
chore: standardize process method names ( #2363 )
2023-05-04 11:40:34 -05:00
Jason Rasmussen
e22cdea485
chore(server,mobile): remove device info entity ( #1527 )
...
* chore(server): remove unused device info code
* chore: generate open api
* remove any DeviceTypeEnum usage from mobile
* chore: coverage
* fix: drop device info table
---------
Co-authored-by: Fynn Petersen-Frey <zody22@gmail.com>
2023-04-28 15:01:03 -05:00
Jason Rasmussen
b8313abfa8
feat(web,server): manage authorized devices ( #2329 )
...
* feat: manage authorized devices
* chore: open api
* get header from mobile app
* write header from mobile app
* styling
* fix unit test
* feat: use relative time
* feat: update access time
* fix: tests
* chore: confirm wording
* chore: bump test coverage thresholds
* feat: add some icons
* chore: icon tweaks
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-04-25 21:19:23 -05:00
Alex
a9859bc029
feat: Add description ( #2237 )
...
* Added dto, logic to insert description and web implementation
* create text field and update on remote database
* Update description and save changes
* styling
* fix web test
* fix server test
* preserve description on metadata extraction job run
* handle exif info is null situation
* pr feedback
* format openapi spec
* update createAssetDto
* refactor logic to service
* move files
* only owner can update description
* Render description correctly in shared album
* Render description correctly in shared link
* disable description edit for not owner of asset on mobile
* localization and clean up
* fix test
* Uses providers for description text (#2244 )
* uses providers for description text
* comments
* fixes initial data setting
* fixes notifier
---------
Co-authored-by: martyfuhry <martyfuhry@gmail.com>
2023-04-13 10:22:06 -05:00
Sergey Kondrikov
d314805caf
feat (server, web): Implement Archive ( #2225 )
...
* feat (server, web): add archive
* chore: generate api
* feat (web): add empty placeholder for archive page
* chore: remove title on favorites page
Duplicates sidebar selection. Two pages (Archive and Favorites)
are consistent now
* refactor (web): create EmptyPlaceholder component for empty pages
* fixed menu close button not close:
* fix (web): remove not necessary store call
* test (web): simplify asset tests code
* test (web): simplify asset tests code
* chore (server): remove isArchived while uploading
* chore (server): remove isArchived from typesense schema
* chore: generate api
* fix (web): delete asset from archive page
* chore: change archive asset count endpoint
old endpoint: /asset/archived-count-by-user-id
new endpoint: /asset/stat/archive
* chore: generate api
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-04-12 10:37:52 -05:00
Alex
258bc328e0
chore(server): better logging for error message ( #2230 )
...
* chore(server): better logging for error message
* pr feedback
2023-04-11 08:53:42 -05:00
Alex
a1a62b00a0
feat(server): add originalFileName to asset table ( #2231 )
2023-04-11 05:23:39 -05:00
Skyler Mäntysaari
fb42a736f1
fix(server): expand tests and add avi, mov to mimetypes. ( #2213 )
2023-04-08 20:35:27 -05:00
Michel Heusschen
8e3a7caebd
feat(server): improve validation of albums ( #2188 )
...
* feat(server): improve validation of albums
* regenerate openapi + fix downloadArchive for web
2023-04-06 12:50:55 -05:00
Zack Pollard
a5a6bebf0b
feat(all): transcoding improvements ( #2171 )
...
* test: rename some fixtures and add text for vertical video conversion
* feat: transcode video asset when audio or container don't match target
* chore: add niceness to the ffmpeg command to allow other processes to be prioritised
* chore: change video conversion queue to one concurrency
* feat: add transcode disabled preset to completely turn off transcoding
* linter
* Change log level and remove unused await
* opps forgot to save
* better logging
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-04-05 22:32:59 -05:00
Michel Heusschen
d5f2e3e45c
refactor(server): more consistent param validation ( #2166 )
2023-04-04 17:24:08 -05:00
Jason Rasmussen
4cb74f0fe4
refactor(server): reverse geocoding ( #2167 )
...
* refactor(server): reverse geocoding
* fix: nullable results
2023-04-04 17:23:07 -05:00
Jason Rasmussen
48393c215b
refactor(server): video transcode processor ( #2163 )
...
* refactor(server): video transcode processor
* refactor: rename shouldRotate to isVideoVertical, remove unnecessary await
* refactor: rename getOptions to getFfmpegOptions to be clearer in that context
* fix: optimal preset converting vertical videos already smaller than target resolution
---------
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
2023-04-04 10:48:02 -04:00
Jason Rasmussen
ec6a7ae97c
fix(server): do not link live photos across users ( #2162 )
2023-04-03 23:48:05 -05:00
Zack Pollard
808d6423be
feat(all): ffmpeg quality options improvements ( #2161 )
...
* feat: change target scaling to resolution in ffmpeg config
* feat(microservices): scale vertical video correctly, only scale if video is larger than target
2023-04-03 20:42:53 -05:00
Michel Heusschen
c584791b65
feat(server): improve validation in controllers ( #2149 )
...
* feat(server): improve validation in controllers
* set ValidationPipe config with decorator
2023-04-02 23:24:18 -05:00
AndreAle94
94b2ea9b5f
Add timezone to exif entity ( #1894 )
...
* Add timezone to exif entity
* Refactor logging
---------
Co-authored-by: Andrea Alemani <andrea.alemani94@gmail.com>
2023-04-02 14:11:24 -05:00
Michel Heusschen
b06ddec2d5
feat(server/web): jobs clear button + queue status ( #2144 )
...
* feat(server/web): jobs clear button + queue status
* adjust design and colors
* Adjust some styling
* show status next to buttons instead of on top
* Update rounded corner for badge
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-04-01 15:46:07 -05:00
Alex
d04f340b5b
fix(server): user update ( #2143 )
...
* fix(server): user update
* update dto
* generate api
* improve validation
* add e2e tests for updating user
---------
Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com>
2023-04-01 11:43:45 -05:00
Michel Heusschen
51785a1ead
feat(server): apply ValidationPipe on controllers ( #2137 )
2023-03-31 10:14:01 -05:00
Jason Rasmussen
49f66be8af
chore(server): use ioredis ( #2116 )
2023-03-31 09:36:08 -05:00
Michel Heusschen
009b6e3ca5
feat(server): add faststart to ffmpeg options ( #2138 )
2023-03-31 09:34:54 -05:00
Jason Rasmussen
34d300d1da
refactor(server): flatten infra folders ( #2120 )
...
* refactor: flatten infra folders
* fix: database migrations
* fix: test related import
* fix: github actions workflow
* chore: rename schemas to typesense-schemas
2023-03-30 14:38:55 -05:00
Alex
cc3ffcbb84
fix(server): incorrect video file path to serve for mobile vs web ( #2118 )
2023-03-29 12:36:18 -05:00
Jason Rasmussen
b0d5c7035b
feat(server): apply storage migration after exif completes ( #2093 )
...
* feat(server): apply storage migraiton after exif completes
* feat: same for videos
* fix: migration for live photos
2023-03-28 15:04:11 -05:00
Sergey Kondrikov
2c67090e3c
feat(server): add transcode presets ( #2084 )
...
* feat: add transcode presets
* Add migration
* chore: generate api
* refactor: use enum type instead of string for transcode option
* chore: generate api
* refactor: enhance readability of runVideoEncode method
* refactor: reuse SettingSelect for transcoding presets
* refactor: simplify return statement
* chore: regenerate api
* fix: correct label attribute
* Update import
* fix test
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-03-28 14:03:43 -05:00
Jason Rasmussen
da5a6d2272
fix(cli): missing dep in immich cli ( #2094 )
...
* fix: missing dep in immich cli
* fix: imports
2023-03-28 11:29:20 -05:00
Michel Heusschen
089dbdbd7e
feat(server): require auth for more endpoints ( #2092 )
...
* feat(server): require auth for more endpoints
* dev: add authorization header to profile image on mobile
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-03-27 09:38:54 -05:00
Michel Heusschen
c74fba483d
feat(server): improve and refactor get all albums ( #2048 )
...
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-03-25 21:46:48 -05:00
Jason Rasmussen
2400004f41
feat(server): split generated content into a separate folder ( #2047 )
...
* feat: organize media folders
* fix: tests
2023-03-25 09:50:57 -05:00
Jason Rasmussen
e36b620020
refactor(server): cron jobs ( #2067 )
2023-03-24 07:19:48 -05:00
Jason Rasmussen
1efc74dabc
refactor(server): common ( #2066 )
2023-03-23 23:55:15 -05:00
Jason Rasmussen
54f98053a8
chore(server): cleanup controllers ( #2065 )
2023-03-23 23:53:56 -05:00
Jason Rasmussen
bbd897b8ff
refactor(server): asset serve files ( #2052 )
2023-03-23 21:40:30 -05:00
Michel Heusschen
4dafc74223
fix(server): invalid video duration format ( #2058 )
2023-03-23 09:27:29 -05:00
bo0tzz
8adf1231a3
fix(server): Do not change file ext case on upload ( #2056 )
2023-03-23 09:06:40 -05:00
Skyler Mäntysaari
0616a66b05
feat(server): Allow .mkv, .wmv, .flv, .mpg videos to be uploaded. ( #2045 )
2023-03-22 18:34:13 -05:00
Michel Heusschen
792a87e407
fix(nginx): x-forwarded-* headers ( #2019 )
...
* fix(nginx): x-forwarded-* headers
* change category / add link to nginx config
2023-03-22 15:46:30 -05:00