Commit Graph

107 Commits

Author SHA1 Message Date
Edouard Vanbelle 29d8aab9c0 feat(resourceList): keep consistence in groupby options order accross sectons + add userVignette on owner's swimlane 2026-05-28 12:12:22 +02:00
Edouard Vanbelle 73e78904e7 feat(recent): add cursor + groupby support 2026-05-28 12:12:22 +02:00
Edouard Vanbelle bd474aa67e feat(viewPref): keep record of user view preferences per section (groupBy, order, list or grid) 2026-05-28 12:12:22 +02:00
Edouard Vanbelle 7f4b329718 feat(itemToolltip): fusion pathTooltip + ownerTooltip into itemToolltip, move it in the header for more visibility 2026-05-28 12:12:22 +02:00
Edouard Vanbelle 607ae5e6df feat(resources): add cursor, group by on /api/favorites/resources 2026-05-28 12:12:22 +02:00
Edouard Vanbelle 5790a1459f feat(folders): add curser and the normalized way to get foler's item list. add reverse order 2026-05-28 12:12:22 +02:00
Edouard Vanbelle 859f9b5f86 refactor: separate roles between ui, fileView, resourceList 2026-05-28 00:15:05 +02:00
Edouard Vanbelle 5afb30ebfd feat(swimlane): add swimlane engine with first version on SharedWithMe section
added group by:

        - None (= ordered by folders/file name)
        - Type (Folder first, then Image, Vidao, Audio, Document, etc...)
        - Owner
        - Size (With logarithmic groups))
        - Shared date (with groups: today, last 7 days, last 30 days, then year)
2026-05-28 00:15:05 +02:00
Edouard Vanbelle 720bf11168 use of resourceList 2026-05-28 00:15:05 +02:00
Edouard Vanbelle 6ac4e6177c refactor(js): move multiSelect into batchToolbar + move residual method into relevant components 2026-05-28 00:15:05 +02:00
Edouard Vanbelle b0c5e7827e feat(user-avatar): users can now edit there image (image is taken from OIDC picture) 2026-05-27 11:29:33 +02:00
Edouard Vanbelle 8365608bd5 feat(list view): show the owner of the File or Folder in list view 2026-05-25 22:48:59 +02:00
Edouard Vanbelle 79c1a37931 feat(ui): 1 modal to manage shares (users & public share)
fix(share): ensure Authz parent is created/updated on publicShare create/update

fix(ShareModal): do not show Token (public) grants in People section
2026-05-25 22:47:36 +02:00
Edouard Vanbelle a88e4c2733 refactor: move modal into components (prepare a mode autonomous components) 2026-05-25 22:47:36 +02:00
Edouard Vanbelle 7fd444259f fix(breadcrumb): simplify breadcrumb logic and fix issue with shared items 2026-05-25 22:47:36 +02:00
Edouard Vanbelle 60d53ea779 feat(ui): add section 'Shared with me' 2026-05-25 22:47:32 +02:00
Edouard Vanbelle 191f725199 feat(ui/trash): show original file path in tooltip on mouse over + display thumbnails
* fix: permission also check elements trashed elements
 * tested manually
 * all automated tests ok
2026-05-22 02:26:11 +02:00
Edouard Vanbelle 0fba4ce7bc fix(ui): clear empty state on folder creation 2026-05-19 11:16:27 +02:00
Edouard Vanbelle 82561a2b90 fix(ui): add RecentItem type + ad protection while building items 2026-05-19 10:18:40 +02:00
Edouard Vanbelle fac184ccfe style(front/js): apply types on all objects
- reduce amount of warnings in IDE
    - maximize API type mapping with static/js/core/types.js
2026-05-19 10:18:33 +02:00
Kamil Alekberov fe0a8c7f72 feat(ui): improve mobile search and consolidate language selector
- On mobile (≤768px), replace the full search bar in the topbar with a
  search icon button; tapping it expands a full-width search overlay
  with a back arrow to collapse (Google Drive-style pattern)
