@fnndsc/cumin 3.8.0 → 3.9.0

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 (60) hide show
  1. package/README.md +2 -2
  2. package/dist/cache/index.d.ts +5 -1
  3. package/dist/cache/index.js +9 -1
  4. package/dist/cache/index.js.map +1 -1
  5. package/dist/cache/listCache.d.ts +11 -0
  6. package/dist/cache/listCache.js +19 -0
  7. package/dist/cache/listCache.js.map +1 -1
  8. package/dist/cache/procCache.d.ts +156 -6
  9. package/dist/cache/procCache.js +244 -7
  10. package/dist/cache/procCache.js.map +1 -1
  11. package/dist/cache/procCheckpoint.d.ts +47 -0
  12. package/dist/cache/procCheckpoint.js +217 -0
  13. package/dist/cache/procCheckpoint.js.map +1 -0
  14. package/dist/cache/procPrompt.d.ts +34 -0
  15. package/dist/cache/procPrompt.js +25 -0
  16. package/dist/cache/procPrompt.js.map +1 -0
  17. package/dist/chrisapi/adapter.d.ts +12 -1
  18. package/dist/chrisapi/adapter.js +25 -0
  19. package/dist/chrisapi/adapter.js.map +1 -1
  20. package/dist/connect/chrisConnection.d.ts +20 -0
  21. package/dist/connect/chrisConnection.js +33 -0
  22. package/dist/connect/chrisConnection.js.map +1 -1
  23. package/dist/feeds/chrisFeed.js +2 -1
  24. package/dist/feeds/chrisFeed.js.map +1 -1
  25. package/dist/groups/chrisGroups.d.ts +67 -1
  26. package/dist/groups/chrisGroups.js +171 -1
  27. package/dist/groups/chrisGroups.js.map +1 -1
  28. package/dist/index.d.ts +2 -0
  29. package/dist/index.js +2 -0
  30. package/dist/index.js.map +1 -1
  31. package/dist/io/chrisIO.d.ts +14 -0
  32. package/dist/io/chrisIO.js +32 -2
  33. package/dist/io/chrisIO.js.map +1 -1
  34. package/dist/jobs/chrisJob.js +4 -0
  35. package/dist/jobs/chrisJob.js.map +1 -1
  36. package/dist/output/runtimeOutput.d.ts +49 -0
  37. package/dist/output/runtimeOutput.js +51 -0
  38. package/dist/output/runtimeOutput.js.map +1 -0
  39. package/dist/pacs/chrisPACS.d.ts +28 -0
  40. package/dist/pacs/chrisPACS.js +40 -21
  41. package/dist/pacs/chrisPACS.js.map +1 -1
  42. package/dist/path/chrisPath.js +3 -3
  43. package/dist/path/chrisPath.js.map +1 -1
  44. package/dist/pipelines/chrisPipeline.d.ts +4 -0
  45. package/dist/pipelines/chrisPipeline.js.map +1 -1
  46. package/dist/plugins/chrisPlugins.d.ts +8 -1
  47. package/dist/plugins/chrisPlugins.js +8 -1
  48. package/dist/plugins/chrisPlugins.js.map +1 -1
  49. package/dist/resources/chrisObjContext.d.ts +11 -0
  50. package/dist/resources/chrisObjContext.js +38 -2
  51. package/dist/resources/chrisObjContext.js.map +1 -1
  52. package/dist/resources/chrisResources.js +4 -0
  53. package/dist/resources/chrisResources.js.map +1 -1
  54. package/dist/users/chrisUsers.d.ts +56 -10
  55. package/dist/users/chrisUsers.js +149 -20
  56. package/dist/users/chrisUsers.js.map +1 -1
  57. package/dist/utils/retry.d.ts +29 -0
  58. package/dist/utils/retry.js +44 -0
  59. package/dist/utils/retry.js.map +1 -0
  60. package/package.json +19 -8
@@ -1,11 +1,77 @@
1
1
  /**
2
- * @file ChRIS Group resources.
2
+ * @file ChRIS group resources and membership operations.
3
3
  * @module
4
4
  */
5
5
  import { ChRISResourceGroup } from '../resources/chrisResourceGroup.js';
6
+ import { type Result } from '../utils/result.js';
7
+ /** Represents a ChRIS group resource. */
8
+ export interface ChrisGroup {
9
+ id: number;
10
+ name: string;
11
+ }
12
+ /** Represents a user's membership in a ChRIS group. */
13
+ export interface ChrisGroupMember {
14
+ id: number;
15
+ username: string;
16
+ }
6
17
  /**
7
18
  * Group handler for ChRIS user groups.
8
19
  */
