@vertesia/client 0.78.0-dev-9372725 → 0.78.0-dev.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 (221) hide show
  1. package/lib/cjs/AccountApi.js +85 -0
  2. package/lib/cjs/AccountApi.js.map +1 -0
  3. package/lib/cjs/AccountsApi.js +16 -0
  4. package/lib/cjs/AccountsApi.js.map +1 -0
  5. package/lib/cjs/AnalyticsApi.js +13 -0
  6. package/lib/cjs/AnalyticsApi.js.map +1 -0
  7. package/lib/cjs/ApiKeysApi.js +63 -0
  8. package/lib/cjs/ApiKeysApi.js.map +1 -0
  9. package/lib/cjs/AppsApi.js +119 -0
  10. package/lib/cjs/AppsApi.js.map +1 -0
  11. package/lib/cjs/CommandsApi.js +19 -0
  12. package/lib/cjs/CommandsApi.js.map +1 -0
  13. package/lib/cjs/EnvironmentsApi.js +58 -0
  14. package/lib/cjs/EnvironmentsApi.js.map +1 -0
  15. package/lib/cjs/GroupsApi.js +78 -0
  16. package/lib/cjs/GroupsApi.js.map +1 -0
  17. package/lib/cjs/IamApi.js +53 -0
  18. package/lib/cjs/IamApi.js.map +1 -0
  19. package/lib/cjs/InteractionBase.js +44 -0
  20. package/lib/cjs/InteractionBase.js.map +1 -0
  21. package/lib/cjs/InteractionsApi.js +217 -0
  22. package/lib/cjs/InteractionsApi.js.map +1 -0
  23. package/lib/cjs/ProjectsApi.js +48 -0
  24. package/lib/cjs/ProjectsApi.js.map +1 -0
  25. package/lib/cjs/PromptsApi.js +133 -0
  26. package/lib/cjs/PromptsApi.js.map +1 -0
  27. package/lib/cjs/RefsApi.js +14 -0
  28. package/lib/cjs/RefsApi.js.map +1 -0
  29. package/lib/cjs/RunsApi.js +110 -0
  30. package/lib/cjs/RunsApi.js.map +1 -0
  31. package/lib/cjs/StreamSource.js +17 -0
  32. package/lib/cjs/StreamSource.js.map +1 -0
  33. package/lib/cjs/TrainingApi.js +54 -0
  34. package/lib/cjs/TrainingApi.js.map +1 -0
  35. package/lib/cjs/UsersApi.js +13 -0
  36. package/lib/cjs/UsersApi.js.map +1 -0
  37. package/lib/cjs/client.js +336 -0
  38. package/lib/cjs/client.js.map +1 -0
  39. package/lib/cjs/execute.js +158 -0
  40. package/lib/cjs/execute.js.map +1 -0
  41. package/lib/cjs/index.js +21 -0
  42. package/lib/cjs/index.js.map +1 -0
  43. package/lib/cjs/nodejs/NodeStreamSource.js +45 -0
  44. package/lib/cjs/nodejs/NodeStreamSource.js.map +1 -0
  45. package/lib/cjs/nodejs/index.js +18 -0
  46. package/lib/cjs/nodejs/index.js.map +1 -0
  47. package/lib/cjs/package.json +3 -0
  48. package/lib/cjs/store/AgentsApi.js +16 -0
  49. package/lib/cjs/store/AgentsApi.js.map +1 -0
  50. package/lib/cjs/store/AnalyzeDocApi.js +56 -0
  51. package/lib/cjs/store/AnalyzeDocApi.js.map +1 -0
  52. package/lib/cjs/store/CollectionsApi.js +101 -0
  53. package/lib/cjs/store/CollectionsApi.js.map +1 -0
  54. package/lib/cjs/store/CommandsApi.js +17 -0
  55. package/lib/cjs/store/CommandsApi.js.map +1 -0
  56. package/lib/cjs/store/EmbeddingsApi.js +29 -0
  57. package/lib/cjs/store/EmbeddingsApi.js.map +1 -0
  58. package/lib/cjs/store/FilesApi.js +147 -0
  59. package/lib/cjs/store/FilesApi.js.map +1 -0
  60. package/lib/cjs/store/ObjectsApi.js +281 -0
  61. package/lib/cjs/store/ObjectsApi.js.map +1 -0
  62. package/lib/cjs/store/TypesApi.js +57 -0
  63. package/lib/cjs/store/TypesApi.js.map +1 -0
  64. package/lib/cjs/store/WorkflowsApi.js +412 -0
  65. package/lib/cjs/store/WorkflowsApi.js.map +1 -0
  66. package/lib/cjs/store/client.js +61 -0
  67. package/lib/cjs/store/client.js.map +1 -0
  68. package/lib/cjs/store/errors.js +11 -0
  69. package/lib/cjs/store/errors.js.map +1 -0
  70. package/lib/cjs/store/index.js +22 -0
  71. package/lib/cjs/store/index.js.map +1 -0
  72. package/lib/cjs/store/version.js +6 -0
  73. package/lib/cjs/store/version.js.map +1 -0
  74. package/lib/esm/AccountApi.js +82 -0
  75. package/lib/esm/AccountApi.js.map +1 -0
  76. package/lib/esm/AccountsApi.js +13 -0
  77. package/lib/esm/AccountsApi.js.map +1 -0
  78. package/lib/esm/AnalyticsApi.js +10 -0
  79. package/lib/esm/AnalyticsApi.js.map +1 -0
  80. package/lib/esm/ApiKeysApi.js +59 -0
  81. package/lib/esm/ApiKeysApi.js.map +1 -0
  82. package/lib/esm/AppsApi.js +116 -0
  83. package/lib/esm/AppsApi.js.map +1 -0
  84. package/lib/esm/CommandsApi.js +16 -0
  85. package/lib/esm/CommandsApi.js.map +1 -0
  86. package/lib/esm/EnvironmentsApi.js +55 -0
  87. package/lib/esm/EnvironmentsApi.js.map +1 -0
  88. package/lib/esm/GroupsApi.js +74 -0
  89. package/lib/esm/GroupsApi.js.map +1 -0
  90. package/lib/esm/IamApi.js +47 -0
  91. package/lib/esm/IamApi.js.map +1 -0
  92. package/lib/esm/InteractionBase.js +40 -0
  93. package/lib/esm/InteractionBase.js.map +1 -0
  94. package/lib/esm/InteractionsApi.js +214 -0
  95. package/lib/esm/InteractionsApi.js.map +1 -0
  96. package/lib/esm/ProjectsApi.js +45 -0
  97. package/lib/esm/ProjectsApi.js.map +1 -0
  98. package/lib/esm/PromptsApi.js +130 -0
  99. package/lib/esm/PromptsApi.js.map +1 -0
  100. package/lib/esm/RefsApi.js +10 -0
  101. package/lib/esm/RefsApi.js.map +1 -0
  102. package/lib/esm/RunsApi.js +106 -0
  103. package/lib/esm/RunsApi.js.map +1 -0
  104. package/lib/esm/StreamSource.js +13 -0
  105. package/lib/esm/StreamSource.js.map +1 -0
  106. package/lib/esm/TrainingApi.js +51 -0
  107. package/lib/esm/TrainingApi.js.map +1 -0
  108. package/lib/esm/UsersApi.js +10 -0
  109. package/lib/esm/UsersApi.js.map +1 -0
  110. package/lib/esm/client.js +327 -0
  111. package/lib/esm/client.js.map +1 -0
  112. package/lib/esm/execute.js +118 -0
  113. package/lib/esm/execute.js.map +1 -0
  114. package/lib/esm/index.js +5 -0
  115. package/lib/esm/index.js.map +1 -0
  116. package/lib/esm/nodejs/NodeStreamSource.js +41 -0
  117. package/lib/esm/nodejs/NodeStreamSource.js.map +1 -0
  118. package/lib/esm/nodejs/index.js +2 -0
  119. package/lib/esm/nodejs/index.js.map +1 -0
  120. package/lib/esm/store/AgentsApi.js +12 -0
  121. package/lib/esm/store/AgentsApi.js.map +1 -0
  122. package/lib/esm/store/AnalyzeDocApi.js +52 -0
  123. package/lib/esm/store/AnalyzeDocApi.js.map +1 -0
  124. package/lib/esm/store/CollectionsApi.js +97 -0
  125. package/lib/esm/store/CollectionsApi.js.map +1 -0
  126. package/lib/esm/store/CommandsApi.js +13 -0
  127. package/lib/esm/store/CommandsApi.js.map +1 -0
  128. package/lib/esm/store/EmbeddingsApi.js +25 -0
  129. package/lib/esm/store/EmbeddingsApi.js.map +1 -0
  130. package/lib/esm/store/FilesApi.js +142 -0
  131. package/lib/esm/store/FilesApi.js.map +1 -0
  132. package/lib/esm/store/ObjectsApi.js +277 -0
  133. package/lib/esm/store/ObjectsApi.js.map +1 -0
  134. package/lib/esm/store/TypesApi.js +53 -0
  135. package/lib/esm/store/TypesApi.js.map +1 -0
  136. package/lib/esm/store/WorkflowsApi.js +406 -0
  137. package/lib/esm/store/WorkflowsApi.js.map +1 -0
  138. package/lib/esm/store/client.js +57 -0
  139. package/lib/esm/store/client.js.map +1 -0
  140. package/lib/esm/store/errors.js +7 -0
  141. package/lib/esm/store/errors.js.map +1 -0
  142. package/lib/esm/store/index.js +6 -0
  143. package/lib/esm/store/index.js.map +1 -0
  144. package/lib/esm/store/version.js +3 -0
  145. package/lib/esm/store/version.js.map +1 -0
  146. package/lib/tsconfig.tsbuildinfo +1 -0
  147. package/lib/types/AccountApi.d.ts +59 -0
  148. package/lib/types/AccountApi.d.ts.map +1 -0
  149. package/lib/types/AccountsApi.d.ts +7 -0
  150. package/lib/types/AccountsApi.d.ts.map +1 -0
  151. package/lib/types/AnalyticsApi.d.ts +6 -0
  152. package/lib/types/AnalyticsApi.d.ts.map +1 -0
  153. package/lib/types/ApiKeysApi.d.ts +42 -0
  154. package/lib/types/ApiKeysApi.d.ts.map +1 -0
  155. package/lib/types/AppsApi.d.ts +65 -0
  156. package/lib/types/AppsApi.d.ts.map +1 -0
  157. package/lib/types/CommandsApi.d.ts +10 -0
  158. package/lib/types/CommandsApi.d.ts.map +1 -0
  159. package/lib/types/EnvironmentsApi.d.ts +30 -0
  160. package/lib/types/EnvironmentsApi.d.ts.map +1 -0
  161. package/lib/types/GroupsApi.d.ts +65 -0
  162. package/lib/types/GroupsApi.d.ts.map +1 -0
  163. package/lib/types/IamApi.d.ts +41 -0
  164. package/lib/types/IamApi.d.ts.map +1 -0
  165. package/lib/types/InteractionBase.d.ts +22 -0
  166. package/lib/types/InteractionBase.d.ts.map +1 -0
  167. package/lib/types/InteractionsApi.d.ts +157 -0
  168. package/lib/types/InteractionsApi.d.ts.map +1 -0
  169. package/lib/types/ProjectsApi.d.ts +17 -0
  170. package/lib/types/ProjectsApi.d.ts.map +1 -0
  171. package/lib/types/PromptsApi.d.ts +106 -0
  172. package/lib/types/PromptsApi.d.ts.map +1 -0
  173. package/lib/types/RefsApi.d.ts +6 -0
  174. package/lib/types/RefsApi.d.ts.map +1 -0
  175. package/lib/types/RunsApi.d.ts +78 -0
  176. package/lib/types/RunsApi.d.ts.map +1 -0
  177. package/lib/types/StreamSource.d.ts +7 -0
  178. package/lib/types/StreamSource.d.ts.map +1 -0
  179. package/lib/types/TrainingApi.d.ts +27 -0
  180. package/lib/types/TrainingApi.d.ts.map +1 -0
  181. package/lib/types/UsersApi.d.ts +6 -0
  182. package/lib/types/UsersApi.d.ts.map +1 -0
  183. package/lib/types/client.d.ts +122 -0
  184. package/lib/types/client.d.ts.map +1 -0
  185. package/lib/types/execute.d.ts +37 -0
  186. package/lib/types/execute.d.ts.map +1 -0
  187. package/lib/types/index.d.ts +8 -0
  188. package/lib/types/index.d.ts.map +1 -0
  189. package/lib/types/nodejs/NodeStreamSource.d.ts +9 -0
  190. package/lib/types/nodejs/NodeStreamSource.d.ts.map +1 -0
  191. package/lib/types/nodejs/index.d.ts +1 -0
  192. package/lib/types/nodejs/index.d.ts.map +1 -0
  193. package/lib/types/store/AgentsApi.d.ts +6 -0
  194. package/lib/types/store/AgentsApi.d.ts.map +1 -0
  195. package/lib/types/store/AnalyzeDocApi.d.ts +17 -0
  196. package/lib/types/store/AnalyzeDocApi.d.ts.map +1 -0
  197. package/lib/types/store/CollectionsApi.d.ts +66 -0
  198. package/lib/types/store/CollectionsApi.d.ts.map +1 -0
  199. package/lib/types/store/CommandsApi.d.ts +10 -0
  200. package/lib/types/store/CommandsApi.d.ts.map +1 -0
  201. package/lib/types/store/EmbeddingsApi.d.ts +12 -0
  202. package/lib/types/store/EmbeddingsApi.d.ts.map +1 -0
  203. package/lib/types/store/FilesApi.d.ts +47 -0
  204. package/lib/types/store/FilesApi.d.ts.map +1 -0
  205. package/lib/types/store/ObjectsApi.d.ts +122 -0
  206. package/lib/types/store/ObjectsApi.d.ts.map +1 -0
  207. package/lib/types/store/TypesApi.d.ts +23 -0
  208. package/lib/types/store/TypesApi.d.ts.map +1 -0
  209. package/lib/types/store/WorkflowsApi.d.ts +62 -0
  210. package/lib/types/store/WorkflowsApi.d.ts.map +1 -0
  211. package/lib/types/store/client.d.ts +34 -0
  212. package/lib/types/store/client.d.ts.map +1 -0
  213. package/lib/types/store/errors.d.ts +4 -0
  214. package/lib/types/store/errors.d.ts.map +1 -0
  215. package/lib/types/store/index.d.ts +5 -0
  216. package/lib/types/store/index.d.ts.map +1 -0
  217. package/lib/types/store/version.d.ts +3 -0
  218. package/lib/types/store/version.d.ts.map +1 -0
  219. package/lib/vertesia-client.js +2 -0
  220. package/lib/vertesia-client.js.map +1 -0
  221. package/package.json +59 -59
