Edouard Vanbelle
657056d7aa
fix(shares): remove orphan shares
...
* a share without associated grant cannot exists (clen / trigger added)
* reflect changes in documentatiion
2026-06-01 13:12:05 +02:00
Dionisio Pozo
287365fed9
Merge pull request #408 from EdouardVanbelle/feat/groups
...
feat(groups): add group, will permit ReBAC to use All users, or a defined group with permission to files/folders
2026-06-01 08:30:26 +02:00
Edouard Vanbelle
64fe8aa3dc
fix(GroupModal): fix the display of a child group (show it's name rather it's UUID)
2026-05-31 23:53:44 +02:00
Edouard Vanbelle
d2dedcbb00
fix(integration-test): ensure integration tests are runned on a separate DB to avoid polution
2026-05-31 23:53:40 +02:00
Edouard Vanbelle
274cf9da11
fix(ShareModal): ensure correct order of roles (Most powerfull first)
2026-05-31 23:05:05 +02:00
Edouard Vanbelle
a0d9cd881b
fix(MyShares): correct order if items in MyShares view, when grouped by Files
2026-05-31 23:02:19 +02:00
Edouard Vanbelle
c7e950a707
fix(myshares): update view on expiration date changed
2026-05-31 22:53:29 +02:00
Edouard Vanbelle
e169f53218
test(integration): add integration test on subject group
2026-05-31 22:45:09 +02:00
Edouard Vanbelle
03ee05a74a
docs: add documentation explaining ReBAC Authz architecture
2026-05-31 22:09:12 +02:00
Edouard Vanbelle
96097431c3
test(api): upgrade tests to new routes (don't use deprecated routes anymore)
2026-05-31 20:58:01 +02:00
Edouard Vanbelle
8b4edb1189
fix(openapi): expose route missing /api/.../resources to openapi
2026-05-31 20:58:01 +02:00
Edouard Vanbelle
09985f8a95
feat(group): 1st implementation of Groups
...
this implements first version (manageable only by admin right now)
routes:
GET /api/groups
List subject groups (paginated). Admin-only.
POST /api/groups
Create a new ReBAC subject group. Admin-only. The name must match the RFC 5321 local-part shape and be globally unique (case-insensitive).
GET /api/groups/search
Search non-virtual groups by name substring. Authenticated only (no admin role required) — backs the share-dialog recipient autocomplete.
GET /api/groups/{id}
Fetch a single group's details. Admin-only.
DELETE /api/groups/{id}
Delete a group. Cascades to `subject_group_members` (FK) and to `access_grants` rows referencing this group as a subject. Admin-only.
PATCH /api/groups/{id}
Update a group's metadata. Admin-only. v1 only persists name renames.
GET /api/groups/{id}/effective-members
List every user transitively reached through this group (members of members of members, etc.). Used by admin / audit tooling. Admin-only.
GET /api/groups/{id}/members
List the *direct* members of a group (one level only). Admin-only.
POST /api/groups/{id}/members
Add a member to a group. Exactly one of `user_id` / `group_id` must be provided. Adding a group-member runs a write-time cycle check and a nesting-depth check (max 8). Admin-only.
DELETE /api/groups/{id}/members/group/{gid}
Remove a nested group-member from a group. Admin-only.
DELETE /api/groups/{id}/members/user/{uid}
Remove a user-member from a group. Admin-only.
fix hurl
groups
round
groups
2026-05-31 20:57:45 +02:00
Dionisio Pozo
41356b6490
Merge pull request #409 from jonathansmith9485/397/bug/helm_chart_correction
...
FIX : bug 397 add: helm chart changes
2026-05-31 12:24:52 +02:00
bubu
d707200055
add: helm chart changes
2026-05-31 03:53:33 +02:00
Dionisio Pozo
f6817f83e6
Merge pull request #405 from EdouardVanbelle/feat-light-dark-like_os
2026-05-30 15:09:15 +02:00
Dionisio Pozo
a19a9000c7
Merge pull request #406 from EdouardVanbelle/feat/trash-with-cursor-and-resourceList-component
2026-05-30 15:09:00 +02:00
Edouard Vanbelle
19e8af84b7
feat(ui): improve groupby / sortby user experience + fix confusion in trash section
2026-05-30 11:15:46 +02:00
Edouard Vanbelle
ae82f4b664
fix(MyShares): show tooltip when mouse over an item + fix the path
2026-05-30 10:41:16 +02:00
Edouard Vanbelle
3bcb3a5b3f
ux(tooltip): fix(tooltip): move tooltip into top-bar, that fix issue with RTE languages
2026-05-30 10:38:43 +02:00
Edouard Vanbelle
fe9cc10648
i18n: add missing translations
2026-05-30 09:51:47 +02:00
Edouard Vanbelle
ca1a2bb649
feat(light-dark): normalize light/dark/like-os mode
...
permits user to define light, dark or like the desktop
2026-05-30 09:36:15 +02:00
Edouard Vanbelle
ea83891a61
feat(trash): move trash API to normalized version (with cursor, orderBy) + normalize Trash section to existing components
...
normalize also component to format badges (expiry, role, etc)
2026-05-30 00:49:32 +02:00
Dionisio Pozo
ed1ebadd91
Merge pull request #393 from Cilenco/fix/rootless-docker-run
2026-05-29 22:01:54 +02:00
Dionisio Pozo
6dab878919
Merge pull request #402 from EdouardVanbelle/feat/my-shares
2026-05-29 17:03:25 +02:00
Christian Dielitz
e06e9c8b09
Adjusted entrypoint.sh to be posix conform
2026-05-29 16:51:05 +02:00
Edouard Vanbelle
615657a7be
fix(shares): fix outgoing shares when browsing in files, fix shareBadge action to open shareDialog
2026-05-29 14:08:41 +02:00
Edouard Vanbelle
eef67973b3
fix(myshares): reload on any change from ShareModal
2026-05-29 13:48:25 +02:00
Edouard Vanbelle
804cb7c6af
fix(build): improve builder to use CSS from html rather an hardcoded list
2026-05-29 13:48:22 +02:00
Edouard Vanbelle
6e5c5edd85
chore(ui): apply biome formatter
2026-05-29 13:15:31 +02:00
Edouard Vanbelle
3f70c7e20a
refactor(server): remove sort by size in pg_acl_engine.rs (dead code)
2026-05-29 13:14:16 +02:00
Edouard Vanbelle
b782a59766
refactor(ui): move deprecated to call /api/folders/id/content to the cursor version /api/folders/id/resources
2026-05-29 13:13:23 +02:00
Edouard Vanbelle
5a43b14e29
test(api): move deprecated call to new one
2026-05-29 13:13:23 +02:00
Edouard Vanbelle
ae4fb7603a
refactor(front): remove dead code (old Shared section)
2026-05-29 13:13:23 +02:00
Edouard Vanbelle
6e30353c4b
chore(deprecated api): log a warning on serverside if a deprecated route is still used
2026-05-29 13:13:23 +02:00
Edouard Vanbelle
d88b3a313f
fix(recent): prevent recent API having non UUID entries + correct any invalid entry in recent database
...
note: issue may have been on my side during test implementation, in any case the protection is required
2026-05-29 13:13:23 +02:00
Edouard Vanbelle
63722c868e
feat(myshares): new version of myshares sections, supporting grants Users + Tokens
2026-05-29 13:12:59 +02:00
Dionisio Pozo
1deb8b2d80
Update README.md
2026-05-28 22:44:49 +02:00
Dionisio Pozo
7df5d20061
Update README.md
2026-05-28 22:42:47 +02:00
Dionisio Pozo
663500754d
Add files via upload
2026-05-28 22:37:31 +02:00
Edouard Vanbelle
8800353900
refactor(share,grants): migrate expiration from legacy share into grants, simplify legacy share, normalize shareModal for better UX
2026-05-28 20:00:06 +02:00
Dionisio Pozo
84d57dd2ae
Merge pull request #399 from EdouardVanbelle/feat/implement-cursor-on-main-lists
2026-05-28 17:29:48 +02:00
Dionisio Pozo
553779a8f9
Merge pull request #400 from EdouardVanbelle/feat/server-no-reuse-port-by-default
2026-05-28 17:29:27 +02:00
Edouard Vanbelle
99da124388
fix(ui/thumbnail): fix thumbnail generation in release
...
- reference to /vendors/ must be absolute path (the bundle isn't the same path as the current library doing the lazy loading)
2026-05-28 14:22:57 +02:00
Edouard Vanbelle
636f0b87bd
fix(builder): add OXC semantic to deconflic JS modules using the same global variables/functions
...
- this solve issues like: Uncaught SyntaxError: Identifier 'GROUP_BY_DEFS' has already been declared (at app.XXXX.js)
- add a protection on build: test to reload bundled app, on failure exit immediately (prevent the build or a broken bundle)
- add final check during CI: node --check on the bundle to brevent going to production too if any failure
example of a bundle:
```
warning: oxicloud@0.6.0: bundle: 50 files in dependency order:
warning: oxicloud@0.6.0: bundle: deconflicting 2 name(s): GROUP_BY_DEFS, LOAD_MORE_ID
warning: oxicloud@0.6.0: bundle: [29] GROUP_BY_DEFS -> GROUP_BY_DEFS_29 (favoritesView.js)
warning: oxicloud@0.6.0: bundle: [29] LOAD_MORE_ID -> LOAD_MORE_ID_29 (favoritesView.js)
warning: oxicloud@0.6.0: bundle: [31] GROUP_BY_DEFS -> GROUP_BY_DEFS_31 (recentView.js)
warning: oxicloud@0.6.0: bundle: [31] LOAD_MORE_ID -> LOAD_MORE_ID_31 (recentView.js)
warning: oxicloud@0.6.0: bundle: [34] GROUP_BY_DEFS -> GROUP_BY_DEFS_34 (sharedWithMeView.js)
warning: oxicloud@0.6.0: bundle: [34] LOAD_MORE_ID -> LOAD_MORE_ID_34 (sharedWithMeView.js)
warning: oxicloud@0.6.0: bundle: [44] GROUP_BY_DEFS -> GROUP_BY_DEFS_44 (filesView.js)
warning: oxicloud@0.6.0: bundle: [44] LOAD_MORE_ID -> LOAD_MORE_ID_44 (filesView.js)
```
2026-05-28 14:22:53 +02:00
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
80c9ace108
chore(i18n): add missing translations
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