9
20
  export declare class ChRISGroupGroup extends ChRISResourceGroup {
10
21
  constructor();
22
+ /**
23
+ * Resolves one group resource through this resource group.
24
+ *
25
+ * @param groupID - Numeric CUBE group identifier.
26
+ * @returns The group resource, or null after recording a useful error.
27
+ */
28
+ private group_get;
29
+ /**
30
+ * Fetches all groups, following the API's pagination links.
31
+ *
32
+ * @returns Every visible CUBE group, or Err on failure.
33
+ */
34
+ groups_getAll(): Promise<Result<ChrisGroup[]>>;
35
+ /**
36
+ * Fetches every user belonging to one group.
37
+ *
38
+ * @param groupID - Numeric CUBE group identifier.
39
+ * @returns Every group membership, or Err on failure.
40
+ */
41
+ members_getAll(groupID: number): Promise<Result<ChrisGroupMember[]>>;
42
+ /**
43
+ * Adds an existing CUBE user to one group.
44
+ *
45
+ * @param groupID - Numeric CUBE group identifier.
46
+ * @param username - Existing CUBE username to add.
47
+ * @returns The created membership, or Err when CUBE refuses the operation.
48
+ */
49
+ user_add(groupID: number, username: string): Promise<Result<ChrisGroupMember>>;
50
+ /**
51
+ * Removes a CUBE user from one group.
52
+ *
53
+ * @param groupID - Numeric CUBE group identifier.
54
+ * @param username - Existing CUBE username to remove.
55
+ * @returns True after deletion, or Err when the membership does not exist or deletion fails.
56
+ */
57
+ user_remove(groupID: number, username: string): Promise<Result<boolean>>;
11
58
  }
59
+ /** @returns Every visible CUBE group, or Err on failure. */
60
+ export declare function groups_getAll(): Promise<Result<ChrisGroup[]>>;
61
+ /**
62
+ * @param groupID - Numeric CUBE group identifier.
63
+ * @returns Every membership in the group, or Err on failure.
64
+ */
65
+ export declare function groupMembers_getAll(groupID: number): Promise<Result<ChrisGroupMember[]>>;
66
+ /**
67
+ * @param groupID - Numeric CUBE group identifier.
68
+ * @param username - Existing CUBE username to add.
69
+ * @returns The created membership, or Err on failure.
70
+ */
71
+ export declare function groupUser_add(groupID: number, username: string): Promise<Result<ChrisGroupMember>>;
72
+ /**
73
+ * @param groupID - Numeric CUBE group identifier.
74
+ * @param username - Existing CUBE username to remove.
75
+ * @returns True after deletion, or Err on failure.
76
+ */
77
+ export declare function groupUser_remove(groupID: number, username: string): Promise<Result<boolean>>;
@@ -1,11 +1,18 @@
1
1
  "use strict";
2
2
  /**
3
- * @file ChRIS Group resources.
3
+ * @file ChRIS group resources and membership operations.
4
4
  * @module
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.ChRISGroupGroup = void 0;
8
+ exports.groups_getAll = groups_getAll;
9
+ exports.groupMembers_getAll = groupMembers_getAll;
10
+ exports.groupUser_add = groupUser_add;
11
+ exports.groupUser_remove = groupUser_remove;
12
+ const adapter_js_1 = require("../chrisapi/adapter.js");
13
+ const errorStack_js_1 = require("../error/errorStack.js");
8
14
  const chrisResourceGroup_js_1 = require("../resources/chrisResourceGroup.js");
15
+ const result_js_1 = require("../utils/result.js");
9
16
  /**
10
17
  * Group handler for ChRIS user groups.
11
18
  */
