* feat(web): onboarding
* feat: openapi
* feat: modulization
* feat: page advancing
* Animation
* Add storage templaete settings
* sql
* more style
* Theme
* information and styling
* hide/show table
* Styling
* Update user property
* fix test
* fix test:
* fix e2e
* test
* Update web/src/lib/components/onboarding-page/onboarding-hello.svelte
Co-authored-by: bo0tzz <git@bo0tzz.me>
* naming
* use System Metadata
* better return type
* onboarding using server metadata
* revert previous changes in user entity
* sql
* test web
* fix test server
* server/web test
* more test
* consolidate color theme change logic
* consolidate save button to storage template
* merge main
* fix web
---------
Co-authored-by: bo0tzz <git@bo0tzz.me>
* feat: unassign person faces
* multiple improvements
* chore: regenerate api
* feat: improve face interactions in photos
* fix: tests
* fix: tests
* optimize
* fix: wrong assignment on complex-multiple re-assignments
* fix: thumbnails with large photos
* fix: complex reassign
* fix: don't send people with faces
* fix: person thumbnail generation
* chore: regenerate api
* add tess
* feat: face box even when zoomed
* fix: change feature photo
* feat: make the blue icon hoverable
* chore: regenerate api
* feat: use websocket
* fix: loading spinner when clicking on the done button
* fix: use the svelte way
* fix: tests
* simplify
* fix: unused vars
* fix: remove unused code
* fix: add migration
* chore: regenerate api
* ci: add unit tests
* chore: regenerate api
* feat: if a new person is created for a face and the server takes more than 15 seconds to generate the person thumbnail, don't wait for it
* reorganize
* chore: regenerate api
* feat: global edit
* pr feedback
* pr feedback
* simplify
* revert test
* fix: face generation
* fix: tests
* fix: face generation
* fix merge
* feat: search names in unmerge face selector modal
* fix: merge face selector
* simplify feature photo generation
* fix: change endpoint
* pr feedback
* chore: fix merge
* chore: fix merge
* fix: tests
* fix: edit & hide buttons
* fix: tests
* feat: show if person is hidden
* feat: rename face to person
* feat: split in new panel
* copy-paste-error
* pr feedback
* fix: feature photo
* do not leak faces
* fix: unmerge modal
* fix: merge modal event
* feat(server): remove duplicates
* fix: title for image thumbnails
* fix: disable side panel when there's no face until next PR
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
* fix(web): status box rendering
* Syntax improvement for api import
Co-authored-by: martin <74269598+martabal@users.noreply.github.com>
---------
Co-authored-by: Daniel Taylor <daniel.k.taylor1@gmail.com>
Co-authored-by: martin <74269598+martabal@users.noreply.github.com>
* fix(web): disable metadata edit if user is not owner
* pr feedback
* pr feedback
* get data from page data
* fix: better representation
* feat: warn user if there's issues with the selected assets
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
* chore: rebase and clean-up
* feat: sync description, add e2e tests
* feat: simplify web code
* chore: unit tests
* fix: linting
* Bug fix with the arrows key
* timezone typeahead filter
timezone typeahead filter
* small stlying
* format fix
* Bug fix in the map selection
Bug fix in the map selection
* Websocket basic
Websocket basic
* Update metadata visualisation through the websocket
* Update timeline
* fix merge
* fix web
* fix web
* maplibre system
* format fix
* format fix
* refactor: clean up
* Fix small bug in the hour/timezone
* Don't diplay modify for readOnly asset
* Add log in case of failure
* Formater + try/catch error
* Remove everything related to websocket
* Revert "Remove everything related to websocket"
This reverts commit 14bcb9e1e4.
* remove notification
* fix test
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
* maplibre on web, custom styles from server
Actually use new vector tile server, custom style.json
support multiple style files, light/dark mode
cleanup, use new map everywhere
send file directly instead of loading first
better light/dark mode switching
remove leaflet
fix mapstyles dto, first draft of map settings
delete and add styles
fix delete default styles
fix tests
only allow one light and one dark style url
revert config core changes
fix server config store
fix tests
move axios fetches to repo
fix package-lock
fix tests
* open api
* add assets to docker container
* web: use mapSettings color for style
* style: add unique ids to map styles
* mobile: use style json for vector / raster
* do not use svelte-material-icons
* add click events to markers, simplify asset detail map
* improve map performance by using asset thumbnails for markers instead of original file
* Remove custom attribution
(by request)
* mobile: update map attribution
* style: map dark mode
* style: map light mode
* zoom level for state
* styling
* overflow gradient
* Limit maxZoom to 14
* mobile: listen for mapStyle changes in MapThumbnail
* mobile: update concurrency
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: bo0tzz <git@bo0tzz.me>
Co-authored-by: Alex <alex.tran1502@gmail.com>
* feat(web): shuffle slideshow order
* Fix play/stop issues
* Enter/exit fullscreen mode
* Prevent navigation to the next asset after exiting slideshow mode
* Fix entering the slideshow mode from an album page
* Simplify markup of the AssetViewer
Group viewer area and navigation (prev/next/slideshow bar) controls together
* Select a random asset from a random bucket
* Preserve assets order in random mode
* Exit fullscreen mode only if it is active
* Extract SlideshowHistory class
* Use traditional functions instead of arrow functions
* Refactor SlideshowHistory class
* Extract SlideshowBar component
* Fix comments
* Hide Say something in slideshow mode
---------
Co-authored-by: brighteyed <sergey.kondrikov@gmail.com>
* fix: don't reveal user count publicly
* fix: mobile and user controller
* fix: update other frontend endpoints
* fix: revert openapi change
* chore: open api
* fix: initialize
* openapi
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
* send store event to page
* fix format
* add new asset to existing bucket
* format
* debouncing
* format
* load bucket
* feedback
* feat: listen to deletes and auto-subscribe on all asset grid pages
* feat: auto refresh on person thumbnail
* chore: skip upload event for now
* fix: person thumbnail event
* fix merge
* update handleAssetDeletion with websocket communication
* update info box on mount
* fix test
* fix test
* feat: event for trash asset
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* 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>
* Improved asset upload algorithm.
- Upload Queue: New process algorithm
- Upload Queue: Concurrency correctly respected when dragging / adding multiple group of files to the queue
- Upload Task: Add more information about progress (upload speed and remaining time)
- Upload Panel: Add more information to about the queue status (Remaining, Errors, Duplicated, Uploaded)
- Error recovery: asset information are kept in the queue to give the user a chance to read the error message
- Error recovery: on error allow the user to retry the upload or hide the error / all errors
* Support "live" editing of the upload concurrency
* Fixed some issues
* Reformat
* fix: merge, linting, dark mode, upload to share
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* implement method to read config file
* getConfig returns config file if present
* return isConfigFile for http requests
* disable elements if config file is used, show message if config file is set, copy existing config to clipboard
* fix allowing partial configuration files
* add new env variable to docs
* fix tests
* minor refactoring, address review
* adapt config type in frontend
* remove unnecessary imports
* move config file reading to system-config repo
* add documentation
* fix code formatting in system settings page
* add validator for config file
* fix formatting in docs
* update generated files
* throw error when trying to update config. e.g. via cli or api
* switch to feature flags for isConfigFile
* refactoring
* refactor: config file
* chore: open api
* feat: always show copy/export buttons
* fix: default flags
* refactor: copy to clipboard
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>