1
0
Fork 0
mirror of https://github.com/immich-app/immich.git synced 2025-01-10 13:56:47 +01:00
Commit graph

172 commits

Author SHA1 Message Date
Michel Heusschen
368142e79b
feat(web): improved server stats (#1870)
* feat(web): improved server stats

* fix(web): don't log unauthorized errors

* Revert "fix(web): don't log unauthorized errors"

This reverts commit 7fc2987a77.
2023-02-26 13:57:34 -06:00
Michel Heusschen
9323cc76d9
feat(server): improve API specification (#1853) 2023-02-24 10:01:10 -06:00
Michel Heusschen
10cb612fb1
feat(web): theme/locale preferences and improve SSR (#1832) 2023-02-22 11:53:08 -06:00
Michel Heusschen
bf6f94f69f
feat(web): only show copy image when supported (#1776) 2023-02-17 10:41:52 -06:00
Michel Heusschen
e1c520b9e7
feat(web): remove duplicate asset calls (#1764)
* feat(web): remove duplicate asset calls

* use source element instead of video.src
2023-02-15 11:56:19 -06:00
Alex
db67093391
Revert "feat(web): avoid duplicate call + small refactor (#1731)" (#1750)
This reverts commit 53fb3a36f7.
2023-02-13 16:27:15 -06:00
Michel Heusschen
53fb3a36f7
feat(web): avoid duplicate call + small refactor (#1731) 2023-02-11 22:36:26 -06:00
Michel Heusschen
bd71e087d4
refactor(web): added types and some small changes (#1722) 2023-02-10 16:17:39 -06:00
Jason Rasmussen
2b0b2bb1ae
refactor(server): download file (#1512)
* refactor(server): download file

* chore: generate open-api and remove unused refs

* chore(server): tests

* chore: remove unused code
2023-02-03 09:16:25 -06:00
James
de0e218440
feat(web): add Favorites page (#1397)
* Duplicate photos page and rename to favorites

* Implement basic functionality to page

* Sort imports

* Add missing sharing code

* Remove unused import

* Fix formatting

* Use GalleryViewer and new api endpoint

* Merge useFavorites into page

* Run prettier

* Move favorites in side-bar

* Remove favorites when unfavorited

* Fix close shared link model

* Add favorite count to side-bar

* Add add to favorites option

* Fix formatting

* Add favorite icon to image thumbnails

* Change var to let
2023-01-27 08:32:26 -06:00
Alex
8b73c2bf8a
fix(server): Handle exposure time correctly (#1432) 2023-01-26 13:14:05 -06:00
Alex Tran
026308acc9
run prettier 2023-01-21 22:53:45 -06:00
Alex
b07891089f
feat(web/server) Add more options to public shared link (#1348)
* Added migration files

* Added logic for shared album level

* Added permission for EXIF

* Update shared link response dto

* Added condition to show download button

* Create and edit link with new parameter:

* Remove deadcode

* PR feedback

* More refactor

* Move logic of allow original file to service

* Simplify

* Wording
2023-01-21 22:15:16 -06:00
Zlendy
e5d798581c
fix(web): update album information when sliding images (#1378) 2023-01-21 21:26:58 -06:00
Alex
3e4a14b299
chore(server) harden EXIF extraction (#1347)
* chore(server) Harden EXIF extraction

* Remove unused function in timeutil

* Remove deadcode
2023-01-17 13:41:00 -06:00
Alex
eace0af7a5
fix(web) Disable draggable on common usage element to avoid trigger drag-n-drop layer (#1330) 2023-01-15 14:01:10 -06:00
Alex
e9fda40b2b
feat(web) Individual assets shared mechanism (#1317)
* Create shared link modal for individual asset

* Added API to create asset shared link

* Added viewer for individual shared link

* Added multiselection app bar

* Refactor gallery viewer to its own component

* Refactor

* Refactor

* Add and remove asset from shared link

* Fixed test

* Fixed notification card doesn't wrap

* Add check asset access when created asset shared link

* pr feedback
2023-01-14 23:49:47 -06:00
Alex
7add754fc3
fix(web) show exif info in public shared (#1283)
* fix(web) show exif in public share page

* Added exif info to return payload'
2023-01-10 10:03:15 -06:00
Jason Rasmussen
bd838a71d1
feat(web,server): disable password login (#1223)
* feat(web,server): disable password login

* chore: unit tests

* chore: fix import

* chore: linting

* feat(cli): server command for enable/disable password login

* chore: update docs

* feat(web): confirm dialogue

* chore: linting

* chore: linting

* chore: linting

* chore: linting

* chore: linting

* chore: fix web test

* chore: server unit tests
2023-01-09 16:32:58 -05:00
Krisjanis Lejejs
e4e040f14b
feat(web) Add search functionality to add photo to album modal (#1273) 2023-01-09 14:24:07 -06:00
Alex
10789503c1
feat(web/server) public album sharing (#1266) 2023-01-09 14:16:08 -06:00
Krisjanis Lejejs
10b0924cfb
feat(web) Add drag n drop upload functionality (#1216)
* Add image drag n drop functionality

* Change upload cover name, background color and opacity
2022-12-29 20:07:18 -06:00
Alex
6736063f83
fix(web) Fix incorrect album type (shared/non-shared) in album selection modal (#1219)
* fix(web) Fix incorrect album type (shared/non-shared) in album selection modal

* styling

* remove deadcode
2022-12-29 15:31:54 -06:00
Alex
f25809befb
feat(web) using template filename for downloaded file (#1164)
* feat(web) using template filename for downloaded file

* remove deadcode
2022-12-22 13:29:51 -06:00
Alex
1adf8ff6b6
chore(web) Update SvelteKit (#1066)
* Update sveltekit

* Update sveltekit

* Update correct preloading attribute
2022-12-06 18:08:08 -06:00
Alex
5de8ea162d
feat(server) Tagging system (#1046) 2022-12-05 11:56:44 -06:00
Alex
966d99217a
fix(web) fix test (#1059) 2022-12-04 22:51:22 -06:00
Kiel Hurley
5f2b75997f
feat(web): Localize dates and numbers (#1056) 2022-12-04 09:35:20 -06:00
denck007
efa7b3ba54
Fix(web): navbar color overlap and scroll bar incorrect z index (#1018)
* fix(web): Navbar color overlaps tall images

* fix(web): Scroll bar date behind navbar when scrubbing (fixes issue #757)
2022-11-25 20:52:01 -06:00
Kiel Hurley
976d347623
feat(server,web,mobile): Use binary prefixes for data sizes (#1009) 2022-11-24 11:39:27 -06:00
Alex
8bc64be77b
feat: support iOS LivePhoto backup (#950) 2022-11-18 23:12:54 -06:00
bo0tzz
70cd313082
Add navbar button to copy image (#961)
* Add navbar button to copy image

* Use global event for copy image

* merge upstream

* Fixed missing required props

* feat(web): Show notification after copying image to clipboard

* chore(web): Fix typescript error

* chore(web): Formatting

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2022-11-16 15:04:37 -06:00
Alex
e799f35dd2
chore(server) refactor serveFile and downloadFile endpoint (#978) 2022-11-16 00:11:16 -06:00
Jason Rasmussen
99da181cfc
feat(web): favorite an asset (#939)
* feat(web): favorite an asset

* fix: test and linting

* fix: asset dto type
2022-11-08 10:20:36 -06:00
Jason Rasmussen
4274fceafe
feat(web): add selected asset on main timeline to album from selection (#926) 2022-11-04 22:29:48 -05:00
Alex
0d7ccc2b26
chore(web): Modified styling for add to album panel (#924) 2022-11-04 09:42:24 -05:00
Jason Rasmussen
5aa06ed3be
feat(web): add current view asset to album (#923) 2022-11-04 09:32:09 -05:00
Alex Tran
b7f1a1ad4b
Change position of the icon 2022-10-30 11:08:55 -05:00
Anbraten
1967c1e237
feat(web): add delete button to asset viewer (#896) 2022-10-30 11:08:22 -05:00
Alex Tran
811494e9ed
Fix test 2022-10-28 21:00:31 -05:00
bo0tzz
b0f10b1851
feat(web) add handler for ctrl-c copying images from viewer (#881) 2022-10-28 17:18:28 -05:00
Alex
f94176a910
feat(web) dark mode (#867) 2022-10-26 11:10:48 -05:00
Alex
103df4d9f3
fix(web) navigating forward button get in the way of video control bar (#744)
* fix(web) navigating forward button get in the way of video control bar

* Remove unsued style
2022-09-23 18:22:06 -05:00
Alex
e5459b68ff
fix(server,web,mobile): Incorrectly record and show timestamp and time zone of the asset (#706)
Implemented a mechanism to extract the correct time zone from the GPS coordinate if presented in the file's EXIF, and to convert the timestamp to the correct UTC time so that the time will show correctly based on the mobile/web local time zone.
2022-09-22 15:58:17 -05:00
Alex
0d13b25f56
feat(web): Update to latest version of SvelteKit (#705) 2022-09-16 23:13:22 -05:00
Thanh Pham
6abc733763
fix(web): datetime display and add TZ into environment (#618)
* fix(web): timezone

* doc(): update readme.md

* feat(web): keep using UTC timezone in default

* chore(): update doc and remove debug code

* chore(): update readme.md

* Move timezone into to .env.example

* Run prettier check

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2022-09-12 14:40:18 -05:00
Jaime Baez
4f7a3afbfc Fix web lint issues 2022-09-08 17:30:49 +02:00
Jaime Baez
aed94bfc4c Format web code with prettier
Added `.md` and `.json` to .prettierignore
2022-09-08 12:53:09 +02:00
Thanh Pham
6ffdf167fe
fix(web): detail panel overflow-x (#615) 2022-09-07 13:20:44 -05:00
Matthias Rupp
caa7b07398
Show all albums an asset appears in on the asset viewer page (#575)
* Add route to query albums for a specific asset

* Update API and add to detail-panel

* Fix tests

* Refactor API endpoint

* Added alt attribute to img tag

Co-authored-by: Alex <alex.tran1502@gmail.com>
2022-09-05 08:50:20 -05:00
Alex
552340add7
Feature - Implemented virtual scroll on web (#573)
This PR implemented a virtual scroll on the web, as seen in this article.

[Building the Google Photos Web UI](https://medium.com/google-design/google-photos-45b714dfbed1)
2022-09-04 08:34:39 -05:00
Alex
4be9aa091b
Added error handling notification (#536) 2022-08-26 10:36:41 -07:00
Alex
e344503834
Fixed navigating with keyboard skip assets (#531)
* Cleaned up event listner
2022-08-24 22:18:28 -07:00
Thanh Pham
fb0fa742f5
fix(web): buffering for video player (#520)
* fix(web): buffering for video player

* chore(): missing file -_-

* refactor(web): using URL builder

* chore(): add semicolon

* fix(web): video player

* remove deadcode

Co-authored-by: Alex <alex.tran1502@gmail.com>
2022-08-23 20:21:41 -07:00
Alex Tran
4b34f017ca cosmetic change 2022-08-12 21:19:54 -05:00
Alex
83cbf51704
Use cookies for client requests (#377)
* Use cookie for frontend request

* Remove api helper to use SDK

* Added error handling to status box

* Remove additional places that check for session.user

* Refactor sending password

* prettier clean up

* remove deadcode

* Move all authentication requests to the client

* refactor upload panel to only fetch assets after the upload panel disappear

* Added keydown to remove focus on title change on album viewer
2022-07-26 12:28:07 -05:00
Alex
3b97c7729b
Implement mechanism to remove and add shared user in album on web (#369)
* AFixed overlay issue of modal

* Added modal with existing user

* Added custom scrollbar to all pages

* Fixed Document is not define when access document DOM node in browswer

* Added context menu

* Added api to remove user from album

* Handle user leave album

* Added share button to non-shared album

* Added padding to album viewer:

* Fixed margin top of asset selection page

* Fixed issue cannot push to dockerhub
2022-07-23 13:08:49 -05:00
Alex
c028c7db4e
dev/add detail viewer to album (#358)
* Rename asset viewer folder

* Refactor AssetViewer to be able to user with different component

* Refactor AssetViewer to be able to user with different component

* Added viewer for album and sharing
2022-07-18 00:22:39 -05:00
Alex
c6ecfb679a
Added sharing page to web (#355)
* Added shared album

* Added list tile

* Show info of shared album owner
2022-07-16 23:52:00 -05:00
Alex
7134f93eb8
Add ablum feature to web (#352)
* Added album page

* Refactor sidebar

* Added album assets count info

* Added album viewer page

* Refactor album sorting

* Fixed incorrectly showing selected asset in album selection

* Improve fetching speed with prefetch

* Refactor to use ImmichThubmnail component for all

* Update to the latest version of Svelte

* Implement fixed app bar in album viewer

* Added shared user avatar

* Correctly get all owned albums, including shared
2022-07-15 23:18:17 -05:00
Alex
9a6dfacf9b
Refactor web to use OpenAPI SDK (#326)
* Refactor main index page

* Refactor admin page

* Refactor Auth endpoint

* Refactor directory to prep for monorepo

* Fixed refactoring path

* Resolved file path in vite

* Refactor photo index page

* Refactor thumbnail

* Fixed test

* Refactor Video Viewer component

* Refactor download file

* Refactor navigation bar

* Refactor upload file check

* Simplify Upload Asset signature

* PR feedback
2022-07-10 21:41:45 -05:00
Alex
32b847c26e
Fixed event propagation trigger navigating twice (#293) 2022-07-01 20:49:41 -05:00
Alex
663f12851e
Fixed filename duplication when upload from web (#288)
* Fixed filename duplication when upload from web

* Fixed cosmetic of detail panel view
2022-06-30 20:43:33 -05:00
Alex Tran
485b152beb
Improved info panel on web 2022-06-25 13:28:36 -05:00
Alex Tran
4aa66f4156
Fixed issue socket-io cannot be connected in production build on web 2022-06-19 09:33:10 -05:00
Alex Tran
c4247bfea3
Fixed issue socket-io cannot be connected in production build on web 2022-06-19 09:12:43 -05:00
Alex
1e3464fe47
Feature - Add upload functionality on Web (#231)
* Added file selector

* Extract metadata to upload files to the web

* Added request for uploading

* Generate jpeg/Webp thumbnail for asset uploaded without thumbnail data

* Added generating thumbnail for video and WebSocket broadcast after thumbnail is generated

* Added video length extraction

* Added Uploading Panel

* Added upload progress store and styling the uploaded asset

* Added condition to only show upload panel when there is upload in progress

* Remove asset from the upload list after successfully uploading

* Added WebSocket to listen to upload event on the web

* Added mechanism to check for existing assets before uploading on the web

* Added test workflow

* Update readme
2022-06-19 08:16:35 -05:00
Alex
a8220172f8
WIP refactor container and queuing system (#206)
* refactor microservices to machine-learning

* Update tGithub issue template with correct task syntax

* Added microservices container

* Communicate between service based on queue system

* added dependency

* Fixed problem with having to import BullQueue into the individual service

* Added todo

* refactor server into monorepo with microservices

* refactor database and entity to library

* added simple migration

* Move migrations and database config to library

* Migration works in library

* Cosmetic change in logging message

* added user dto

* Fixed issue with testing not able to find the shared library

* Clean up library mapping path

* Added webp generator to microservices

* Update Github Action build latest

* Fixed issue NPM cannot install due to conflict witl Bull Queue

* format project with prettier

* Modified docker-compose file

* Add GH Action for Staging build:

* Fixed GH action job name

* Modified GH Action to only build & push latest when pushing to main

* Added Test 2e2 Github Action

* Added Test 2e2 Github Action

* Implemented microservice to extract exif

* Added cronjob to scan and generate webp thumbnail  at midnight

* Refactor to ireduce hit time to database when running microservices

* Added error handling to asset services that handle read file from disk

* Added video transcoding queue to process one video at a time

* Fixed loading spinner on web while loading covering the info panel

* Add mechanism to show new release announcement to web and mobile app (#209)

* Added changelog page

* Fixed issues based on PR comments

* Fixed issue with video transcoding run on the server

* Change entry point content for backward combatibility when starting up server

* Added announcement box

* Added error handling to failed silently when the app version checking is not able to make the request to GITHUB

* Added new version announcement overlay

* Update message

* Added messages

* Added logic to check and show announcement

* Add method to handle saving new version

* Added button to dimiss the acknowledge message

* Up version for deployment to the app store
2022-06-11 16:12:06 -05:00
Matthias Rupp
68ff5377b0
Minor improvements to the detail-panel component (#205)
* Fix roudning behavior in details panel

* Add lat,lon-popup to map in details

* Refactor map code in detail-panel to avoid duplicate code
2022-06-06 16:40:12 -05:00
Alex
b9f38162d5
Implemented status box on the side bar (#201) 2022-06-05 05:15:39 -05:00
Alex
ab6909bfbd
20 video conversion for web view (#200)
* Added job for video conversion every 1 minute

* Handle get video as mp4 on the web

* Auto play video on web on hovered

* Added video player

* Added animation and video duration to thumbnail player

* Fixed issue with video not playing on hover

* Added animation when loading thumbnail
2022-06-04 18:34:11 -05:00
Alex
53c3c916a6
View assets detail and download operation (#198)
* Fixed not displaying default user profile picture

* Added buttons to close viewer and micro-interaction for navigating assets left, right

* Add additional buttons to the control bar

* Display EXIF info

* Added map to detail info

* Handle user input keyboard

* Fixed incorrect file name when downloading multiple files

* Implemented download panel
2022-06-03 11:04:30 -05:00