@@ -13,6 +20,169 @@ class ChRISGroupGroup extends chrisResourceGroup_js_1.ChRISResourceGroup {
13
20
  constructor() {
14
21
  super('Groups', 'getGroups');
15
22
  }
23
+ /**
24
+ * Resolves one group resource through this resource group.
25
+ *
26
+ * @param groupID - Numeric CUBE group identifier.
27
+ * @returns The group resource, or null after recording a useful error.
28
+ */
29
+ async group_get(groupID) {
30
+ const client = await this.client_get();
31
+ if (!client) {
32
+ errorStack_js_1.errorStack.stack_push('error', 'Not connected to ChRIS. Please log in.');
33
+ return null;
34
+ }
35
+ const group = await client.getGroup(groupID);
36
+ if (!group)
37
+ errorStack_js_1.errorStack.stack_push('error', `Group ${groupID} was not found.`);
38
+ return group;
39
+ }
40
+ /**
41
+ * Fetches all groups, following the API's pagination links.
42
+ *
43
+ * @returns Every visible CUBE group, or Err on failure.
44
+ */
45
+ async groups_getAll() {
46
+ try {
47
+ const client = await this.client_get();
48
+ if (!client) {
49
+ errorStack_js_1.errorStack.stack_push('error', 'Not connected to ChRIS. Please log in.');
50
+ return (0, result_js_1.Err)();
51
+ }
52
+ const groups = [];
53
+ let offset = 0;
54
+ while (true) {
55
+ const page = await client.getGroups({ offset });
56
+ const pageGroups = (0, adapter_js_1.listData_get)(page);
57
+ groups.push(...pageGroups);
58
+ if (!page.hasNextPage || pageGroups.length === 0)
59
+ break;
60
+ offset += pageGroups.length;
61
+ }
62
+ return (0, result_js_1.Ok)(groups);
63
+ }
64
+ catch (error) {
65
+ const message = error instanceof Error ? error.message : String(error);
66
+ errorStack_js_1.errorStack.stack_push('error', `Failed to fetch groups: ${message}`);
67
+ return (0, result_js_1.Err)();
68
+ }
69
+ }
70
+ /**
71
+ * Fetches every user belonging to one group.
72
+ *
73
+ * @param groupID - Numeric CUBE group identifier.
74
+ * @returns Every group membership, or Err on failure.
75
+ */
76
+ async members_getAll(groupID) {
77
+ try {
78
+ const group = await this.group_get(groupID);
79
+ if (!group)
80
+ return (0, result_js_1.Err)();
81
+ const members = [];
82
+ let offset = 0;
83
+ while (true) {
84
+ const page = await group.getUsers({ offset });
85
+ const membershipResources = (0, adapter_js_1.items_get)(page);
86
+ const pageMembers = await Promise.all(membershipResources.map(async (membershipResource) => {
87
+ const userResource = await membershipResource.getUser();
88
+ const member = (0, adapter_js_1.itemData_get)(userResource);
89
+ if (!member)
90
+ throw new Error('group membership carried no linked user data');
91
+ return member;
92
+ }));
93
+ members.push(...pageMembers);
94
+ if (!page.hasNextPage || membershipResources.length === 0)
95
+ break;
96
+ offset += membershipResources.length;
97
+ }
98
+ return (0, result_js_1.Ok)(members);
99
+ }
100
+ catch (error) {
101
+ const message = error instanceof Error ? error.message : String(error);
102
+ errorStack_js_1.errorStack.stack_push('error', `Failed to fetch users for group ${groupID}: ${message}`);
103
+ return (0, result_js_1.Err)();
104
+ }
105
+ }
106
+ /**
107
+ * Adds an existing CUBE user to one group.
108
+ *
109
+ * @param groupID - Numeric CUBE group identifier.
110
+ * @param username - Existing CUBE username to add.
111
+ * @returns The created membership, or Err when CUBE refuses the operation.
112
+ */
113
+ async user_add(groupID, username) {
114
+ try {
115
+ const group = await this.group_get(groupID);
116
+ if (!group)
117
+ return (0, result_js_1.Err)();
118
+ const membershipResource = await group.adminAddUser(username);
119
+ const userResource = await membershipResource.getUser();
120
+ const membership = (0, adapter_js_1.itemData_get)(userResource);
121
+ if (!membership) {
122
+ errorStack_js_1.errorStack.stack_push('error', `CUBE returned no membership for ${username}.`);
123
+ return (0, result_js_1.Err)();
124
+ }
125
+ return (0, result_js_1.Ok)(membership);
126
+ }
127
+ catch (error) {
128
+ const message = error instanceof Error ? error.message : String(error);
129
+ errorStack_js_1.errorStack.stack_push('error', `Failed to add ${username} to group ${groupID}: ${message}`);
130
+ return (0, result_js_1.Err)();
131
+ }
132
+ }
133
+ /**
134
+ * Removes a CUBE user from one group.
135
+ *
136
+ * @param groupID - Numeric CUBE group identifier.
137
+ * @param username - Existing CUBE username to remove.
138
+ * @returns True after deletion, or Err when the membership does not exist or deletion fails.
139
+ */
140
+ async user_remove(groupID, username) {
141
+ try {
142
+ const group = await this.group_get(groupID);
143
+ if (!group)
144
+ return (0, result_js_1.Err)();
145
+ const membership = await group.getUser(username);
146
+ if (!membership) {
147
+ errorStack_js_1.errorStack.stack_push('error', `${username} is not a member of group ${groupID}.`);
148
+ return (0, result_js_1.Err)();
149
+ }
150
+ await membership.delete();
151
+ return (0, result_js_1.Ok)(true);
152
+ }
153
+ catch (error) {
154
+ const message = error instanceof Error ? error.message : String(error);
155
+ errorStack_js_1.errorStack.stack_push('error', `Failed to remove ${username} from group ${groupID}: ${message}`);
156
+ return (0, result_js_1.Err)();
157
+ }
158
+ }
16
159
  }
17
160
  exports.ChRISGroupGroup = ChRISGroupGroup;