@@ -0,0 +1,97 @@
1
+ import { ApiTopic } from "@vertesia/api-fetch-client";
2
+ export class CollectionsApi extends ApiTopic {
3
+ constructor(parent) {
4
+ super(parent, "/api/v1/collections");
5
+ }
6
+ /**
7
+ * List collections
8
+ * @param payload: CollectionSearchPayload
9
+ * @returns CollectionItem[] list of collections
10
+ **/
11
+ search(payload) {
12
+ return this.post("/search", { payload });
13
+ }
14
+ /**
15
+ * Compute facets for List collections
16
+ * @param query: ComputeCollectionFacetPayload
17
+ * @returns ComputeFacetsResponse list of facets
18
+ **/
19
+ computeListFacets(query) {
20
+ return this.post("/facets", {
21
+ payload: query
22
+ });
23
+ }
24
+ /**
25
+ * Get the collection data without members
26
+ * @param collectionId
27
+ * @returns
28
+ */
29
+ retrieve(collectionId) {
30
+ return this.get(`/${collectionId}`);
31
+ }
32
+ create(payload) {
33
+ return this.post(`/`, {
34
+ payload
35
+ });
36
+ }
37
+ update(collectionId, payload) {
38
+ return this.put(`/${collectionId}`, {
39
+ payload
40
+ });
41
+ }
42
+ addMembers(collectionId, members) {
43
+ return this.post(`/${collectionId}/members`, {
44
+ payload: {
45
+ action: 'add',
46
+ members
47
+ }
48
+ });
49
+ }
50
+ listMembers(collectionId, payload) {
51
+ return this.get(`/${collectionId}/members`, {
52
+ query: {
53
+ ...payload
54
+ }
55
+ });
56
+ }
57
+ computeFacets(collectionId, query) {
58
+ return this.post(`/${collectionId}/facets`, {
59
+ payload: query
60
+ });
61
+ }
62
+ searchMembers(collectionId, payload) {
63
+ return this.post(`/${collectionId}/search`, { payload });
64
+ }
65
+ deleteMembers(collectionId, members) {
66
+ return this.post(`/${collectionId}/members`, {
67
+ payload: {
68
+ action: 'delete',
69
+ members
70
+ }
71
+ });
72
+ }
73
+ delete(id) {
74
+ return this.del(`/${id}`);
75
+ }
76
+ /**
77
+ * Update collection permissions and propagate to member objects
78
+ * @param collectionId - The collection ID
79
+ * @param permissions - Map of permission types to principal arrays
80
+ * @returns Object with collection id, updated security, and number of objects updated
81
+ */
82
+ updatePermissions(collectionId, permissions) {
83
+ return this.put(`/${collectionId}/permissions`, {
84
+ payload: permissions
85
+ });
86
+ }
87
+ /**
88
+ * Manually trigger permission propagation from collection to member objects
89
+ * Useful for debugging and fixing permission issues
90
+ * @param collectionId - The collection ID
91
+ * @returns Object with collection id, message, and number of objects updated
92
+ */
93
+ propagatePermissions(collectionId) {
94
+ return this.post(`/${collectionId}/propagate-permissions`);
95
+ }
96
+ }
97
+ //# sourceMappingURL=CollectionsApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CollectionsApi.js","sourceRoot":"","sources":["../../../src/store/CollectionsApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAc,MAAM,4BAA4B,CAAC;AAKlE,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAExC,YAAY,MAAkB;QAC1B,KAAK,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,OAAqC;QACxC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,KAAoC;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACxB,OAAO,EAAE,KAAK;SACjB,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,YAAoB;QACzB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,OAAgC;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAClB,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED,MAAM,CAAC,YAAoB,EAAE,OAAyC;QAClE,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,EAAE,EAAE;YAChC,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED,UAAU,CAAC,YAAoB,EAAE,OAAiB;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,YAAY,UAAU,EAAE;YACzC,OAAO,EAAE;gBACL,MAAM,EAAE,KAAK;gBACb,OAAO;aACV;SACJ,CAAC,CAAC;IACP,CAAC;IAED,WAAW,CAAC,YAAoB,EAAE,OAKjC;QACG,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,UAAU,EAAE;YACxC,KAAK,EAAE;gBACH,GAAG,OAAO;aACb;SACJ,CAAC,CAAC;IACP,CAAC;IAED,aAAa,CAAC,YAAoB,EAAE,KAAgC;QAChE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,YAAY,SAAS,EAAE;YACxC,OAAO,EAAE,KAAK;SACjB,CAAC,CAAC;IACP,CAAC;IAED,aAAa,CAAC,YAAoB,EAAE,OAA6B;QAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,YAAY,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,aAAa,CAAC,YAAoB,EAAE,OAAiB;QACjD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,YAAY,UAAU,EAAE;YACzC,OAAO,EAAE;gBACL,MAAM,EAAE,QAAQ;gBAChB,OAAO;aACV;SACJ,CAAC,CAAC;IACP,CAAC;IAED,MAAM,CAAC,EAAU;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,YAAoB,EAAE,WAAqC;QAKzE,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,cAAc,EAAE;YAC5C,OAAO,EAAE,WAAW;SACvB,CAAC,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,YAAoB;QAMrC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,YAAY,wBAAwB,CAAC,CAAC;IAC/D,CAAC;CAEJ"}
@@ -0,0 +1,13 @@
1
+ import { ApiTopic } from "@vertesia/api-fetch-client";
2
+ import { EmbeddingsApi } from "./EmbeddingsApi.js";
3
+ /**
4
+ * @deprecated use EmbeddingsApi instead
5
+ * @see EmbeddingsApi
6
+ */
7
+ export class CommandsApi extends ApiTopic {
8
+ constructor(parent) {
9
+ super(parent, "/api/v1/commands");
10
+ }
11
+ embeddings = new EmbeddingsApi(this, "/embeddings");
12
+ }
13
+ //# sourceMappingURL=CommandsApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandsApi.js","sourceRoot":"","sources":["../../../src/store/CommandsApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAc,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;GAGG;AACH,MAAM,OAAO,WAAY,SAAQ,QAAQ;IAErC,YAAY,MAAkB;QAC1B,KAAK,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IACtC,CAAC;IAED,UAAU,GAAG,IAAI,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;CACvD"}
@@ -0,0 +1,25 @@
1
+ import { ApiTopic } from "@vertesia/api-fetch-client";
2
+ /**
3
+ * @since 0.52.0
4
+ */
5
+ export class EmbeddingsApi extends ApiTopic {
6
+ constructor(parent, basePath = "/api/v1/embeddings") {
7
+ super(parent, basePath);
8
+ }
9
+ async status(type) {
10
+ return this.get(type + "/status");
11
+ }
12
+ async activate(type, config) {
13
+ if (!config.environment) {
14
+ throw new Error("Invalid configuration: select environment");
15
+ }
16
+ return this.post(type + "/enable", { payload: config });
17
+ }
18
+ async disable(type) {
19
+ return this.post(type + "/disable");
20
+ }
21
+ async recalculate(type) {
22
+ return this.post(type + "/recalculate");
23
+ }
24
+ }
25
+ //# sourceMappingURL=EmbeddingsApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbeddingsApi.js","sourceRoot":"","sources":["../../../src/store/EmbeddingsApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAc,MAAM,4BAA4B,CAAC;AAQlE;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,QAAQ;IAEvC,YAAY,MAAkB,EAAE,WAAmB,oBAAoB;QACnE,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAA6B;QACtC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAA6B,EAAE,MAA+C;QAEzF,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACjE,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAA6B;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,IAA6B;QAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,CAAC;IAC5C,CAAC;CAEJ"}
@@ -0,0 +1,142 @@
1
+ import { ApiTopic } from "@vertesia/api-fetch-client";
2
+ import { StreamSource } from "../StreamSource.js";
3
+ export const MEMORIES_PREFIX = "memories";
4
+ export function getMemoryFilePath(name) {
5
+ const nameWithExt = name.endsWith(".tar.gz") ? name : name + ".tar.gz";
6
+ return `${MEMORIES_PREFIX}/${nameWithExt}`;
7
+ }
8
+ export class FilesApi extends ApiTopic {
9
+ constructor(parent) {
10
+ super(parent, "/api/v1/files");
11
+ }
12
+ async deleteFile(path, prefix) {
13
+ const res = await this.delete(`/${path}`, { query: { prefix } });
14
+ return res.count;
15
+ }
16
+ /**
17
+ * get the metadata of a blob given its URI. Supported URI are:
18
+ * starting with s3:// and gs://.
19
+ * For s3 blobs use #region to specify the region. Ex: s3://bucket/key#us-west-2
20
+ * @param uri
21
+ * @returns
22
+ */
23
+ getMetadata(uri) {
24
+ return this.get("/metadata", {
25
+ query: {
26
+ file: uri,
27
+ },
28
+ });
29
+ }
30
+ /**
31
+ * Get or create a bucket for the project. If the bucket already exists, it does nothing.
32
+ * The bucket URI is returned.
33
+ * @returns
34
+ */
35
+ getOrCreateBucket() {
36
+ return this.post("/bucket");
37
+ }
38
+ getUploadUrl(payload) {
39
+ return this.post("/upload-url", {
40
+ payload,
41
+ });
42
+ }
43
+ getDownloadUrl(file) {
44
+ return this.post("/download-url", {
45
+ payload: {
46
+ file,
47
+ },
48
+ });
49
+ }
50
+ /**
51
+ * Upload content to a file and return the full path (including bucket name) of the uploaded file
52
+ * @param source
53
+ * @returns
54
+ */
55
+ async uploadFile(source) {
56
+ const isStream = source instanceof StreamSource;
57
+ const { url, id, path } = await this.getUploadUrl(source);
58
+ await fetch(url, {
59
+ method: "PUT",
60
+ body: isStream ? source.stream : source,
61
+ //@ts-ignore: duplex is not in the types. See https://github.com/node-fetch/node-fetch/issues/1769
62
+ duplex: isStream ? "half" : undefined,
63
+ headers: {
64
+ "Content-Type": source.type || "application/gzip",
65
+ },
66
+ })
67
+ .then((res) => {
68
+ if (res.ok) {
69
+ return res;
70
+ }
71
+ else {
72
+ console.log(res);
73
+ throw new Error(`Failed to upload file: ${res.statusText}`);
74
+ }
75
+ })
76
+ .catch((err) => {
77
+ console.error("Failed to upload file", { err, url, id, path });
78
+ throw err;
79
+ });
80
+ return id;
81
+ }
82
+ /**
83
+ *
84
+ * @param location can be a relative path in the project, a reference to a cloud storage, or a accessible HTTPS URL (typically signed URL)
85
+ * @returns ReadableStream
86
+ */
87
+ async downloadFile(location) {
88
+ //if start with HTTPS, no download url needed - assume it's signed already
89
+ const needSign = !location.startsWith("https:");
90
+ const { url } = needSign
91
+ ? await this.getDownloadUrl(location)
92
+ : { url: location };
93
+ const res = await fetch(url, {
94
+ method: "GET",
95
+ })
96
+ .then((res) => {
97
+ if (res.ok) {
98
+ return res;
99
+ }
100
+ else if (res.status === 404) {
101
+ throw new Error(`File at ${url} not found`); //TODO: type fetch error better with a fetch error class
102
+ }
103
+ else if (res.status === 403) {
104
+ throw new Error(`File at ${url} is forbidden`);
105
+ }
106
+ else {
107
+ console.log(res);
108
+ throw new Error(`Failed to download file ${location}: ${res.statusText}`);
109
+ }
110
+ })
111
+ .catch((err) => {
112
+ console.error(`Failed to download file ${location}.`, err);
113
+ throw err;
114
+ });
115
+ if (!res.body) {
116
+ throw new Error(`No body in response while downloading file ${location}`);
117
+ }
118
+ return res.body;
119
+ }
120
+ async uploadMemoryPack(source) {
121
+ const fileId = getMemoryFilePath(source.name);
122
+ const nameWithExt = source.name.endsWith(".tar.gz")
123
+ ? source.name
124
+ : source.name + ".tar.gz";
125
+ if (source instanceof File) {
126
+ let file = source;
127
+ return this.uploadFile(new StreamSource(file.stream(), nameWithExt, file.type, fileId));
128
+ }
129
+ else {
130
+ return this.uploadFile(new StreamSource(source.stream, nameWithExt, source.type, fileId));
131
+ }
132
+ }
133
+ async downloadMemoryPack(name, gunzip = false) {
134
+ let stream = await this.downloadFile(getMemoryFilePath(name));
135
+ if (gunzip) {
136
+ const ds = new DecompressionStream("gzip");
137
+ stream = stream.pipeThrough(ds);
138
+ }
139
+ return stream;
140
+ }
141
+ }
142
+ //# sourceMappingURL=FilesApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilesApi.js","sourceRoot":"","sources":["../../../src/store/FilesApi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,277 @@
1
+ import { ApiTopic } from "@vertesia/api-fetch-client";
2
+ import { ContentObjectApiHeaders, } from "@vertesia/common";
3
+ import { StreamSource } from "../StreamSource.js";
4
+ import { AnalyzeDocApi } from "./AnalyzeDocApi.js";
5
+ export class ObjectsApi extends ApiTopic {
6
+ constructor(parent) {
7
+ super(parent, "/api/v1/objects");
8
+ }
9
+ analyze(objectId) {
10
+ return new AnalyzeDocApi(this, objectId);
11
+ }
12
+ getUploadUrl(payload) {
13
+ return this.post("/upload-url", {
14
+ payload,
15
+ });
16
+ }
17
+ getDownloadUrl(fileUri) {
18
+ return this.post("/download-url", {
19
+ payload: {
20
+ file: fileUri,
21
+ },
22
+ });
23
+ }
24
+ getContentSource(objectId) {
25
+ return this.get(`/${objectId}/content-source`);
26
+ }
27
+ /**
28
+ * List objects with revision filtering options
29
+ *
30
+ * @param payload Search/filter parameters
31
+ * @returns Matching content objects
32
+ */
33
+ list(payload = {}) {
34
+ const limit = payload.limit || 100;
35
+ const offset = payload.offset || 0;
36
+ const query = payload.query || {};
37
+ return this.get("/", {
38
+ query: {
39
+ limit,
40
+ offset,
41
+ ...query,
42
+ all_revisions: payload.all_revisions,
43
+ from_root: payload.from_root || undefined,
44
+ },
45
+ });
46
+ }
47
+ computeFacets(query) {
48
+ return this.post("/facets", {
49
+ payload: query,
50
+ });
51
+ }
52
+ listFolders(path = "/") {
53
+ path; //TODO
54
+ }
55
+ /** Find object based on query */
56
+ find(payload) {
57
+ return this.post("/find", {
58
+ payload,
59
+ });
60
+ }
61
+ /** Count number of objects matching this query */
62
+ count(payload) {
63
+ return this.post("/count", {
64
+ payload,
65
+ });
66
+ }
67
+ /** Search object — different from find because allow full text search */
68
+ search(payload) {
69
+ return this.post("/search", {
70
+ payload,
71
+ });
72
+ }
73
+ retrieve(id, select) {
74
+ return this.get(`/${id}`, {
75
+ query: {
76
+ select,
77
+ },
78
+ });
79
+ }
80
+ getObjectText(id) {
81
+ return this.get(`/${id}/text`);
82
+ }
83
+ async upload(source) {
84
+ const isStream = source instanceof StreamSource;
85
+ // get a signed URL to upload the file a computed mimeType and the file object id.
86
+ const { url, id, mime_type } = await this.getUploadUrl({
87
+ id: isStream ? source.id : undefined,
88
+ name: source.name,
89
+ mime_type: source.type,
90
+ });
91
+ // upload the file content to the signed URL
92
+ /*const res = await this.fetch(url, {
93
+ method: 'PUT',
94
+ //@ts-ignore: duplex is not in the types. See https://github.com/node-fetch/node-fetch/issues/1769
95
+ duplex: isStream ? "half" : undefined,
96
+ body: isStream ? source.stream : source,
97
+ headers: {
98
+ 'Content-Type': mime_type || 'application/octet-stream'
99
+ }
100
+ }).then((res: Response) => {
101
+ if (res.ok) {
102
+ return res;
103
+ } else {
104
+ console.log(res);
105
+ throw new Error(`Failed to upload file: ${res.statusText}`);
106
+ }
107
+ });*/
108
+ const res = await fetch(url, {
109
+ method: "PUT",
110
+ body: isStream ? source.stream : source,
111
+ //@ts-ignore: duplex is not in the types. See https://github.com/node-fetch/node-fetch/issues/1769
112
+ duplex: isStream ? "half" : undefined,
113
+ headers: {
114
+ "Content-Type": mime_type || "application/octet-stream",
115
+ },
116
+ })
117
+ .then((res) => {
118
+ if (res.ok) {
119
+ return res;
120
+ }
121
+ else {
122
+ console.log(res);
123
+ throw new Error(`Failed to upload file: ${res.statusText}`);
124
+ }
125
+ })
126
+ .catch((err) => {
127
+ console.error("Failed to upload file", err);
128
+ throw err;
129
+ });
130
+ //Etag need to be unquoted
131
+ //When a server returns an ETag header, it includes the quotes around the actual hash value.
132
+ //This is part of the HTTP specification (RFC 7232), which states that ETags should be
133
+ //enclosed in double quotes.
134
+ const etag = res.headers.get("etag")?.replace(/^"(.*)"$/, "$1");
135
+ return {
136
+ source: id,
137
+ name: source.name,
138
+ type: mime_type,
139
+ etag,
140
+ };
141
+ }
142
+ async create(payload, options) {
143
+ const createPayload = {
144
+ ...payload,
145
+ };
146
+ if (payload.content instanceof StreamSource ||
147
+ payload.content instanceof File) {
148
+ createPayload.content = await this.upload(payload.content);
149
+ }
150
+ const headers = {};
151
+ if (options?.processing_priority) {
152
+ headers[ContentObjectApiHeaders.PROCESSING_PRIORITY] = options.processing_priority;
153
+ }
154
+ if (options?.collection_id) {
155
+ headers[ContentObjectApiHeaders.COLLECTION_ID] = options.collection_id;
156
+ }
157
+ return await this.post("/", {
158
+ payload: createPayload,
159
+ headers: headers,
160
+ });
161
+ }
162
+ /**
163
+ * Create an object which holds a reference to an external blob (i.e. not in the project bucket)
164
+ * The uri should starts either with gs:// or s3://. Not other protocols are supported yet.
165
+ * For the s3 blobs you must use a hash with the blob #region. Ex: s3://bucket/path/to/file#us-east-1
166
+ * @param uri
167
+ * @param payload
168
+ * @param options
169
+ * @returns
170
+ */
171
+ async createFromExternalSource(uri, payload = {}, options) {
172
+ const metadata = await this.client.files.getMetadata(uri);
173
+ const createPayload = {
174
+ ...payload,
175
+ content: {
176
+ source: uri,
177
+ name: metadata.name,
178
+ type: metadata.contentType,
179
+ etag: metadata.etag,
180
+ },
181
+ };
182
+ const headers = {};
183
+ if (options?.processing_priority) {
184
+ headers[ContentObjectApiHeaders.PROCESSING_PRIORITY] = options.processing_priority;
185
+ }
186
+ if (options?.collection_id) {
187
+ headers[ContentObjectApiHeaders.COLLECTION_ID] = options.collection_id;
188
+ }
189
+ return await this.post("/", {
190
+ payload: createPayload,
191
+ headers: headers,
192
+ });
193
+ }
194
+ /**
195
+ * Updates an existing object or creates a new revision
196
+ * Handles file uploads similar to the create method
197
+ *
198
+ * @param id The ID of the object to update
199
+ * @param payload The changes to apply
200
+ * @param options Additional options
201
+ * @param options.createRevision Whether to create a new revision instead of updating in place
202
+ * @param options.revisionLabel Optional label for the revision (e.g., "v1.2")
203
+ * @returns The updated object or newly created revision
204
+ */
205
+ async update(id, payload, options) {
206
+ const updatePayload = {
207
+ ...payload,
208
+ };
209
+ // Handle file upload if content is provided as File or StreamSource
210
+ if (payload.content instanceof StreamSource ||
211
+ payload.content instanceof File) {
212
+ updatePayload.content = await this.upload(payload.content);
213
+ }
214
+ const headers = {};
215
+ if (options?.processing_priority) {
216
+ headers[ContentObjectApiHeaders.PROCESSING_PRIORITY] = options.processing_priority;
217
+ }
218
+ if (options?.createRevision) {
219
+ headers[ContentObjectApiHeaders.CREATE_REVISION] = "true";
220
+ if (options.revisionLabel) {
221
+ headers[ContentObjectApiHeaders.REVISION_LABEL] = options.revisionLabel;
222
+ }
223
+ }
224
+ return this.put(`/${id}`, {
225
+ payload: updatePayload,
226
+ headers,
227
+ });
228
+ }
229
+ /**
230
+ * Retrieves all revisions of a content object
231
+ *
232
+ * @param id The ID of any revision in the object's history
233
+ * @returns Array of all revisions sharing the same root
234
+ */
235
+ getRevisions(id) {
236
+ return this.get(`/${id}/revisions`);
237
+ }
238
+ /**
239
+ * Retrieves all collections that contain a specific object
240
+ *
241
+ * @param id The ID of the object
242
+ * @returns Array of collections containing this object (both static and dynamic)
243
+ */
244
+ getCollections(id) {
245
+ return this.get(`/${id}/collections`);
246
+ }
247
+ delete(id) {
248
+ return this.del(`/${id}`);
249
+ }
250
+ listWorkflowRuns(documentId) {
251
+ return this.get(`/${documentId}/workflow-runs`);
252
+ }
253
+ listRenditions(documentId) {
254
+ return this.get(`/${documentId}/renditions`);
255
+ }
256
+ getRendition(documentId, options) {
257
+ const query = {
258
+ max_hw: options.max_hw,
259
+ generate_if_missing: options.generate_if_missing,
260
+ sign_url: options.sign_url,
261
+ };
262
+ return this.get(`/${documentId}/renditions/${options.format}`, {
263
+ query,
264
+ });
265
+ }
266
+ exportProperties(payload) {
267
+ return this.post("/export", {
268
+ payload,
269
+ });
270
+ }
271
+ setEmbedding(id, type, payload) {
272
+ return this.put(`/${id}/embeddings/${type}`, {
273
+ payload,
274
+ });
275
+ }
276
+ }
277
+ //# sourceMappingURL=ObjectsApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectsApi.js","sourceRoot":"","sources":["../../../src/store/ObjectsApi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { ApiTopic } from "@vertesia/api-fetch-client";
2
+ export class TypesApi extends ApiTopic {
3
+ constructor(parent) {
4
+ super(parent, "/api/v1/types");
5
+ }
6
+ /**
7
+ * The options can be used to include more information in the return objects.
8
+ * You can specify to also include layout information using `layout: true`.
9
+ * By default the layout information is not included.
10
+ * @param payload
11
+ * @param options
12
+ * @returns
13
+ */
14
+ list(payload = {}, options) {
15
+ const limit = payload.limit || 100;
16
+ const offset = payload.offset || 0;
17
+ const query = payload.query || {};
18
+ return this.get("/", {
19
+ query: {
20
+ limit,
21
+ offset,
22
+ layout: options?.layout ? true : false,
23
+ schema: options?.schema ? true : false,
24
+ ...query
25
+ }
26
+ });
27
+ }
28
+ find(payload) {
29
+ return this.post("/find", {
30
+ payload
31
+ });
32
+ }
33
+ retrieve(typeId) {
34
+ return this.get(`/${typeId}`);
35
+ }
36
+ getTypeByName(typeName) {
37
+ return this.get(`/name/${typeName}`);
38
+ }
39
+ update(typeId, payload) {
40
+ return this.put(`/${typeId}`, {
41
+ payload
42
+ });
43
+ }
44
+ create(payload) {
45
+ return this.post(`/`, {
46
+ payload
47
+ });
48
+ }
49
+ delete(id) {
50
+ return this.del(`/${id}`);
51
+ }
52
+ }
53
+ //# sourceMappingURL=TypesApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypesApi.js","sourceRoot":"","sources":["../../../src/store/TypesApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAc,MAAM,4BAA4B,CAAC;AAGlE,MAAM,OAAO,QAAS,SAAQ,QAAQ;IAElC,YAAY,MAAkB;QAC1B,KAAK,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACnC,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,CAAC,UAAmC,EAAE,EAAE,OAAgD;QACxF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC;QACnC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAA2B,CAAC;QAE3D,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE;YACjB,KAAK,EAAE;gBACH,KAAK;gBACL,MAAM;gBACN,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;gBACtC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;gBACtC,GAAG,KAAK;aACX;SACJ,CAAC,CAAC;IACP,CAAC;IAED,IAAI,CAAC,OAAoB;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACtB,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED,QAAQ,CAAC,MAAc;QACnB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,aAAa,CAAC,QAAgB;QAC1B,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,QAAQ,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,MAAc,EAAE,OAAgD;QACnE,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,EAAE,EAAE;YAC1B,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED,MAAM,CAAC,OAAuC;QAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAClB,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED,MAAM,CAAC,EAAU;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;CAEJ"}