- Escape key also collapses the mobile search overlay
- Hide the redundant inline search icon when the mobile search bar is
  active (submit button already has one)
- Move the language selector from the topbar into the user menu for all
  screen sizes, reducing topbar clutter; it renders as an accordion row
  matching other menu items
- Fix user menu positioning in RTL layouts (Arabic/Persian): anchor to
  left:0 instead of right:0 so the panel opens inward rather than
  off-screen
2026-05-17 18:41:34 +05:00
Edouard Vanbelle 85c8c086ac fix(ui): fix go to parent + refactor types 2026-05-12 00:22:51 +02:00
Edouard Vanbelle 6e4699ff9c feat(ui): drop from system available only on files section
* prevent dropzone if not on files section
 * show a notification to user to use files section
 * solve #357
2026-05-09 19:22:15 +02:00
Edouard Vanbelle 7697f3d35b feat(ui): handle errors on folder creation or folder/file renaming
- protect file_management_service::rename_file with validate_storage_name
 - remove specific rename modal and use the generic modal class (less duplicate)
 - handle errors on modal action: do not close the modal on error and display this error
 - hide "Go to parent folder" contextMenu if section is files and folder is the same as current one
2026-05-09 00:06:36 +02:00
Dionisio Pozo 52f4a865a9 Merge pull request #349 from EdouardVanbelle/feat/item-path-tool-tip+go-to-parent
show item path on Recent + Favorite, add go to parent folder, fix Folder browsing in Favorites
2026-05-08 01:22:08 +02:00
Dionisio Pozo 71fd84dd9d Merge pull request #350 from EdouardVanbelle/fix/blank-section-on-token-expired
fix(ui): handle any session expired and trigger transparently a refresh token
2026-05-08 01:21:42 +02:00
Edouard Vanbelle 93d9a21013 fix(ui): admin panel, profile: restore missing icons library 2026-05-07 22:43:02 +02:00
Edouard Vanbelle a69dde35ce fix(ui): handle any session expired and trigger transparently a refresh token
this change replace original window.fetch by a wrapper that check any 401 response, is so it will request a refresh token
this solve current issue with Favorites & Recent sections that give blank page when token is expired

- exclusion of requests to other domain (401 will not be handled here)
- security with shares /api/s is not handled

- check with CSRF, no risk
2026-05-07 00:55:21 +02:00
Edouard Vanbelle 8e1e9fe201 show item path on Recent + Favorites, add go to parent folder, fix Folder browsing in Favorites 2026-05-06 23:36:05 +02:00
Edouard Vanbelle 05037e7491 feat(ui): permit drag&drop to the operating system
a drop outside of the browser will:
  - upload the file if only 1 file selected
  - upload a .zip of the directory or multiple selection (browsers do not permit multiple upload yet)

note: I had to create a new handler because a post request to /api/batch/download is possible via JS but it will create a memory blob in the browser, during the drag action.

This may exhaust the browser's memory if heavy files
This will initiate zip creation from the server even if drop is canceled
The best approach is to add a handler supporting GET calls, this call will be triggered by the browser on drop action outside of it's window
2026-05-04 22:32:31 +02:00
Edouard Vanbelle e802cdb268 improvement(ui): thumbnail generaiton uses now mime_type (ex: for .ogg containers can be music or video)
- improve also error handling (shows reason of thumbnail generation failure)
2026-05-04 21:16:50 +02:00
Edouard Vanbelle 1d2085457e feath(ui): photo lib now using thumbnail library 2026-05-04 21:08:19 +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
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
Edouard Vanbelle 08cbf3a423 style(ui): apply biome recos 2026-04-26 00:22:49 +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 1d8da579cc refactor(ui): keep badges order (favorite, shared) 2026-04-24 23:07:33 +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 9073274e69 fix(list-view/select-all-checkbox): avoid multiple listener on select all checkbox 2026-04-16 01:06:09 +02:00
Edouard Vanbelle 8e18e0c848 fix(section/favorite): ensure select-all-checkbox is wired 2026-04-16 00:57:01 +02:00