161
+ /** @returns Every visible CUBE group, or Err on failure. */
162
+ async function groups_getAll() {
163
+ return new ChRISGroupGroup().groups_getAll();
164
+ }
165
+ /**
166
+ * @param groupID - Numeric CUBE group identifier.
167
+ * @returns Every membership in the group, or Err on failure.
168
+ */
169
+ async function groupMembers_getAll(groupID) {
170
+ return new ChRISGroupGroup().members_getAll(groupID);
171
+ }
172
+ /**
173
+ * @param groupID - Numeric CUBE group identifier.
174
+ * @param username - Existing CUBE username to add.
175
+ * @returns The created membership, or Err on failure.
176
+ */
177
+ async function groupUser_add(groupID, username) {
178
+ return new ChRISGroupGroup().user_add(groupID, username);
179
+ }
180
+ /**
181
+ * @param groupID - Numeric CUBE group identifier.
182
+ * @param username - Existing CUBE username to remove.
183
+ * @returns True after deletion, or Err on failure.
184
+ */
185
+ async function groupUser_remove(groupID, username) {
186
+ return new ChRISGroupGroup().user_remove(groupID, username);
187
+ }
18
188
  //# sourceMappingURL=chrisGroups.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chrisGroups.js","sourceRoot":"","sources":["../../src/groups/chrisGroups.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,8EAAwE;AAExE;;GAEG;AACH,MAAa,eAAgB,SAAQ,0CAAkB;IACrD;QACE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC/B,CAAC;CACF;AAJD,0CAIC"}
