@fnndsc/salsa 3.5.1 → 3.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/README.md +3 -3
  2. package/dist/connect/index.d.ts +11 -0
  3. package/dist/connect/index.js +11 -0
  4. package/dist/connect/index.js.map +1 -1
  5. package/dist/dag/feedJoins.js +8 -7
  6. package/dist/dag/feedJoins.js.map +1 -1
  7. package/dist/feeds/index.d.ts +15 -2
  8. package/dist/feeds/index.js.map +1 -1
  9. package/dist/files/index.d.ts +7 -0
  10. package/dist/files/index.js +12 -11
  11. package/dist/files/index.js.map +1 -1
  12. package/dist/files/regular_content.js +11 -3
  13. package/dist/files/regular_content.js.map +1 -1
  14. package/dist/groups/index.d.ts +59 -0
  15. package/dist/groups/index.js +89 -0
  16. package/dist/groups/index.js.map +1 -1
  17. package/dist/groups/membershipRevision.d.ts +19 -0
  18. package/dist/groups/membershipRevision.js +29 -0
  19. package/dist/groups/membershipRevision.js.map +1 -0
  20. package/dist/index.d.ts +3 -1
  21. package/dist/index.js +5 -1
  22. package/dist/index.js.map +1 -1
  23. package/dist/jobs/jobOps.d.ts +4 -9
  24. package/dist/jobs/jobOps.js +77 -39
  25. package/dist/jobs/jobOps.js.map +1 -1
  26. package/dist/pipelines/diagram.js +19 -9
  27. package/dist/pipelines/diagram.js.map +1 -1
  28. package/dist/pipelines/index.d.ts +28 -5
  29. package/dist/pipelines/index.js +118 -57
  30. package/dist/pipelines/index.js.map +1 -1
  31. package/dist/pipelines/invocation.d.ts +80 -0
  32. package/dist/pipelines/invocation.js +290 -0
  33. package/dist/pipelines/invocation.js.map +1 -0
  34. package/dist/pipelines/manifest.d.ts +88 -0
  35. package/dist/pipelines/manifest.js +216 -0
  36. package/dist/pipelines/manifest.js.map +1 -0
  37. package/dist/plugins/index.d.ts +29 -0
  38. package/dist/plugins/index.js +51 -10
  39. package/dist/plugins/index.js.map +1 -1
  40. package/dist/plugins/internal/plugin_executeNewFeed.d.ts +0 -14
  41. package/dist/plugins/internal/plugin_executeNewFeed.js +3 -3
  42. package/dist/plugins/internal/plugin_executeNewFeed.js.map +1 -1
  43. package/dist/plugins/plugin_register.js +5 -5
  44. package/dist/plugins/plugin_register.js.map +1 -1
  45. package/dist/plugins/store_import.js +1 -1
  46. package/dist/plugins/store_import.js.map +1 -1
  47. package/dist/retrieve/watch.d.ts +114 -0
  48. package/dist/retrieve/watch.js +358 -0
  49. package/dist/retrieve/watch.js.map +1 -0
  50. package/dist/store/index.d.ts +17 -4
  51. package/dist/store/index.js +9 -4
  52. package/dist/store/index.js.map +1 -1
  53. package/dist/users/index.d.ts +36 -0
  54. package/dist/users/index.js +50 -0
  55. package/dist/users/index.js.map +1 -0
  56. package/dist/vfs/dispatcher.d.ts +11 -0
  57. package/dist/vfs/dispatcher.js +37 -6
  58. package/dist/vfs/dispatcher.js.map +1 -1
  59. package/dist/vfs/index.d.ts +1 -0
  60. package/dist/vfs/index.js +3 -0
  61. package/dist/vfs/index.js.map +1 -1
  62. package/dist/vfs/provider.d.ts +13 -0
  63. package/dist/vfs/providers/etc.d.ts +2 -0
  64. package/dist/vfs/providers/etc.js +41 -2
  65. package/dist/vfs/providers/etc.js.map +1 -1
  66. package/dist/vfs/providers/native.js +41 -7
  67. package/dist/vfs/providers/native.js.map +1 -1
  68. package/dist/vfs/providers/pacs.d.ts +13 -1
  69. package/dist/vfs/providers/pacs.js +86 -107
  70. package/dist/vfs/providers/pacs.js.map +1 -1
  71. package/dist/vfs/providers/pacsHelpers.js +9 -5
  72. package/dist/vfs/providers/pacsHelpers.js.map +1 -1
  73. package/dist/vfs/providers/proc.d.ts +34 -1
  74. package/dist/vfs/providers/proc.js +314 -84
  75. package/dist/vfs/providers/proc.js.map +1 -1
  76. package/package.json +11 -8
package/README.md CHANGED
@@ -134,13 +134,13 @@ Providers implement a common interface: `list(path)` → `Result<VFSItem[]>` and
134
134
  ├── title
135
135
  └── pl-dircopy_456/ ← type=job in VFSItem; ls -l shows colour-coded status
136
136
  ├── status ← live API fetch if non-terminal
137
- ├── params ← key=value, cached permanently
138
- ├── log ← never cached, always live
137
+ ├── params ← complete effective key=value run parameters, cached permanently
138
+ ├── log ← never cached; decoded from CUBE's `raw` response
139
139
  └── pl-fshack_789/
140
140
  └── …
