feat: db insertions for edits
feat: get asset edits endpoint
feat: wip apply edits
feat: finish asset files changes
feat: wip
feat: wip
fix: openapi
fix: tests
the failing tests were so scuffed. Simply solved by adding [] to the param list
feat: more wip
feat: more wip
feat: some more tests and fixes
chore: fix default for getting thumbnail and add todo for tests
feat: LRTB validation
chore: code cleanup
chore: more test checks for cleanup
feat: show edit pane
fix: state issues
chore: restructure web editor
feat: restructure edit manager
feat: refactor cropManager
chore: combine all editing
chore: web editing improvements
fix: handling when no crops
fix: openapi enum
chore: more edit refactoring
fix: make image decoding more efficient
chore: more refactoring
fix: getCrop LRTB algorithm
fix: missing await
chore: use relative coordinates for edit
chore: update sql
fix: use resize observer instead of svelte:doc resize hook
chore: simplify quad box generation
fix: light mode styling
chore: refactor to not be a recursive job call
this simplifies the logic and the job only completes once thumbhash and others are properly updated
chore: more refactoring
feat: use affine transforms for most operations
feat: bounding box edit transformation
feat: tests
chore: sql and openapi sync
fix: medium tests
fix: rotated OCR
chore: cleanup transform test
fix: remove rebase issue
fix(server): block edits for live photos, gifs, panoramic photos
fix: openapi enum validation
chore: rename edit endpoint
chore: remove public modifiers
feat: delete endpoint
chore: use === and !== explicitly
fix: require 1 edit for the editAsset endpoint
fix: remove thumbnail edit notification and use on_upload_success instead
fix: primary key on asset edit table
chore: refactor to isPanorama
chore: rename editRepository to assetEditRepository
fix: missing toLowerCase
fix: db migrations
chore: update sql files
* change drag bar and animation position
* ensure bottom bar is below the metadata panel - move the bottom bar from bottomNavigationBar into the Stack
* change some parameters
* add background color for night mode
* background color
* change default position
* minor changes
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
* feat: replace heart icons to thumbs-up across activity
* fix: update thumb_up icon color to use primaryColor in activity components
* chore: web colors
* chore: modify colors
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
* fix(web): immich logo in shared links
* chore: apply changes for individual shared link as well
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
* prevent metadata extraction failures on large video files
Increases ExifTool timeout from 20s to 120s to prevent GPS metadata
extraction failures on large video files (>2GB, 10+ minutes).
Issue: Large videos timeout during metadata extraction, causing GPS
coordinates to be lost even though ExifTool can extract them given
enough time.
Testing: 2.6GB, 10:52min video that previously timed out now
successfully extracts GPS metadata.
* redundant comment
Increased task timeout for processing large videos.
* chore: lint
---------
Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
* chore(mobile): i18n: "open_asset_info" in viewer kebab menu
* feat(mobile): move some top buttons into kebabu menu
* refactor(mobile): viewer kebab menu to use context-based button generation
* feat(mobile): refactor action button and kebab menu to use ConsumerWidget for improved state management
* feat(mobile): pass original theme to ViewerKebabMenu for consistent styling
* chore: styling
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
Fix building docker image for different platforms on the same host
Use per-platform mise cache to avoid 'sh: 1: extism-js: not found'
This happens due to re-using cached installed binary for another platform