Edouard Vanbelle
23336cc2bd
fix(ui): correct input-modal, hidden by default
2026-05-04 21:04:15 +02:00
Edouard Vanbelle
f6cd18e5e9
feat: generate thumbnail from client is not found on server
...
- supported thumbnail filetype: image, pdf, video
- add play character if video's thumbnail is loaded
2026-05-04 21:04:15 +02:00
Dionisio Pozo
c6b1b14444
Merge pull request #340 from abnvle/feat/polish-translation
...
add polish (pl) translation
2026-05-04 20:29:13 +02:00
abnvle
e0a3578ee2
add polish (pl) translation
2026-05-04 00:20:41 +02:00
Edouard Vanbelle
3050556dc0
style(ui): request that all types defined
...
- check in more restrictive mode = request types
- define main types in static/js/core/types.js
2026-05-03 23:04:27 +02:00
Dionisio Pozo
f22987e7b2
Merge pull request #319 from EdouardVanbelle/refactor/fix-css-direct-colors
2026-04-26 09:17:49 +02:00
Edouard Vanbelle
f5dade1551
refactor(ui): css: use of variables colors only
2026-04-26 01:16:40 +02:00
Edouard Vanbelle
08cbf3a423
style(ui): apply biome recos
2026-04-26 00:22:49 +02:00
Edouard Vanbelle
ae15d5adc5
chore(ui): bump cache name to ensure refresh
2026-04-26 00:13:50 +02:00
Edouard Vanbelle
3d8bd2d618
refactor(ui): i18n: apply translation (made by Claude)
2026-04-26 00:13:46 +02:00
Edouard Vanbelle
5c19564102
refactor(ui): i18n: add missing + correct keys
2026-04-26 00:13:39 +02:00
Edouard Vanbelle
75d3984b8f
refactor(ui): i18n: remove unnecessary wrappers
2026-04-26 00:13:12 +02:00
Edouard Vanbelle
4e2029969e
refactor(ui): remove unnecessary checks (i18n is always defined)
2026-04-26 00:12:44 +02:00
Edouard Vanbelle
7b56b518d8
notification: remove dead code (notification class always present)
2026-04-25 21:10:04 +02:00
Edouard Vanbelle
e148a92f5d
refactor(ui): use hidden class for upload + menu
2026-04-25 21:10:04 +02:00
Edouard Vanbelle
35fc9a0619
improve(ui): share-dialog: click outside of dialog closes the window
2026-04-25 21:10:04 +02:00
Edouard Vanbelle
fc8e529e7d
refactor(ui): modal: use hidden class
2026-04-25 21:10:04 +02:00
Edouard Vanbelle
a38bcc01de
refactor(ui): normalize about modal with hidden class
2026-04-25 21:09:55 +02:00
Edouard Vanbelle
832c9ab577
improve(ui): dialog: add escape key on shared dialog + perfer hidden class
2026-04-25 21:09:41 +02:00
Edouard Vanbelle
24967489e1
improve(ui) favorite star: remove duplicate information on item + badge-shared: click on it to open share dialog
2026-04-25 21:09:05 +02:00
Edouard Vanbelle
bdb5a6c7a9
fix(ui): correct close button on shared dialog
...
- close is more appropriate rather cancel
- translate shared dialog
2026-04-25 21:09:05 +02:00
Edouard Vanbelle
1fd92f9efa
fix(ui): update shared badge on change
2026-04-25 21:08:38 +02:00
Edouard Vanbelle
1d8da579cc
refactor(ui): keep badges order (favorite, shared)
2026-04-24 23:07:33 +02:00
Diocrafts
d18bf0d1ce
new images
2026-04-20 21:09:30 +02:00
Edouard Vanbelle
e2f8e8513f
fix(navigation): correct recent section
2026-04-17 13:46:24 +02:00
Edouard Vanbelle
ceff552736
feat(shared): show in classic view if an item is shared
2026-04-16 23:13:08 +02:00
Edouard Vanbelle
c8e67f77ea
fix(frontent): remove default section to avoid blink when hash in url is not 'file'
2026-04-16 23:13:08 +02:00
Edouard Vanbelle
9073274e69
fix(list-view/select-all-checkbox): avoid multiple listener on select all checkbox
2026-04-16 01:06:09 +02:00
Edouard Vanbelle
c8dbcd2409
fix(multi-select/action bar): keep large bar
2026-04-16 00:58:11 +02:00
Edouard Vanbelle
8e18e0c848
fix(section/favorite): ensure select-all-checkbox is wired
2026-04-16 00:57:01 +02:00
Dionisio Pozo
3276da366c
Merge pull request #298 from EdouardVanbelle/feat/buttons
2026-04-16 00:46:39 +02:00
Dionisio Pozo
2a1e771355
Merge pull request #294 from EdouardVanbelle/chore/add-script-to-populate-icons
2026-04-16 00:13:21 +02:00
Edouard Vanbelle
7bb4ed0940
refactor(frontend/sections): remove app.is{Xxx}View and use only app.currentSection
2026-04-16 00:01:50 +02:00
Edouard Vanbelle
33165c6d5a
feat(frontand/buttons): move multiselect into buttons = keep visible card/list selector
2026-04-15 23:49:20 +02:00
Edouard Vanbelle
30fffbdd33
refactor(music): use music icon rather svg
2026-04-15 08:49:17 +02:00
Edouard Vanbelle
4c327b3fe1
fix(icons): add missing referenced icons
...
- icons added via tools/check-icons.py
2026-04-15 08:49:17 +02:00
Dionisio Pozo
4d0ad666bd
Merge pull request #296 from EdouardVanbelle/fix/music
2026-04-15 06:01:56 +02:00
Edouard Vanbelle
0b27c3b400
fix(navigation): correct hash url and navigation to music
2026-04-15 00:39:37 +02:00
Edouard Vanbelle
6e3d87c27e
style(front): correct format
2026-04-15 00:15:53 +02:00
Diocrafts
cd3733b459
feat: pluggable storage backends (S3, Azure, local) with admin UI
...
Implement 4-phase external storage backends architecture:
Phase 1 - Foundation:
- BlobStorageBackend trait (application/ports/blob_storage_ports.rs)
- LocalBlobBackend: extracted all tokio::fs ops from DedupService
- S3BlobBackend: AWS SDK with custom endpoint support (MinIO, R2, B2)
- DedupService refactored to use Arc<dyn BlobStorageBackend>
Phase 2 - Admin Panel:
- StorageSettingsService with DB persistence + env override
- Storage tab in admin panel (backend selector, S3 form, provider presets)
- GET/PUT/POST endpoints for storage settings + connection test
- i18n keys (en/es) and BEM CSS
Phase 3 - Migration:
- MigrationBlobBackend decorator (dual-read: target-first + source fallback)
- Background migration job with parallel transfers + progress tracking
- Migration UI (progress bar, ETA, pause/resume/verify/complete)
- 6 admin API endpoints for migration lifecycle
Phase 4 - Enterprise Extras:
- CachedBlobBackend: LRU disk cache for remote backends
- EncryptedBlobBackend: AES-256-GCM at-rest encryption
- AzureBlobBackend: Azure Blob Storage support
- RetryBlobBackend: exponential backoff for transient errors
- Decorator composition in DI: retry → encryption → cache
All 223 tests passing, clippy clean, fmt verified.
2026-04-14 21:33:38 +02:00
Edouard Vanbelle
6f4abfcec4
refactor(js): avoid use of window.XXX and move to import/export
...
- change worker: do not cache html pages (not necessary)
- remove use of window.XXX and maximize import/export,
this will provide more clarety,
show circular dependencies + you will benefit IDE help
2026-04-14 19:05:01 +02:00
Edouard Vanbelle
2061f8808b
style(front): apply biome recos
2026-04-14 13:33:55 +02:00
Edouard Vanbelle
d01b2c6ec4
refactor(css): use variable rather direct color
2026-04-14 13:33:51 +02:00
Dionisio Pozo
65c8fc7f5e
Merge pull request #288 from EdouardVanbelle/fix/frontend-search-view
2026-04-13 14:42:24 +02:00
Dionisio Pozo
f74cf4d9b5
Merge pull request #287 from EdouardVanbelle/fix/frontend-shared-view
2026-04-13 14:41:48 +02:00
Edouard Vanbelle
2733542bce
refactor(css): dark theme: remove and merge specific cases
2026-04-13 13:26:38 +02:00
Edouard Vanbelle
e6a815a03c
refactor(css): dark theme: merge photos
2026-04-13 13:26:38 +02:00
Edouard Vanbelle
f7c7136149
refactor(css): dark theme: merge notfication + dropzone
2026-04-13 13:26:38 +02:00
Edouard Vanbelle
260eb4d4c8
refactor(css): merge context menu for dark theme
2026-04-13 13:26:38 +02:00
Edouard Vanbelle
4dff552299
refactor(css): use 1 global declaration for scrollbar
2026-04-13 13:26:38 +02:00