141
141
  ```
142
142
 
143
- The cache (`ProcCache` in cumin) holds two flat maps (`instances`, `children`/`feedRoots`) for O(1) lookup and O(depth) path reconstruction. Structure is permanent; only status of non-terminal nodes is refreshed on read.
143
+ The cache (`ProcCache` in cumin) holds flat topology maps for O(1) lookup and O(depth) path reconstruction. The daemon restores this normalized graph from an identity-scoped local checkpoint, validates visible feeds, then reconciles only new, changed, and active feeds; `proc refresh` explicitly runs the paginated global CUBE sweep. Terminal status persists; active status remains live. `params` reads the complete `PluginInstance.parameters` collection, rather than instance-detail metadata. Logs remain uncached: ChELL decodes CUBE's base64/zlib-compressed `PluginInstance.raw` response and reads `compute.logs`; it never fetches from a spoke.
144
144
 
145
145
  ## Development
146
146
 
@@ -3,6 +3,9 @@
3
3
  *
4
4
  * @module
5
5
  */
6
+ import { type ElevationCredentials as CuminElevationCredentials } from "@fnndsc/cumin";
7
+ /** Credentials used for one non-persistent elevated CUBE operation. */
8
+ export type ElevationCredentials = CuminElevationCredentials;
6
9
  /**
7
10
  * Options for connecting to a ChRIS backend (url, username, password).
8
11
  */
@@ -23,3 +26,11 @@ export declare function connect_do(options: ConnectOptions): Promise<boolean>;
23
26
  * Logs out of the current ChRIS session, clearing stored credentials.
24
27
  */
25
28
  export declare function logout_do(): Promise<void>;
29
+ /**
30
+ * Runs one operation with the supplied temporary CUBE identity.
31
+ *
32
+ * @param credentials - Credentials for the temporary CUBE identity.
33
+ * @param operation - Work to run while that identity is active.
34
+ * @returns The operation's result.
35
+ */
36
+ export declare function elevation_do<T>(credentials: ElevationCredentials, operation: () => Promise<T>): Promise<T>;
@@ -7,6 +7,7 @@
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
8
  exports.connect_do = connect_do;
9
9
  exports.logout_do = logout_do;
10
+ exports.elevation_do = elevation_do;
10
11
  const cumin_1 = require("@fnndsc/cumin");
11
12
  /**
12
13
  * Connects and authenticates against a ChRIS backend.
@@ -24,4 +25,14 @@ async function connect_do(options) {
24
25
  async function logout_do() {
25
26
  await cumin_1.chrisConnection.connection_logout();
26
27
  }
28
+ /**
29
+ * Runs one operation with the supplied temporary CUBE identity.
30
+ *
31
+ * @param credentials - Credentials for the temporary CUBE identity.
32
+ * @param operation - Work to run while that identity is active.
33
+ * @returns The operation's result.
34
+ */
35
+ async function elevation_do(credentials, operation) {
36
+ return await cumin_1.chrisConnection.elevation_withCredentials(credentials, operation);
37
+ }
27
38
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/connect/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAoBH,gCAGC;AAKD,8BAEC;AA5BD,yCAAgD;AAYhD;;;;;GAKG;AACI,KAAK,UAAU,UAAU,CAAC,OAAuB;IACtD,MAAM,KAAK,GAAkB,MAAM,uBAAe,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC/E,OAAO,KAAK,KAAK,IAAI,CAAC;AACxB,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,SAAS;IAC7B,MAAM,uBAAe,CAAC,iBAAiB,EAAE,CAAC;AAC5C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/connect/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AA0BH,gCAGC;AAKD,8BAEC;AASD,oCAKC;AAhDD,yCAGuB;AAevB;;;;;GAKG;AACI,KAAK,UAAU,UAAU,CAAC,OAAuB;IACtD,MAAM,KAAK,GAAkB,MAAM,uBAAe,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC/E,OAAO,KAAK,KAAK,IAAI,CAAC;AACxB,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,SAAS;IAC7B,MAAM,uBAAe,CAAC,iBAAiB,EAAE,CAAC;AAC5C,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,YAAY,CAChC,WAAiC,EACjC,SAA2B;IAE3B,OAAO,MAAM,uBAAe,CAAC,yBAAyB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AACjF,CAAC"}
@@ -46,15 +46,16 @@ async function nodeJoins_resolve(id) {
46
46
  const client = await cumin_1.chrisConnection.client_get();
47
47
  if (!client)
48
48
  return;
49
- const typedClient = client;
50
- const resource = await typedClient.getPluginInstance(id);
51
- if (!resource) {
52
- cache.joinParents_update(id, []);
49
+ const handle = await (0, cumin_1.pluginInstance_get)(client, id);
50
+ if (!handle) {
51
+ // A failed fetch must not be recorded as "no joins": writing an empty
52
+ // overlay here would be permanent, since resolved nodes are never
53
+ // retried. Leave the node unresolved so the next resolve attempts again.
54
+ cumin_1.errorStack.stack_push("warning", `Could not fetch instance ${id} to resolve join edges; will retry on next resolve.`);
53
55
  return;
54
56
  }
55
- const list = await resource.getParameters({ limit: 100 });
56
- const items = list.data ?? (list.getItems ? list.getItems().map((i) => i.data) : []);
57
- const param = items.find((p) => p.param_name === 'plugininstances');
57
+ const page = await handle.parametersPage_get({ limit: 100, offset: 0 });
58
+ const param = page.data.find((p) => p.param_name === 'plugininstances');
58
59
  // Overlay = the join's sources minus its anchor parent (which is also in the list).
59
60
  const sources = param ? joinIDs_parse(param.value) : [];
60
61
  const overlay = sources.filter((n) => n !== inst.parentID);
@@ -1 +1 @@
1
- {"version":3,"file":"feedJoins.js","sourceRoot":"","sources":["../../src/dag/feedJoins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feedJoins.js","sourceRoot":"","sources":["../../src/dag/feedJoins.ts"],"names":[],"mappings":";;AAiDA,8CA0BC;AAQD,4CAQC;AA3FD;;;;;;;;;;;;;GAaG;AACH,yCAUuB;AAEvB,sFAAsF;AACtF,MAAM,eAAe,GAAW,kBAAkB,CAAC;AAEnD,6FAA6F;AAC7F,SAAS,WAAW,CAAC,IAAkB;IACrC,IAAI,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC;IACrD,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAC/C,CAAC;AAED,4EAA4E;AAC5E,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;SACvB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAS,EAAU,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;SAClD,MAAM,CAAC,CAAC,CAAS,EAAW,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACtD,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,iBAAiB,CAAC,EAAU;IAChD,MAAM,KAAK,GAAc,IAAA,qBAAa,GAAE,CAAC;IACzC,MAAM,IAAI,GAA6B,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS;QAAE,OAAO;IAE5E,MAAM,MAAM,GAAG,MAAM,uBAAe,CAAC,UAAU,EAAE,CAAC;IAClD,IAAI,CAAC,MAAM;QAAE,OAAO;IAEpB,MAAM,MAAM,GAAgC,MAAM,IAAA,0BAAkB,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACjF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,sEAAsE;QACtE,kEAAkE;QAClE,yEAAyE;QACzE,kBAAU,CAAC,UAAU,CAAC,SAAS,EAAE,4BAA4B,EAAE,qDAAqD,CAAC,CAAC;QACtH,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GAAoC,MAAM,MAAM,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IACzG,MAAM,KAAK,GAAsC,IAAI,CAAC,IAAI,CAAC,IAAI,CAC7D,CAAC,CAAwB,EAAW,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,iBAAiB,CAC1E,CAAC;IAEF,oFAAoF;IACpF,MAAM,OAAO,GAAa,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClE,MAAM,OAAO,GAAa,OAAO,CAAC,MAAM,CAAC,CAAC,CAAS,EAAW,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtF,KAAK,CAAC,kBAAkB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;AACxC,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,gBAAgB,CAAC,MAAc;IACnD,MAAM,KAAK,GAAc,IAAA,qBAAa,GAAE,CAAC;IACzC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,GAA6B,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YAClE,MAAM,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -2,9 +2,22 @@
2
2
  * @file Feed management operations.
3
3
  * @module
4
4
  */
5
- import { SimpleRecord, ChRISObjectParams, FilteredResourceData, ListOptions } from '@fnndsc/cumin';
5
+ import { ChRISObjectParams, FilteredResourceData, ListOptions } from '@fnndsc/cumin';
6
6
  export { feedNote_get, feedNote_update, feedComments_list, feedComment_create, feedComment_delete, feedComment_update, } from '@fnndsc/cumin';
7
7
  export type { FeedNote, FeedComment } from '@fnndsc/cumin';
8
+ /** Feed identity plus the pl-dircopy instance that created it. */
9
+ export interface FeedCreationResult {
10
+ id: number;
11
+ name: string;
12
+ owner_username: string;
13
+ pluginInstance: {
14
+ data: {
15
+ id: number;
16
+ [key: string]: unknown;
17
+ };
18
+ };
19
+ [key: string]: unknown;
20
+ }
8
21
  /**
9
22
  * List feeds based on options.
10
23
  *
@@ -35,7 +48,7 @@ export declare function feedFields_get(): Promise<string[] | null>;
35
48
  * @param params - Optional parameters for the feed (e.g., name, tags).
36
49
  * @returns A Promise resolving to the created feed record, or null if creation failed.
37
50
  */
38
- export declare function feed_create(dirs: string[], params?: ChRISObjectParams): Promise<SimpleRecord | null>;
51
+ export declare function feed_create(dirs: string[], params?: ChRISObjectParams): Promise<FeedCreationResult | null>;
39
52
  /**
40
53
  * Interface for feed sharing options.
41
54
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/feeds/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAgCH,gCAGC;AAQD,sCAGC;AAOD,wCASC;AAYD,kCAMC;AAiBD,kCAYC;AAQD,kCAGC;AAtHD,yCAYuB;AAEvB,uCAOuB;AANrB,qGAAA,YAAY,OAAA;AACZ,wGAAA,eAAe,OAAA;AACf,0GAAA,iBAAiB,OAAA;AACjB,2GAAA,kBAAkB,OAAA;AAClB,2GAAA,kBAAkB,OAAA;AAClB,2GAAA,kBAAkB,OAAA;AAIpB;;;;;GAKG;AACI,KAAK,UAAU,UAAU,CAAC,OAAoB;IACnD,MAAM,SAAS,GAAmB,IAAI,sBAAc,EAAE,CAAC;IACvD,OAAO,MAAM,SAAS,CAAC,KAAK,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC;AACzE,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,aAAa,CAAC,OAA8B;IAChE,MAAM,SAAS,GAAmB,IAAI,sBAAc,EAAE,CAAC;IACvD,OAAO,MAAM,SAAS,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;AACzD,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,cAAc;IAClC,MAAM,SAAS,GAAmB,IAAI,sBAAc,EAAE,CAAC,CAAC,uBAAuB;IAE/E,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;IAC3D,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACzC,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,WAAW,CAAC,IAAc,EAAE,SAA4B,EAAE;IAC9E,MAAM,SAAS,GAAc,IAAI,iBAAS,EAAE,CAAC;IAC7C,oDAAoD;IACpD,MAAM,OAAO,GAAW,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEpE,OAAO,MAAM,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC;AAUD;;;;;;GAMG;AACI,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,OAAyB;IACzE,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAoB,MAAM,IAAA,uBAAe,EAAC,MAAM,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC;IACnC,CAAC;SAAM,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;QACvC,MAAM,MAAM,GAAoB,MAAM,IAAA,wBAAgB,EAAC,MAAM,CAAC,CAAC;QAC/D,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC;IACnC,CAAC;IAED,6EAA6E;IAC7E,kBAAU,CAAC,UAAU,CAAC,OAAO,EAAE,wDAAwD,CAAC,CAAC;IACzF,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,WAAW,CAAC,EAAU;IAC1C,MAAM,MAAM,GAAoB,MAAM,IAAA,mBAAiB,EAAC,EAAE,CAAC,CAAC;IAC5D,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/feeds/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AA6CH,gCAGC;AAQD,sCAGC;AAOD,wCASC;AAYD,kCASC;AAiBD,kCAYC;AAQD,kCAGC;AAtID,yCAWuB;AAEvB,uCAOuB;AANrB,qGAAA,YAAY,OAAA;AACZ,wGAAA,eAAe,OAAA;AACf,0GAAA,iBAAiB,OAAA;AACjB,2GAAA,kBAAkB,OAAA;AAClB,2GAAA,kBAAkB,OAAA;AAClB,2GAAA,kBAAkB,OAAA;AAkBpB;;;;;GAKG;AACI,KAAK,UAAU,UAAU,CAAC,OAAoB;IACnD,MAAM,SAAS,GAAmB,IAAI,sBAAc,EAAE,CAAC;IACvD,OAAO,MAAM,SAAS,CAAC,KAAK,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC;AACzE,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,aAAa,CAAC,OAA8B;IAChE,MAAM,SAAS,GAAmB,IAAI,sBAAc,EAAE,CAAC;IACvD,OAAO,MAAM,SAAS,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;AACzD,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,cAAc;IAClC,MAAM,SAAS,GAAmB,IAAI,sBAAc,EAAE,CAAC,CAAC,uBAAuB;IAE/E,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;IAC3D,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACzC,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,WAAW,CAC/B,IAAc,EACd,SAA4B,EAAE;IAE9B,MAAM,SAAS,GAAc,IAAI,iBAAS,EAAE,CAAC;IAC7C,oDAAoD;IACpD,MAAM,OAAO,GAAW,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEpE,OAAO,MAAM,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAA8B,CAAC;AACtF,CAAC;AAUD;;;;;;GAMG;AACI,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,OAAyB;IACzE,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAoB,MAAM,IAAA,uBAAe,EAAC,MAAM,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC;IACnC,CAAC;SAAM,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;QACvC,MAAM,MAAM,GAAoB,MAAM,IAAA,wBAAgB,EAAC,MAAM,CAAC,CAAC;QAC/D,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC;IACnC,CAAC;IAED,6EAA6E;IAC7E,kBAAU,CAAC,UAAU,CAAC,OAAO,EAAE,wDAAwD,CAAC,CAAC;IACzF,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,WAAW,CAAC,EAAU;IAC1C,MAAM,MAAM,GAAoB,MAAM,IAAA,mBAAiB,EAAC,EAAE,CAAC,CAAC;IAC5D,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC;AACnC,CAAC"}
@@ -28,6 +28,13 @@ export declare function files_listRecursive(rootPath: string): Promise<FsItem[]>
28
28
  * @returns A Promise resolving to true on success, false on failure.
29
29
  */
30
30
  export declare function files_copyRecursively(srcPath: string, destPath: string): Promise<boolean>;
31
+ /**
32
+ * Determines whether a given ChRIS path refers to a directory.
33
+ *
34
+ * @param targetPath - The absolute ChRIS path to check.
35
+ * @returns Promise resolving to true if the path is a directory, false otherwise.
36
+ */
37
+ export declare function files_path_isDirectory(targetPath: string): Promise<boolean>;
31
38
  /**
32
39
  * Uploads content to a specified ChRIS path, effectively creating or overwriting a file.
33
40
  *
@@ -40,6 +40,7 @@ var __importStar = (this && this.__importStar) || (function () {
40
40
  Object.defineProperty(exports, "__esModule", { value: true });
41
41
  exports.files_listRecursive = files_listRecursive;
42
42
  exports.files_copyRecursively = files_copyRecursively;
43
+ exports.files_path_isDirectory = files_path_isDirectory;
43
44
  exports.files_create = files_create;
44
45
  exports.files_touch = files_touch;
45
46
  exports.files_copy = files_copy;
@@ -122,10 +123,10 @@ async function files_copyRecursively(srcPath, destPath) {
122
123
  const relativePath = normalizedItemPath.substring(srcPath.length).replace(/^\//, '');
123
124
  const targetPath = path.posix.join(destPath, relativePath); // Use posix for ChRIS paths
124
125
  if (item.type === 'dir') {
125
- console.log(` Creating directory: ${targetPath}`);
126
+ (0, cumin_1.runtimeOutput_data)(` Creating directory: ${targetPath}\n`);
126
127
  const created = await files_mkdir(targetPath);
127
128
  if (!created) {
128
- console.warn(` Warning: Failed to create directory ${targetPath}`);
129
+ (0, cumin_1.runtimeOutput_err)(` Warning: Failed to create directory ${targetPath}\n`);
129
130
  failCount++;
130
131
  }
131
132
  else {
@@ -133,10 +134,10 @@ async function files_copyRecursively(srcPath, destPath) {
133
134
  }
134
135
  }
135
136
  else if (item.type === 'file') {
136
- console.log(` Copying file: ${path.posix.basename(normalizedItemPath)}`);
137
+ (0, cumin_1.runtimeOutput_data)(` Copying file: ${path.posix.basename(normalizedItemPath)}\n`);
137
138
  const copied = await files_copy(normalizedItemPath, targetPath);
138
139
  if (!copied) {
139
- console.warn(` Warning: Failed to copy file ${normalizedItemPath}`);
140
+ (0, cumin_1.runtimeOutput_err)(` Warning: Failed to copy file ${normalizedItemPath}\n`);
140
141
  failCount++;
141
142
  // Continue trying to copy other files instead of aborting
142
143
  }
@@ -145,7 +146,7 @@ async function files_copyRecursively(srcPath, destPath) {
145
146
  }
146
147
  }
147
148
  }
148
- console.log(`Copied ${successCount} items, ${failCount} failed`);
149
+ (0, cumin_1.runtimeOutput_data)(`Copied ${successCount} items, ${failCount} failed\n`);
149
150
  return failCount === 0;
150
151
  }
151
152
  catch (error) {
@@ -191,7 +192,7 @@ async function fileId_resolve(srcPath) {
191
192
  * @param targetPath - The absolute ChRIS path to check.
192
193
  * @returns Promise resolving to true if the path is a directory, false otherwise.
193
194
  */
194
- async function path_isDir(targetPath) {
195
+ async function files_path_isDirectory(targetPath) {
195
196
  const parent = path.posix.dirname(targetPath);
196
197
  const name = path.posix.basename(targetPath);
197
198
  const results = await files_listAll({ limit: 1000, offset: 0 }, "dirs", parent);
@@ -276,7 +277,7 @@ async function files_copy(srcPath, destPath) {
276
277
  if (!uploadSuccess) {
277
278
  const lastError = cumin_1.errorStack.stack_pop();
278
279
  if (lastError) {
279
- console.error(` Error: ${lastError.message}`);
280
+ (0, cumin_1.runtimeOutput_err)(` Error: ${lastError.message}\n`);
280
281
  }
281
282
  }
282
283
  return uploadSuccess;
@@ -300,8 +301,8 @@ async function files_copy(srcPath, destPath) {
300
301
  */
301
302
  async function files_move(srcPath, destPath) {
302
303
  try {
303
- const srcIsDir = await path_isDir(srcPath);
304
- const destIsDir = await path_isDir(destPath);
304
+ const srcIsDir = await files_path_isDirectory(srcPath);
305
+ const destIsDir = await files_path_isDirectory(destPath);
305
306
  const destLooksDir = destPath.endsWith("/");
306
307
  const finalDest = (destIsDir || destLooksDir)
307
308
  ? path.posix.join(destPath, path.posix.basename(srcPath))
@@ -477,7 +478,7 @@ async function files_getSingle(path) {
477
478
  */
478
479
  async function files_share(fileId, options) {
479
480
  // Implement actual sharing logic using cumin/chrisapi
480
- console.log(`Sharing file ${fileId} with options:`, options);
481
+ (0, cumin_1.runtimeOutput_data)(`Sharing file ${fileId} with options: ${JSON.stringify(options)}\n`);
481
482
  return Promise.resolve(true);
482
483
  }
483
484
  /**
@@ -533,7 +534,7 @@ async function fileContent_getBinary(filePath) {
533
534
  */
534
535
  async function fileContent_getBinaryStream(filePath) {
535
536
  const provider = dispatcher_js_1.vfsDispatcher.provider_get(filePath);
536
- if (provider && provider.prefix !== '/') {
537
+ if (provider && provider.prefix !== '') {
537
538
  return dispatcher_js_1.vfsDispatcher.readBinary(filePath).then((res) => {
538
539
  if (res.ok) {
539
540
  return (0, cumin_1.Ok)({ stream: res.value, size: res.value.length });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/files/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/files/index.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ exports.fileContent_getRegularStream = fileContent_getRegularStream;
9
9
  exports.fileContent_getRegular = fileContent_getRegular;
10
10
  exports.fileContent_getRegularBinary = fileContent_getRegularBinary;
11
11
  const cumin_1 = require("@fnndsc/cumin");
12
+ const stream_1 = require("stream");
12
13
  const fileLookup_js_1 = require("./fileLookup.js");
13
14
  /**
14
15
  * Views content of a file in ChRIS by its ID.
@@ -37,10 +38,17 @@ async function fileContent_getRegularStream(filePath) {
37
38
  return (0, cumin_1.Err)();
38
39
  }
39
40
  const streamResult = await cumin_1.chrisIO.file_downloadStream(idResult.value);
40
- if (!streamResult.ok) {
41
- return (0, cumin_1.Err)();
41
+ if (streamResult.ok) {
42
+ return (0, cumin_1.Ok)(streamResult.value);
42
43
  }
43
- return (0, cumin_1.Ok)(streamResult.value);
44
+ // Some CUBE deployments expose file bytes through the established blob
45
+ // endpoint but cannot satisfy an axios streaming request. Preserve the
46
+ // streaming fast path, then adapt that compatible binary response so
47
+ // download callers retain one stream-shaped contract.
48
+ const binaryResult = await files_view(idResult.value);
49
+ if (!binaryResult.ok)
50
+ return (0, cumin_1.Err)();
51
+ return (0, cumin_1.Ok)({ stream: stream_1.Readable.from(binaryResult.value), size: binaryResult.value.length });
44
52
  }
45
53
  /**
46
54
  * Fetches the content of a regular ChRIS file.
@@ -1 +1 @@
1
- {"version":3,"file":"regular_content.js","sourceRoot":"","sources":["../../src/files/regular_content.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AA2BH,oEAeC;AAQD,wDAYC;AAUD,oEAYC;AAlFD,yCAAyD;AACzD,mDAAwD;AAExD;;;;;;GAMG;AACH,KAAK,UAAU,UAAU,CAAC,MAAc;IACtC,MAAM,MAAM,GAAkB,MAAM,eAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAClE,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAClB,4DAA4D;QAC5D,OAAO,IAAA,WAAG,GAAE,CAAC;IACjB,CAAC;IACD,OAAO,IAAA,UAAE,EAAC,MAAM,CAAC,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,4BAA4B,CAChD,QAAgB;IAEhB,MAAM,QAAQ,GAAmB,MAAM,IAAA,qCAAqB,EAAC,QAAQ,CAAC,CAAC;IACvE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,IAAA,WAAG,GAAE,CAAC;IACf,CAAC;IAED,MAAM,YAAY,GAChB,MAAM,eAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;QACrB,OAAO,IAAA,WAAG,GAAE,CAAC;IACf,CAAC;IAED,OAAO,IAAA,UAAE,EAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,sBAAsB,CAAC,QAAgB;IAC3D,MAAM,QAAQ,GAAmB,MAAM,IAAA,qCAAqB,EAAC,QAAQ,CAAC,CAAC;IACvE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,IAAA,WAAG,GAAE,CAAC;IACf,CAAC;IAED,MAAM,eAAe,GAAmB,MAAM,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzE,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;QACxB,OAAO,IAAA,WAAG,GAAE,CAAC;IACf,CAAC;IAED,OAAO,IAAA,UAAE,EAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,4BAA4B,CAAC,QAAgB;IACjE,MAAM,QAAQ,GAAmB,MAAM,IAAA,qCAAqB,EAAC,QAAQ,CAAC,CAAC;IACvE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,IAAA,WAAG,GAAE,CAAC;IACf,CAAC;IAED,MAAM,eAAe,GAAmB,MAAM,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzE,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;QACxB,OAAO,IAAA,WAAG,GAAE,CAAC;IACf,CAAC;IAED,OAAO,IAAA,UAAE,EAAC,eAAe,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"regular_content.js","sourceRoot":"","sources":["../../src/files/regular_content.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AA4BH,oEAqBC;AAQD,wDAYC;AAUD,oEAYC;AAzFD,yCAAyD;AACzD,mCAAkC;AAClC,mDAAwD;AAExD;;;;;;GAMG;AACH,KAAK,UAAU,UAAU,CAAC,MAAc;IACtC,MAAM,MAAM,GAAkB,MAAM,eAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAClE,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAClB,4DAA4D;QAC5D,OAAO,IAAA,WAAG,GAAE,CAAC;IACjB,CAAC;IACD,OAAO,IAAA,UAAE,EAAC,MAAM,CAAC,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,4BAA4B,CAChD,QAAgB;IAEhB,MAAM,QAAQ,GAAmB,MAAM,IAAA,qCAAqB,EAAC,QAAQ,CAAC,CAAC;IACvE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,IAAA,WAAG,GAAE,CAAC;IACf,CAAC;IAED,MAAM,YAAY,GAChB,MAAM,eAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,IAAI,YAAY,CAAC,EAAE,EAAE,CAAC;QACpB,OAAO,IAAA,UAAE,EAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,uEAAuE;IACvE,uEAAuE;IACvE,qEAAqE;IACrE,sDAAsD;IACtD,MAAM,YAAY,GAAmB,MAAM,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtE,IAAI,CAAC,YAAY,CAAC,EAAE;QAAE,OAAO,IAAA,WAAG,GAAE,CAAC;IACnC,OAAO,IAAA,UAAE,EAAC,EAAE,MAAM,EAAE,iBAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;AAC5F,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,sBAAsB,CAAC,QAAgB;IAC3D,MAAM,QAAQ,GAAmB,MAAM,IAAA,qCAAqB,EAAC,QAAQ,CAAC,CAAC;IACvE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,IAAA,WAAG,GAAE,CAAC;IACf,CAAC;IAED,MAAM,eAAe,GAAmB,MAAM,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzE,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;QACxB,OAAO,IAAA,WAAG,GAAE,CAAC;IACf,CAAC;IAED,OAAO,IAAA,UAAE,EAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,4BAA4B,CAAC,QAAgB;IACjE,MAAM,QAAQ,GAAmB,MAAM,IAAA,qCAAqB,EAAC,QAAQ,CAAC,CAAC;IACvE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,IAAA,WAAG,GAAE,CAAC;IACf,CAAC;IAED,MAAM,eAAe,GAAmB,MAAM,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzE,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;QACxB,OAAO,IAAA,WAAG,GAAE,CAAC;IACf,CAAC;IAED,OAAO,IAAA,UAAE,EAAC,eAAe,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC"}
@@ -3,6 +3,32 @@
3
3
  * @module
4
4
  */
5
5
  import { FilteredResourceData, ListOptions } from '@fnndsc/cumin';
6
+ /** Group membership data exposed to adjacent application layers. */
7
+ export interface GroupMember {
8
+ id: number;
9
+ username: string;
10
+ }
11
+ /** An exact CUBE group identity resolved from an operator-facing reference. */
12
+ export interface GroupReference {
13
+ id: number;
14
+ name: string;
15
+ }
16
+ /** Success or user-facing failure from a group membership operation. */
17
+ export type GroupMembershipResult<T> = {
18
+ ok: true;
19
+ value: T;
20
+ } | {
21
+ ok: false;
22
+ error: string;
23
+ };
24
+ /** Success or user-facing failure from resolving a CUBE group reference. */
25
+ export type GroupReferenceResult = {
26
+ ok: true;
27
+ value: GroupReference;
28
+ } | {
29
+ ok: false;
30
+ error: string;
31
+ };
6
32
  /**
7
33
  * Lists groups (single page).
8
34
  *
@@ -15,7 +41,40 @@ export declare function groups_list(options: ListOptions): Promise<FilteredResou
15
41
  * @param options - Search options (limit/offset managed internally).
16
42
  */
17
43
  export declare function groups_listAll(options?: Partial<ListOptions>): Promise<FilteredResourceData | null>;
44
+ /**
45
+ * Resolves a numeric ID or exact CUBE group name to one group identity.
46
+ *
47
+ * Numeric operands retain compatibility with ID-oriented automation. Other
48
+ * operands match only `name` exactly; a partial name never chooses a group.
49
+ *
50
+ * @param reference - Numeric group ID or exact group name.
51
+ * @returns Resolved group identity or a self-contained user-facing error.
52
+ */
53
+ export declare function groupReference_resolve(reference: string): Promise<GroupReferenceResult>;
18
54
  /**
19
55
  * Returns available field names for groups.
20
56
  */
21
57
  export declare function groupFields_get(): Promise<string[] | null>;
58
+ /**
59
+ * Lists every user in one CUBE group.
60
+ *
61
+ * @param groupID - Numeric CUBE group identifier.
62
+ * @returns Every group membership, or Err on failure.
63
+ */
64
+ export declare function groupMembers_getAll(groupID: number): Promise<GroupMembershipResult<GroupMember[]>>;
65
+ /**
66
+ * Adds an existing CUBE user to one group.
67
+ *
68
+ * @param groupID - Numeric CUBE group identifier.
69
+ * @param username - Existing CUBE username.
70
+ * @returns The created membership, or Err on failure.
71
+ */
72
+ export declare function groupUser_add(groupID: number, username: string): Promise<GroupMembershipResult<GroupMember>>;
73
+ /**
74
+ * Removes a CUBE user from one group.
75
+ *
76
+ * @param groupID - Numeric CUBE group identifier.
77
+ * @param username - Existing CUBE username.
78
+ * @returns True after removal, or Err on failure.
79
+ */
80
+ export declare function groupUser_remove(groupID: number, username: string): Promise<GroupMembershipResult<boolean>>;
@@ -6,8 +6,26 @@
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.groups_list = groups_list;
8
8
  exports.groups_listAll = groups_listAll;
9
+ exports.groupReference_resolve = groupReference_resolve;
9
10
  exports.groupFields_get = groupFields_get;
11
+ exports.groupMembers_getAll = groupMembers_getAll;
12
+ exports.groupUser_add = groupUser_add;
13
+ exports.groupUser_remove = groupUser_remove;
10
14
  const cumin_1 = require("@fnndsc/cumin");
15
+ const membershipRevision_js_1 = require("./membershipRevision.js");
16
+ /**
17
+ * Converts Cumin's Result/error-stack pair into an adjacent-layer outcome.
18
+ *
19
+ * @param result - Cumin operation result.
20
+ * @param fallback - Error used when Cumin supplied no detail.
21
+ * @returns A self-contained group membership result.
22
+ */
23
+ function groupResult_present(result, fallback) {
24
+ if (result.ok)
25
+ return result;
26
+ const problem = cumin_1.errorStack.stack_pop();
27
+ return { ok: false, error: problem?.message ?? fallback };
28
+ }
11
29
  /**
12
30
  * Lists groups (single page).
13
31
  *
@@ -26,6 +44,39 @@ async function groups_listAll(options = {}) {
26
44
  const group = new cumin_1.ChRISGroupGroup();
27
45
  return await group.asset.resources_getAll(options);
28
46
  }
47
+ /**
48
+ * Resolves a numeric ID or exact CUBE group name to one group identity.
49
+ *
50
+ * Numeric operands retain compatibility with ID-oriented automation. Other
51
+ * operands match only `name` exactly; a partial name never chooses a group.
52
+ *
53
+ * @param reference - Numeric group ID or exact group name.
54
+ * @returns Resolved group identity or a self-contained user-facing error.
55
+ */
56
+ async function groupReference_resolve(reference) {
57
+ const groups = await groups_listAll();
58
+ const candidates = (groups?.tableData ?? []).flatMap((record) => {
59
+ const id = typeof record.id === 'number' ? record.id : Number(record.id);
60
+ const name = typeof record.name === 'string' ? record.name : undefined;
61
+ return Number.isInteger(id) && id >= 0 && name !== undefined ? [{ id, name }] : [];
62
+ });
63
+ const numericID = /^\d+$/.test(reference) ? Number(reference) : undefined;
64
+ const matches = numericID === undefined
65
+ ? candidates.filter((candidate) => candidate.name === reference)
66
+ : candidates.filter((candidate) => candidate.id === numericID);
67
+ if (matches.length === 1)
68
+ return { ok: true, value: matches[0] };
69
+ if (matches.length === 0) {
70
+ return numericID === undefined
71
+ ? { ok: false, error: `No group named '${reference}'.` }
72
+ : { ok: false, error: `No group with ID ${numericID}.` };
73
+ }
74
+ const options = matches.map((candidate) => `${candidate.name} (${candidate.id})`).join(', ');
75
+ return {
76
+ ok: false,
77
+ error: `Group name '${reference}' is ambiguous: ${options}. Use a numeric ID.`,
78
+ };
79
+ }
29
80
  /**
30
81
  * Returns available field names for groups.
31
82
  */
@@ -34,4 +85,42 @@ async function groupFields_get() {
34
85
  const result = await group.asset.resourceFields_get();
35
86
  return result ? result.fields : null;
36
87
  }
88
+ /**
89
+ * Lists every user in one CUBE group.
90
+ *
91
+ * @param groupID - Numeric CUBE group identifier.
92
+ * @returns Every group membership, or Err on failure.
93
+ */
94
+ async function groupMembers_getAll(groupID) {
95
+ const result = await (0, cumin_1.groupMembers_getAll)(groupID);
96
+ return groupResult_present(result, `Failed to list users in group ${groupID}.`);
97
+ }
98
+ /**
99
+ * Adds an existing CUBE user to one group.
100
+ *
101
+ * @param groupID - Numeric CUBE group identifier.
102
+ * @param username - Existing CUBE username.
103
+ * @returns The created membership, or Err on failure.
104
+ */
105
+ async function groupUser_add(groupID, username) {
106
+ const result = await (0, cumin_1.groupUser_add)(groupID, username);
107
+ const presented = groupResult_present(result, `Failed to add ${username} to group ${groupID}.`);
108
+ if (presented.ok)
109
+ (0, membershipRevision_js_1.groupMembershipRevision_advance)();
110
+ return presented;
111
+ }
112
+ /**
113
+ * Removes a CUBE user from one group.
114
+ *
115
+ * @param groupID - Numeric CUBE group identifier.
116
+ * @param username - Existing CUBE username.
117
+ * @returns True after removal, or Err on failure.
118
+ */
119
+ async function groupUser_remove(groupID, username) {
120
+ const result = await (0, cumin_1.groupUser_remove)(groupID, username);
121
+ const presented = groupResult_present(result, `Failed to remove ${username} from group ${groupID}.`);
122
+ if (presented.ok)
123
+ (0, membershipRevision_js_1.groupMembershipRevision_advance)();
124
+ return presented;
125
+ }
37
126
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/groups/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AASH,kCAGC;AAOD,wCAGC;AAKD,0CAIC;AA7BD,yCAAmF;AAEnF;;;;GAIG;AACI,KAAK,UAAU,WAAW,CAAC,OAAoB;IACpD,MAAM,KAAK,GAAoB,IAAI,uBAAe,EAAE,CAAC;IACrD,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC;AACrE,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,cAAc,CAAC,UAAgC,EAAE;IACrE,MAAM,KAAK,GAAoB,IAAI,uBAAe,EAAE,CAAC;IACrD,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;AACrD,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,eAAe;IACnC,MAAM,KAAK,GAAoB,IAAI,uBAAe,EAAE,CAAC;IACrD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;IACtD,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/groups/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @file Revision signal for CUBE group-membership projections.
3
+ * @module
4
+ */
5
+ /**
6
+ * Returns the current local group-membership revision.
7
+ *
8
+ * Consumers compare this value with derived snapshots so successful local
9
+ * membership mutations invalidate those snapshots without knowing about them.
10
+ *
11
+ * @returns Current membership revision.
12
+ */
13
+ export declare function groupMembershipRevision_get(): number;
14
+ /**
15
+ * Advances the revision after a successful local membership mutation.
16
+ *
17
+ * @returns Nothing.
18
+ */
19
+ export declare function groupMembershipRevision_advance(): void;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ /**
3
+ * @file Revision signal for CUBE group-membership projections.
4
+ * @module
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.groupMembershipRevision_get = groupMembershipRevision_get;
8
+ exports.groupMembershipRevision_advance = groupMembershipRevision_advance;
9
+ let groupMembershipRevision = 0;
10
+ /**
11
+ * Returns the current local group-membership revision.
12
+ *
13
+ * Consumers compare this value with derived snapshots so successful local
14
+ * membership mutations invalidate those snapshots without knowing about them.
15
+ *
16
+ * @returns Current membership revision.
17
+ */
18
+ function groupMembershipRevision_get() {
19
+ return groupMembershipRevision;
20
+ }
21
+ /**
22
+ * Advances the revision after a successful local membership mutation.
23
+ *
24
+ * @returns Nothing.
25
+ */
26
+ function groupMembershipRevision_advance() {
27
+ groupMembershipRevision += 1;
28
+ }
29
+ //# sourceMappingURL=membershipRevision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"membershipRevision.js","sourceRoot":"","sources":["../../src/groups/membershipRevision.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAYH,kEAEC;AAOD,0EAEC;AArBD,IAAI,uBAAuB,GAAW,CAAC,CAAC;AAExC;;;;;;;GAOG;AACH,SAAgB,2BAA2B;IACzC,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAED;;;;GAIG;AACH,SAAgB,+BAA+B;IAC7C,uBAAuB,IAAI,CAAC,CAAC;AAC/B,CAAC"}
package/dist/index.d.ts CHANGED
@@ -10,6 +10,7 @@ export * from './context/index.js';
10
10
  export * from './store/index.js';
11
11
  export * from './pipelines/index.js';
12
12
  export * from './pacs/index.js';
13
+ export * from './retrieve/watch.js';
13
14
  export * from './vfs/index.js';
14
15
  export * from './tags/index.js';
15
16
  export * from './groups/index.js';
@@ -18,7 +19,8 @@ export * from './plugininstances/index.js';
18
19
  export * from './workflows/index.js';
19
20
  export * from './compute/index.js';
20
21
  export * from './jobs/index.js';
21
- export { procCache_refresh, procTopology_warmup, procTopology_status, procTopology_await, procFeed_ensureLoaded, feedInstances_ensureLoaded, feedMeta_ensure, feedStatus_refresh } from './vfs/providers/proc.js';
22
+ export * from './users/index.js';
23
+ export { procCache_refresh, procTopology_warmup, procTopology_reconcileFeeds, procTopology_retry, procTopology_status, procTopology_await, procFeed_ensureLoaded, feedInstances_ensureLoaded, feedMeta_ensure, feedStatus_refresh } from './vfs/providers/proc.js';
22
24
  export type { ProcTopologyState, ProcTopologyStatus } from './vfs/providers/proc.js';
23
25
  export { feedGraph_build, signature_compute } from './dag/feedGraph.js';
24
26
  export type { FeedGraph, FeedNode } from './dag/feedGraph.js';