1
+ {"version":3,"file":"chrisGroups.js","sourceRoot":"","sources":["../../src/groups/chrisGroups.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -32,6 +32,7 @@ export * from "./io/node_io";
32
32
  export * from "./utils/keypair";
33
33
  export * from "./utils/searchable";
34
34
  export * from "./utils/result";
35
+ export * from "./utils/retry";
35
36
  export * from "./utils/envelope";
36
37
  export * from "./cache";
37
38
  export * from "./path/chrisPath";
@@ -41,6 +42,7 @@ export * from "./tags/chrisTags";
41
42
  export * from "./groups/chrisGroups";
42
43
  export * from "./pluginmetas/chrisPluginMetas";
43
44
  export * from "./workflows/chrisWorkflows";
45
+ export * from "./output/runtimeOutput";
44
46
  export { listData_get, itemData_get, items_get } from "./chrisapi/adapter";
45
47
  export type { ListResource, Resource, ItemResource, PluginInstance, Feed, FileBrowserFolder, UserFile, PACSFile, } from "./chrisapi/adapter";
46
48
  /**
package/dist/index.js CHANGED
@@ -50,6 +50,7 @@ __exportStar(require("./io/node_io"), exports);
50
50
  __exportStar(require("./utils/keypair"), exports);
51
51
  __exportStar(require("./utils/searchable"), exports);
52
52
  __exportStar(require("./utils/result"), exports);
53
+ __exportStar(require("./utils/retry"), exports);
53
54
  __exportStar(require("./utils/envelope"), exports);
54
55
  __exportStar(require("./cache"), exports);
55
56
  __exportStar(require("./path/chrisPath"), exports);
@@ -59,6 +60,7 @@ __exportStar(require("./tags/chrisTags"), exports);
59
60
  __exportStar(require("./groups/chrisGroups"), exports);
60
61
  __exportStar(require("./pluginmetas/chrisPluginMetas"), exports);
61
62
  __exportStar(require("./workflows/chrisWorkflows"), exports);
63
+ __exportStar(require("./output/runtimeOutput"), exports);
62
64
  // Re-export chrisapi types so downstream packages don't import chrisapi directly
63
65
  var adapter_1 = require("./chrisapi/adapter");
64
66
  Object.defineProperty(exports, "listData_get", { enumerable: true, get: function () { return adapter_1.listData_get; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAEA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;AA4EH,4CAKC;AA/ED,qCAAmB;AACnB,qDAAmC;AACnC,kDAAgC;AAChC,oDAAkC;AAClC,4DAA0C;AAC1C,yDAAuC;AACvC,yDAAuC;AACvC,mEAAiD;AACjD,6DAA2C;AAC3C,mDAAiC;AACjC,6DAA2C;AAC3C,iEAA+C;AAC/C,8DAA4C;AAC5C,yEAAuD;AACvD,iEAA+C;AAC/C,2DAAyC;AACzC,0DAAwC;AACxC,8DAA4C;AAC5C,+CAA6B;AAC7B,0CAAwB;AACxB,+CAA6B;AAC7B,kDAAgC;AAChC,qDAAmC;AACnC,iDAA+B;AAC/B,mDAAiC;AACjC,0CAAwB;AACxB,mDAAiC;AACjC,4DAA0C;AAC1C,qDAAmC;AACnC,mDAAiC;AACjC,uDAAqC;AACrC,iEAA+C;AAC/C,6DAA2C;AAE3C,iFAAiF;AACjF,8CAA2E;AAAlE,uGAAA,YAAY,OAAA;AAAE,uGAAA,YAAY,OAAA;AAAE,oGAAA,SAAS,OAAA;AAiC9C;;;;;GAKG;AACI,KAAK,UAAU,gBAAgB,CAAC,GAAW;IAChD,MAAM,OAAO,GAAW,OAAO,CAAC;IAChC,wCAAwC;IACxC,6CAA6C;IAC7C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AAC5B,CAAC;AAED,gEAAgE;AAChE,qCAAqC;AACrC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAEA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;AA8EH,4CAKC;AAjFD,qCAAmB;AACnB,qDAAmC;AACnC,kDAAgC;AAChC,oDAAkC;AAClC,4DAA0C;AAC1C,yDAAuC;AACvC,yDAAuC;AACvC,mEAAiD;AACjD,6DAA2C;AAC3C,mDAAiC;AACjC,6DAA2C;AAC3C,iEAA+C;AAC/C,8DAA4C;AAC5C,yEAAuD;AACvD,iEAA+C;AAC/C,2DAAyC;AACzC,0DAAwC;AACxC,8DAA4C;AAC5C,+CAA6B;AAC7B,0CAAwB;AACxB,+CAA6B;AAC7B,kDAAgC;AAChC,qDAAmC;AACnC,iDAA+B;AAC/B,gDAA8B;AAC9B,mDAAiC;AACjC,0CAAwB;AACxB,mDAAiC;AACjC,4DAA0C;AAC1C,qDAAmC;AACnC,mDAAiC;AACjC,uDAAqC;AACrC,iEAA+C;AAC/C,6DAA2C;AAC3C,yDAAuC;AAEvC,iFAAiF;AACjF,8CAA2E;AAAlE,uGAAA,YAAY,OAAA;AAAE,uGAAA,YAAY,OAAA;AAAE,oGAAA,SAAS,OAAA;AAiC9C;;;;;GAKG;AACI,KAAK,UAAU,gBAAgB,CAAC,GAAW;IAChD,MAAM,OAAO,GAAW,OAAO,CAAC;IAChC,wCAAwC;IACxC,6CAA6C;IAC7C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AAC5B,CAAC;AAED,gEAAgE;AAChE,qCAAqC;AACrC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -42,6 +42,20 @@ export declare class ChrisIO {
42
42
  * @param fileId - The ID of the file to download.
43
43
  * @returns A Result containing the stream/blob and optional size metadata.
44
44
  */
45
+ /**
46
+ * Fetches a downloadable file resource by id, trying the userfiles
47
+ * collection first and falling back to PACS files.
48
+ *
49
+ * Filebrowser folder listings mix file kinds (a /SERVICES path holds PACS
50
+ * files, a /home path holds userfiles) but yield only numeric ids, so the
51
+ * downloader must probe both collections; a PACS id is invisible at the
52
+ * userfiles endpoint and previously read as "not found".
53
+ *
54
+ * @param client - The connected ChRIS client.
55
+ * @param fileId - The file id from a folder listing.
56
+ * @returns The file resource, or null when neither collection knows the id.
57
+ */
58
+ private downloadableFile_get;
45
59
  file_downloadStream(fileId: number): Promise<Result<{
46
60
  stream: unknown;
47
61
  size?: number;
@@ -76,6 +76,36 @@ class ChrisIO {
76
76
  * @param fileId - The ID of the file to download.
77
77
  * @returns A Result containing the stream/blob and optional size metadata.
78
78
  */
79
+ /**
80
+ * Fetches a downloadable file resource by id, trying the userfiles
81
+ * collection first and falling back to PACS files.
82
+ *
83
+ * Filebrowser folder listings mix file kinds (a /SERVICES path holds PACS
84
+ * files, a /home path holds userfiles) but yield only numeric ids, so the
85
+ * downloader must probe both collections; a PACS id is invisible at the
86
+ * userfiles endpoint and previously read as "not found".
87
+ *
88
+ * @param client - The connected ChRIS client.
89
+ * @param fileId - The file id from a folder listing.
90
+ * @returns The file resource, or null when neither collection knows the id.
91
+ */
92
+ async downloadableFile_get(client, fileId) {
93
+ try {
94
+ const userFile = await client.getUserFile(fileId);
95
+ if (userFile)
96
+ return userFile;
97
+ }
98
+ catch {
99
+ // Fall through to the PACS collection.
100
+ }
101
+ try {
102
+ const pacsClient = client;
103
+ return await pacsClient.getPACSFile(fileId);
104
+ }
105
+ catch {
106
+ return null;
107
+ }
108
+ }
79
109
  async file_downloadStream(fileId) {
80
110
  const client = await this.client_get();
81
111
  if (!client) {
@@ -83,7 +113,7 @@ class ChrisIO {
83
113
  return (0, result_js_1.Err)();
84
114
  }
85
115
  try {
86
- const userFile = await client.getUserFile(fileId);
116
+ const userFile = await this.downloadableFile_get(client, fileId);
87
117
  if (!userFile) {
88
118
  errorStack_js_1.errorStack.stack_push("error", `File ID ${fileId} not found (404) or access denied (403).`);
89
119
  return (0, result_js_1.Err)();
@@ -120,7 +150,7 @@ class ChrisIO {
120
150
  return null;
121
151
  }
122
152
  try {
123
- const userFile = await client.getUserFile(fileId);
153
+ const userFile = await this.downloadableFile_get(client, fileId);
124
154
  if (!userFile) {
125
155
  // This is a common case: the file ID was scraped from a listing, but
126
156
  // the file itself is not retrievable (e.g. 404, or permissions)
@@ -1 +1 @@
1
- {"version":3,"file":"chrisIO.js","sourceRoot":"","sources":["../../src/io/chrisIO.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chrisIO.js","sourceRoot":"","sources":["../../src/io/chrisIO.ts"],"names":[],"mappings":"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"}
@@ -122,6 +122,10 @@ class ChRISJob {
122
122
  await new Promise(resolve => setTimeout(resolve, 2000));
123
123
  }
124
124
  catch (e) {
125
+ // A poll failure ends the stream early; tell the consumer why
126
+ // instead of presenting the break as normal completion.
127
+ const msg = e instanceof Error ? e.message : String(e);
128
+ errorStack_js_1.errorStack.stack_push("warning", `Log stream ended early: status poll failed: ${msg}`);
125
129
  break;
126
130
  }
127
131
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chrisJob.js","sourceRoot":"","sources":["../../src/jobs/chrisJob.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,sEAAgE;AAChE,uDAAsD;AACtD,0DAAoD;AACpD,kDAAqD;AA0CrD;;GAEG;AACH,MAAa,QAAQ;IAGnB,YAAY,UAAkB;QAC5B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,oCAAe,CAAC,UAAU,EAAE,CAAC;YAClD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,0BAAU,CAAC,UAAU,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;gBACzD,OAAO,IAAA,eAAG,GAAE,CAAC;YACf,CAAC;YAED,4EAA4E;YAC5E,yDAAyD;YACzD,8EAA8E;YAC9E,yCAAyC;YACzC,gFAAgF;YAChF,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACzE,MAAM,YAAY,GAA8B,IAAA,yBAAY,EAAqB,QAAQ,CAAC,CAAC;YAC3F,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,0BAAU,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,IAAI,CAAC,UAAU,YAAY,CAAC,CAAC;gBACnE,OAAO,IAAA,eAAG,GAAE,CAAC;YACf,CAAC;YAED,OAAO,IAAA,cAAE,EAAC;gBACR,EAAE,EAAE,IAAI,CAAC,UAAU;gBACnB,UAAU,EAAE,YAAY,CAAC,WAAW;gBACpC,KAAK,EAAE,YAAY,CAAC,MAAkB;gBACtC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC;gBAC/C,SAAS,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;gBAC5C,SAAS,EAAE,YAAY,CAAC,YAAY;oBAClC,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;oBACrC,CAAC,CAAC,IAAI;gBACR,UAAU,EAAE,YAAY,CAAC,aAAa;oBACpC,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC;oBACtC,CAAC,CAAC,IAAI;gBACR,KAAK,EAAE,YAAY,CAAC,aAAa,IAAI,IAAI;aAC1C,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,0BAAU,CAAC,UAAU,CAAC,OAAO,EAAE,6BAA6B,KAAK,EAAE,CAAC,CAAC;YACrE,OAAO,IAAA,eAAG,GAAE,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,CAAC,WAAW;QAChB,MAAM,MAAM,GAAG,MAAM,oCAAe,CAAC,UAAU,EAAE,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,0BAAU,CAAC,UAAU,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,sDAAsD;QACtD,0CAA0C;QAC1C,8FAA8F;QAC9F,6DAA6D;QAE7D,IAAI,UAAU,GAAW,EAAE,CAAC;QAC5B,IAAI,QAAQ,GAAY,IAAI,CAAC;QAE7B,OAAO,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBACzE,sEAAsE;gBACtE,8CAA8C;gBAC9C,yDAAyD;gBACzD,gEAAgE;gBAChE,4EAA4E;gBAC5E,kFAAkF;gBAClF,wDAAwD;gBACxD,qFAAqF;gBACrF,qBAAqB;gBACrB,0CAA0C;gBAC1C,2CAA2C;gBAC3C,gEAAgE;gBAChE,qCAAqC;gBACrC,2DAA2D;gBAC3D,oFAAoF;gBACpF,6EAA6E;gBAE7E,qFAAqF;gBACrF,6EAA6E;gBAC7E,0EAA0E;gBAE1E,gFAAgF;gBAChF,2CAA2C;gBAE3C,sBAAsB;gBACtB,MAAM,YAAY,GAA8B,IAAA,yBAAY,EAAqB,QAAQ,CAAC,CAAC;gBAC3F,IAAI,YAAY,EAAE,CAAC;oBACf,MAAM,MAAM,GAAW,YAAY,CAAC,MAAM,CAAC;oBAC3C,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;wBACvD,QAAQ,GAAG,KAAK,CAAC;oBACrB,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACH,QAAQ,GAAG,KAAK,CAAC;gBACtB,CAAC;gBAED,wEAAwE;gBACxE,uCAAuC;gBACvC,iDAAiD;gBACjD,wEAAwE;gBAExE,iCAAiC;gBACjC,uEAAuE;gBACvE,4CAA4C;gBAC5C,6EAA6E;gBAE7E,gCAAgC;gBAEhC,IAAI,CAAC,QAAQ;oBAAE,MAAM;gBACrB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAE1D,CAAC;YAAC,OAAO,CAAU,EAAE,CAAC;gBAClB,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM;QACV,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,oCAAe,CAAC,UAAU,EAAE,CAAC;YAClD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,0BAAU,CAAC,UAAU,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;gBACzD,OAAO,IAAA,eAAG,GAAE,CAAC;YACjB,CAAC;YAED,mEAAmE;YACnE,gEAAgE;YAChE,gFAAgF;YAEhF,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACzE,IAAI,QAAQ,EAAE,CAAC;gBACX,MAAM,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;gBAC5C,OAAO,IAAA,cAAE,EAAC,IAAI,CAAC,CAAC;YACpB,CAAC;YACD,OAAO,IAAA,eAAG,GAAE,CAAC;QACf,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,0BAAU,CAAC,UAAU,CAAC,OAAO,EAAE,yBAAyB,KAAK,EAAE,CAAC,CAAC;YACjE,OAAO,IAAA,eAAG,GAAE,CAAC;QACf,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,YAAgC;QACzD,oDAAoD;QACpD,oEAAoE;QACpE,QAAQ,YAAY,CAAC,MAAM,EAAE,CAAC;YAC5B,KAAK,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC;YAC3B,KAAK,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAC;YACnC,KAAK,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;YAC1B,KAAK,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAE,yBAAyB;YACrD,KAAK,WAAW,CAAC,CAAC,OAAO,GAAG,CAAC;YAC7B,KAAK,OAAO,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,4BAA4B;YACtD,KAAK,WAAW,CAAC,CAAC,OAAO,GAAG,CAAC;YAC7B,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;CACF;AAxKD,4BAwKC"}
1
+ {"version":3,"file":"chrisJob.js","sourceRoot":"","sources":["../../src/jobs/chrisJob.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * @file Runtime output port.
3
+ *
4
+ * Provides a narrow host-installed output port for lower-layer operational
5
+ * messages. Cumin and Salsa must not depend upward on a terminal or Brasa,
6
+ * but their command-time notices still need a destination selected by the
7
+ * host. The default preserves standalone CLI behavior; a host may replace it
8
+ * with a surface-aware writer.
9
+ *
10
+ * @module
11
+ */
12
+ /** A destination for unstructured command-time output. */
13
+ export interface RuntimeOutput {
14
+ /**
15
+ * Writes ordinary output.
16
+ *
17
+ * @param chunk - Text or bytes to deliver.
18
+ * @returns Nothing.
19
+ */
20
+ data_write(chunk: string | Buffer): void;
21
+ /**
22
+ * Writes diagnostic output.
23
+ *
24
+ * @param chunk - Text or bytes to deliver.
25
+ * @returns Nothing.
26
+ */
27
+ err_write(chunk: string | Buffer): void;
28
+ }
29
+ /**
30
+ * Installs the runtime output destination.
31
+ *
32
+ * @param output - The host-owned output destination.
33
+ * @returns The previously active destination.
34
+ */
35
+ export declare function runtimeOutput_set(output: RuntimeOutput): RuntimeOutput;
36
+ /**
37
+ * Writes ordinary runtime output through the active host destination.
38
+ *
39
+ * @param chunk - Text or bytes to deliver.
40
+ * @returns Nothing.
41
+ */
42
+ export declare function runtimeOutput_data(chunk: string | Buffer): void;
43
+ /**
44
+ * Writes diagnostic runtime output through the active host destination.
45
+ *
46
+ * @param chunk - Text or bytes to deliver.
47
+ * @returns Nothing.
48
+ */
49
+ export declare function runtimeOutput_err(chunk: string | Buffer): void;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ /**
3
+ * @file Runtime output port.
4
+ *
5
+ * Provides a narrow host-installed output port for lower-layer operational
6
+ * messages. Cumin and Salsa must not depend upward on a terminal or Brasa,
7
+ * but their command-time notices still need a destination selected by the
8
+ * host. The default preserves standalone CLI behavior; a host may replace it
9
+ * with a surface-aware writer.
10
+ *
11
+ * @module
12
+ */
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.runtimeOutput_set = runtimeOutput_set;
15
+ exports.runtimeOutput_data = runtimeOutput_data;
16
+ exports.runtimeOutput_err = runtimeOutput_err;
17
+ const consoleOutput = {
18
+ data_write: (chunk) => { process.stdout.write(chunk); },
19
+ err_write: (chunk) => { process.stderr.write(chunk); },
20
+ };
21
+ let activeOutput = consoleOutput;
22
+ /**
23
+ * Installs the runtime output destination.
24
+ *
25
+ * @param output - The host-owned output destination.
26
+ * @returns The previously active destination.
27
+ */
28
+ function runtimeOutput_set(output) {
29
+ const previous = activeOutput;
30
+ activeOutput = output;
31
+ return previous;
32
+ }
33
+ /**
34
+ * Writes ordinary runtime output through the active host destination.
35
+ *
36
+ * @param chunk - Text or bytes to deliver.
37
+ * @returns Nothing.
38
+ */
39
+ function runtimeOutput_data(chunk) {
40
+ activeOutput.data_write(chunk);
41
+ }
42
+ /**
43
+ * Writes diagnostic runtime output through the active host destination.
44
+ *
45
+ * @param chunk - Text or bytes to deliver.
46
+ * @returns Nothing.
47
+ */
48
+ function runtimeOutput_err(chunk) {
49
+ activeOutput.err_write(chunk);
50
+ }
51
+ //# sourceMappingURL=runtimeOutput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtimeOutput.js","sourceRoot":"","sources":["../../src/output/runtimeOutput.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;AAiCH,8CAIC;AAQD,gDAEC;AAQD,8CAEC;AArCD,MAAM,aAAa,GAAkB;IACnC,UAAU,EAAE,CAAC,KAAsB,EAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9E,SAAS,EAAE,CAAC,KAAsB,EAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;CAC9E,CAAC;AAEF,IAAI,YAAY,GAAkB,aAAa,CAAC;AAEhD;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,MAAqB;IACrD,MAAM,QAAQ,GAAkB,YAAY,CAAC;IAC7C,YAAY,GAAG,MAAM,CAAC;IACtB,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAC,KAAsB;IACvD,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,KAAsB;IACtD,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC"}
@@ -172,6 +172,8 @@ export interface SeriesRetrieveStatus {
172
172
  expectedFiles: number;
173
173
  actualFiles: number;
174
174
  status: "pending" | "pulling" | "pulled" | "error";
175
+ /** CUBE storage folder the series landed in, or null when nothing arrived. */
176
+ folderPath: string | null;
175
177
  }
176
178
  /**
177
179
  * Study with series status information.
@@ -191,6 +193,32 @@ export interface PACSQueryStatusReport {
191
193
  retrieveId?: number;
192
194
  studies: StudyRetrieveStatus[];
193
195
  }
196
+ /** A series' presence in CUBE storage: registered file count and folder. */
197
+ export interface SeriesStorageState {
198
+ /** Number of PACSFiles registered for the series. */
199
+ fileCount: number;
200
+ /** Display folder path (leading slash), or null when nothing arrived. */
201
+ folderPath: string | null;
202
+ }
203
+ /**
204
+ * Resolves a series' CUBE storage state: its registered file count and the
205
+ * folder it landed in.
206
+ *
207
+ * With `retry` options, re-probes across the registration lag between a PACS
208
+ * push completing and the PACSSeries record becoming queryable, returning the
209
+ * first state that carries a folder. This is the one series-storage resolver;
210
+ * the per-package copies it replaces are gone.
211
+ *
212
+ * @param seriesInstanceUID - The series instance UID to inspect.
213
+ * @param retry - Optional bounded re-probing: total attempts and the delay
214
+ * between them.
215
+ * @returns Result containing the storage state; failures resolve to an empty
216
+ * state (count 0, no folder) rather than failing the whole report.
217
+ */
218
+ export declare function seriesStorage_resolve(seriesInstanceUID: string, retry?: {
219
+ attempts: number;
220
+ delayMs: number;
221
+ }): Promise<Result<SeriesStorageState>>;
194
222
  /**
195
223
  * Reports the retrieve status for a PACS query.
196
224
  *