@datalayer/core 1.0.25 → 1.1.43

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 (359) hide show
  1. package/README.md +11 -134
  2. package/lib/api/index.d.ts +0 -9
  3. package/lib/api/index.js +0 -9
  4. package/lib/cli-login.js +167 -0
  5. package/lib/client/auth/AuthenticationManager.d.ts +3 -3
  6. package/lib/client/auth/AuthenticationManager.js +13 -13
  7. package/lib/client/auth/strategies.d.ts +2 -2
  8. package/lib/client/auth/strategies.js +6 -6
  9. package/lib/client/base.d.ts +9 -12
  10. package/lib/client/base.js +17 -19
  11. package/lib/client/index.d.ts +10 -98
  12. package/lib/client/index.js +12 -21
  13. package/lib/client/mixins/IAMMixin.js +26 -26
  14. package/lib/components/auth/Login.js +2 -2
  15. package/lib/components/avatars/UserAvatar.d.ts +16 -0
  16. package/lib/components/avatars/UserAvatar.js +47 -0
  17. package/lib/components/avatars/index.d.ts +1 -0
  18. package/lib/components/avatars/index.js +1 -0
  19. package/lib/components/billing/BillableAccountSelect.js +4 -0
  20. package/lib/components/billing/index.js +4 -0
  21. package/lib/components/context/index.d.ts +0 -1
  22. package/lib/components/context/index.js +0 -1
  23. package/lib/components/display/DisplayHandle.d.ts +12 -0
  24. package/lib/components/display/DisplayHandle.js +11 -0
  25. package/lib/components/display/LiveRelativeTime.js +4 -0
  26. package/lib/components/display/index.d.ts +1 -0
  27. package/lib/components/display/index.js +1 -0
  28. package/lib/components/flashes/index.d.ts +0 -1
  29. package/lib/components/flashes/index.js +0 -1
  30. package/lib/components/index.d.ts +0 -1
  31. package/lib/components/index.js +0 -1
  32. package/lib/components/principal/Principal.d.ts +7 -0
  33. package/lib/components/principal/Principal.js +153 -16
  34. package/lib/components/principal/PrincipalAvatar.d.ts +1 -1
  35. package/lib/components/principal/PrincipalAvatar.js +4 -28
  36. package/lib/components/principal/PrincipalBadge.js +4 -4
  37. package/lib/components/principal/PrincipalDetailsOverlay.d.ts +4 -2
  38. package/lib/components/principal/PrincipalDetailsOverlay.js +27 -7
  39. package/lib/components/principal/PrincipalSwitcherMenu.js +79 -42
  40. package/lib/components/progress/index.d.ts +0 -1
  41. package/lib/components/progress/index.js +0 -1
  42. package/lib/components/sharing/ShareAccessComponent.d.ts +3 -2
  43. package/lib/components/sharing/ShareAccessComponent.js +194 -147
  44. package/lib/components/sharing/SharingEditor.js +4 -0
  45. package/lib/components/snippets/index.d.ts +1 -1
  46. package/lib/components/snippets/index.js +1 -1
  47. package/lib/components/students/StudentResultCircle.d.ts +21 -0
  48. package/lib/components/students/StudentResultCircle.js +59 -0
  49. package/lib/components/students/index.d.ts +1 -1
  50. package/lib/components/students/index.js +1 -1
  51. package/lib/components/time/LiveRelativeTime.js +4 -0
  52. package/lib/components/time/index.js +4 -0
  53. package/lib/components/timeline/index.js +4 -0
  54. package/lib/components/tokens/index.d.ts +1 -1
  55. package/lib/components/tokens/index.js +1 -1
  56. package/lib/components/toolbars/index.d.ts +1 -3
  57. package/lib/components/toolbars/index.js +1 -3
  58. package/lib/config/Configuration.d.ts +13 -13
  59. package/lib/config/Configuration.js +5 -5
  60. package/lib/hooks/cacheConverters.d.ts +21 -0
  61. package/lib/hooks/cacheConverters.js +110 -0
  62. package/lib/hooks/index.d.ts +0 -2
  63. package/lib/hooks/index.js +0 -2
  64. package/lib/hooks/useCache.d.ts +64 -35
  65. package/lib/hooks/useCache.js +661 -306
  66. package/lib/hooks/useDatalayer.js +3 -1
  67. package/lib/hooks/useIAM.js +2 -4
  68. package/lib/hooks/useLocationHandles.d.ts +3 -1
  69. package/lib/hooks/useLocationHandles.js +2 -1
  70. package/lib/hooks/usePrincipalStore.d.ts +2 -2
  71. package/lib/hooks/usePrincipalStore.js +97 -14
  72. package/lib/hooks/useSelectedPrincipal.js +1 -1
  73. package/lib/hooks/useUser.js +19 -2
  74. package/lib/index.d.ts +1 -6
  75. package/lib/index.js +1 -13
  76. package/lib/main.js +3 -3
  77. package/lib/mocks/index.js +1 -1
  78. package/lib/mocks/models/index.d.ts +0 -1
  79. package/lib/mocks/models/index.js +0 -1
  80. package/lib/models/Datasource.d.ts +2 -2
  81. package/lib/models/IAM.d.ts +1 -1
  82. package/lib/models/School.d.ts +12 -3
  83. package/lib/models/Secret.d.ts +2 -2
  84. package/lib/models/Student.d.ts +13 -3
  85. package/lib/models/Usage.d.ts +11 -1
  86. package/lib/models/UserDTO.d.ts +2 -2
  87. package/lib/models/UserSettings.d.ts +1 -1
  88. package/lib/models/UserSettings.js +1 -1
  89. package/lib/models/index.d.ts +0 -30
  90. package/lib/models/index.js +0 -30
  91. package/lib/otel/client/OtelClient.d.ts +2 -2
  92. package/lib/otel/client/OtelClient.js +2 -2
  93. package/lib/otel/hooks/index.js +5 -5
  94. package/lib/otel/types.d.ts +1 -1
  95. package/lib/otel/views/OtelLive.js +1 -1
  96. package/lib/routes/index.d.ts +1 -0
  97. package/lib/routes/index.js +1 -0
  98. package/lib/routes/publicPaths.d.ts +23 -0
  99. package/lib/routes/publicPaths.js +74 -0
  100. package/lib/state/State.d.ts +0 -12
  101. package/lib/state/State.js +0 -12
  102. package/lib/state/substates/CoreState.js +13 -13
  103. package/lib/state/substates/IAMState.d.ts +1 -1
  104. package/lib/state/substates/IAMState.js +14 -14
  105. package/lib/state/substates/LayoutState.d.ts +12 -1
  106. package/lib/state/substates/SurveysState.d.ts +1 -1
  107. package/lib/state/substates/SurveysState.js +10 -10
  108. package/lib/state/substates/index.d.ts +0 -7
  109. package/lib/state/substates/index.js +0 -7
  110. package/lib/utils/Handles.js +3 -1
  111. package/lib/utils/index.d.ts +0 -1
  112. package/lib/utils/index.js +0 -1
  113. package/lib/views/api-keys/APIKeys.js +12 -3
  114. package/lib/views/datasources/DatasourceDetail.d.ts +1 -1
  115. package/lib/views/datasources/DatasourceNew.d.ts +1 -1
  116. package/lib/views/datasources/Datasources.d.ts +1 -1
  117. package/lib/views/datasources/Datasources.js +12 -3
  118. package/lib/views/iam/SignInSimple.d.ts +37 -1
  119. package/lib/views/iam/SignInSimple.js +111 -13
  120. package/package.json +5 -3
  121. package/lib/App.css +0 -47
  122. package/lib/App.d.ts +0 -3
  123. package/lib/App.js +0 -21
  124. package/lib/api/runtimes/checkpoints.d.ts +0 -122
  125. package/lib/api/runtimes/checkpoints.js +0 -118
  126. package/lib/api/runtimes/environments.d.ts +0 -9
  127. package/lib/api/runtimes/environments.js +0 -29
  128. package/lib/api/runtimes/healthz.d.ts +0 -15
  129. package/lib/api/runtimes/healthz.js +0 -44
  130. package/lib/api/runtimes/index.d.ts +0 -12
  131. package/lib/api/runtimes/index.js +0 -16
  132. package/lib/api/runtimes/runtimes.d.ts +0 -138
  133. package/lib/api/runtimes/runtimes.js +0 -230
  134. package/lib/api/runtimes/snapshots.d.ts +0 -38
  135. package/lib/api/runtimes/snapshots.js +0 -82
  136. package/lib/api/scheduler/index.d.ts +0 -6
  137. package/lib/api/scheduler/index.js +0 -10
  138. package/lib/api/scheduler/schedules.d.ts +0 -85
  139. package/lib/api/scheduler/schedules.js +0 -78
  140. package/lib/api/spacer/documents.d.ts +0 -12
  141. package/lib/api/spacer/documents.js +0 -43
  142. package/lib/api/spacer/healthz.d.ts +0 -15
  143. package/lib/api/spacer/healthz.js +0 -44
  144. package/lib/api/spacer/index.d.ts +0 -15
  145. package/lib/api/spacer/index.js +0 -19
  146. package/lib/api/spacer/items.d.ts +0 -25
  147. package/lib/api/spacer/items.js +0 -55
  148. package/lib/api/spacer/lexicals.d.ts +0 -34
  149. package/lib/api/spacer/lexicals.js +0 -89
  150. package/lib/api/spacer/notebooks.d.ts +0 -34
  151. package/lib/api/spacer/notebooks.js +0 -89
  152. package/lib/api/spacer/spaces.d.ts +0 -84
  153. package/lib/api/spacer/spaces.js +0 -170
  154. package/lib/api/spacer/users.d.ts +0 -9
  155. package/lib/api/spacer/users.js +0 -29
  156. package/lib/client/mixins/RuntimesMixin.d.ts +0 -93
  157. package/lib/client/mixins/RuntimesMixin.js +0 -229
  158. package/lib/client/mixins/SpacerMixin.d.ts +0 -210
  159. package/lib/client/mixins/SpacerMixin.js +0 -615
  160. package/lib/client/utils/spacerUtils.d.ts +0 -18
  161. package/lib/client/utils/spacerUtils.js +0 -32
  162. package/lib/collaboration/DatalayerCollaboration.d.ts +0 -13
  163. package/lib/collaboration/DatalayerCollaboration.js +0 -28
  164. package/lib/collaboration/DatalayerCollaborationProvider.d.ts +0 -60
  165. package/lib/collaboration/DatalayerCollaborationProvider.js +0 -163
  166. package/lib/collaboration/index.d.ts +0 -2
  167. package/lib/collaboration/index.js +0 -6
  168. package/lib/components/context/SpaceSelect.d.ts +0 -2
  169. package/lib/components/context/SpaceSelect.js +0 -42
  170. package/lib/components/flashes/FlashDisclaimer.d.ts +0 -2
  171. package/lib/components/flashes/FlashDisclaimer.js +0 -17
  172. package/lib/components/icons/ArtifactIcon.d.ts +0 -10
  173. package/lib/components/icons/ArtifactIcon.js +0 -58
  174. package/lib/components/icons/index.d.ts +0 -1
  175. package/lib/components/icons/index.js +0 -5
  176. package/lib/components/nbgrader/NbGradesDetails.d.ts +0 -5
  177. package/lib/components/nbgrader/NbGradesDetails.js +0 -14
  178. package/lib/components/nbgrader/index.d.ts +0 -1
  179. package/lib/components/nbgrader/index.js +0 -5
  180. package/lib/components/progress/CreditsIndicator.d.ts +0 -33
  181. package/lib/components/progress/CreditsIndicator.js +0 -23
  182. package/lib/components/runtimes/RuntimeCellVariables.d.ts +0 -39
  183. package/lib/components/runtimes/RuntimeCellVariables.js +0 -172
  184. package/lib/components/runtimes/RuntimeCellVariablesDialog.d.ts +0 -37
  185. package/lib/components/runtimes/RuntimeCellVariablesDialog.js +0 -101
  186. package/lib/components/runtimes/RuntimeLauncherDialog.d.ts +0 -57
  187. package/lib/components/runtimes/RuntimeLauncherDialog.js +0 -275
  188. package/lib/components/runtimes/RuntimePickerBase.d.ts +0 -69
  189. package/lib/components/runtimes/RuntimePickerBase.js +0 -122
  190. package/lib/components/runtimes/RuntimePickerCell.d.ts +0 -34
  191. package/lib/components/runtimes/RuntimePickerCell.js +0 -104
  192. package/lib/components/runtimes/RuntimePickerNotebook.d.ts +0 -42
  193. package/lib/components/runtimes/RuntimePickerNotebook.js +0 -232
  194. package/lib/components/runtimes/RuntimeReservationControl.d.ts +0 -47
  195. package/lib/components/runtimes/RuntimeReservationControl.js +0 -42
  196. package/lib/components/runtimes/RuntimeSimplePicker.d.ts +0 -38
  197. package/lib/components/runtimes/RuntimeSimplePicker.js +0 -155
  198. package/lib/components/runtimes/RuntimeTransfer.d.ts +0 -16
  199. package/lib/components/runtimes/RuntimeTransfer.js +0 -5
  200. package/lib/components/runtimes/RuntimeUtils.d.ts +0 -17
  201. package/lib/components/runtimes/RuntimeUtils.js +0 -178
  202. package/lib/components/runtimes/RuntimeVariables.d.ts +0 -38
  203. package/lib/components/runtimes/RuntimeVariables.js +0 -75
  204. package/lib/components/runtimes/index.d.ts +0 -11
  205. package/lib/components/runtimes/index.js +0 -15
  206. package/lib/components/scheduler/ScheduleMenu.d.ts +0 -54
  207. package/lib/components/scheduler/ScheduleMenu.js +0 -154
  208. package/lib/components/scheduler/index.d.ts +0 -1
  209. package/lib/components/scheduler/index.js +0 -5
  210. package/lib/components/snapshots/SandboxSnapshotMenu.d.ts +0 -33
  211. package/lib/components/snapshots/SandboxSnapshotMenu.js +0 -169
  212. package/lib/components/snapshots/index.d.ts +0 -1
  213. package/lib/components/snapshots/index.js +0 -5
  214. package/lib/components/snippets/SnippetDialog.d.ts +0 -42
  215. package/lib/components/snippets/SnippetDialog.js +0 -42
  216. package/lib/components/students/StudentItemStatus.d.ts +0 -7
  217. package/lib/components/students/StudentItemStatus.js +0 -66
  218. package/lib/components/tokens/SpaceVariantToken.d.ts +0 -5
  219. package/lib/components/tokens/SpaceVariantToken.js +0 -23
  220. package/lib/components/toolbars/AssignmentEditorToolbar.d.ts +0 -4
  221. package/lib/components/toolbars/AssignmentEditorToolbar.js +0 -18
  222. package/lib/components/toolbars/DocumentEditorToolbar.d.ts +0 -2
  223. package/lib/components/toolbars/DocumentEditorToolbar.js +0 -12
  224. package/lib/components/toolbars/NotebookEditorToolbar.d.ts +0 -29
  225. package/lib/components/toolbars/NotebookEditorToolbar.js +0 -30
  226. package/lib/examples/CellExample.d.ts +0 -6
  227. package/lib/examples/CellExample.js +0 -20
  228. package/lib/examples/NotebookExample.d.ts +0 -6
  229. package/lib/examples/NotebookExample.js +0 -19
  230. package/lib/examples/lexical-theme.css +0 -436
  231. package/lib/examples/notebooks/IPyWidgetsExample.ipynb.json +0 -101
  232. package/lib/examples/notebooks/IPyWidgetsExampleWithState.ipynb.json +0 -112
  233. package/lib/examples/notebooks/Lite.ipynb.json +0 -128
  234. package/lib/examples/notebooks/Matplotlib.ipynb.json +0 -137
  235. package/lib/examples/notebooks/NotebookExample1.ipynb.json +0 -126
  236. package/lib/examples/notebooks/NotebookExample2.ipynb.json +0 -48
  237. package/lib/examples/notebooks/NotebookOutputs.ipynb.json +0 -49
  238. package/lib/examples/notebooks/NotebookToCExample.ipynb.json +0 -102
  239. package/lib/examples/notebooks/PyGWalker.ipynb.json +0 -55
  240. package/lib/hooks/useCellOutputshot.d.ts +0 -4
  241. package/lib/hooks/useCellOutputshot.js +0 -25
  242. package/lib/hooks/useProjects.d.ts +0 -628
  243. package/lib/hooks/useProjects.js +0 -190
  244. package/lib/hooks/useRuntimes.d.ts +0 -5
  245. package/lib/hooks/useRuntimes.js +0 -34
  246. package/lib/mocks/jupyter/index.js +0 -5
  247. package/lib/mocks/models/CourseMock.d.ts +0 -6
  248. package/lib/mocks/models/CourseMock.js +0 -29
  249. package/lib/mocks/models/SpaceMock.d.ts +0 -6
  250. package/lib/mocks/models/SpaceMock.js +0 -25
  251. package/lib/models/Assignment.d.ts +0 -7
  252. package/lib/models/Assignment.js +0 -5
  253. package/lib/models/Cell.d.ts +0 -8
  254. package/lib/models/Cell.js +0 -5
  255. package/lib/models/CodeBlock.d.ts +0 -10
  256. package/lib/models/CodeBlock.js +0 -5
  257. package/lib/models/CodeSandboxSnapshot.d.ts +0 -92
  258. package/lib/models/CodeSandboxSnapshot.js +0 -13
  259. package/lib/models/CodeSandboxSnapshotDTO.d.ts +0 -173
  260. package/lib/models/CodeSandboxSnapshotDTO.js +0 -139
  261. package/lib/models/CodefeedBlocks.d.ts +0 -7
  262. package/lib/models/CodefeedBlocks.js +0 -5
  263. package/lib/models/Content.d.ts +0 -5
  264. package/lib/models/Content.js +0 -5
  265. package/lib/models/Course.d.ts +0 -17
  266. package/lib/models/Course.js +0 -5
  267. package/lib/models/Dataset.d.ts +0 -16
  268. package/lib/models/Dataset.js +0 -5
  269. package/lib/models/Document.d.ts +0 -8
  270. package/lib/models/Document.js +0 -5
  271. package/lib/models/Environment.d.ts +0 -86
  272. package/lib/models/Environment.js +0 -5
  273. package/lib/models/EnvironmentDTO.d.ts +0 -125
  274. package/lib/models/EnvironmentDTO.js +0 -88
  275. package/lib/models/Exercise.d.ts +0 -16
  276. package/lib/models/Exercise.js +0 -5
  277. package/lib/models/Item.d.ts +0 -20
  278. package/lib/models/Item.js +0 -5
  279. package/lib/models/ItemDTO.d.ts +0 -74
  280. package/lib/models/ItemDTO.js +0 -186
  281. package/lib/models/ItemType.d.ts +0 -2
  282. package/lib/models/ItemType.js +0 -5
  283. package/lib/models/Lesson.d.ts +0 -5
  284. package/lib/models/Lesson.js +0 -5
  285. package/lib/models/LexicalDTO.d.ts +0 -155
  286. package/lib/models/LexicalDTO.js +0 -157
  287. package/lib/models/Library.d.ts +0 -10
  288. package/lib/models/Library.js +0 -5
  289. package/lib/models/Notebook.d.ts +0 -11
  290. package/lib/models/Notebook.js +0 -5
  291. package/lib/models/NotebookDTO.d.ts +0 -96
  292. package/lib/models/NotebookDTO.js +0 -153
  293. package/lib/models/Page.d.ts +0 -41
  294. package/lib/models/Page.js +0 -25
  295. package/lib/models/PageTag.d.ts +0 -19
  296. package/lib/models/PageTag.js +0 -94
  297. package/lib/models/ProjectDTO.d.ts +0 -89
  298. package/lib/models/ProjectDTO.js +0 -131
  299. package/lib/models/Runtime.d.ts +0 -123
  300. package/lib/models/Runtime.js +0 -18
  301. package/lib/models/RuntimeDTO.d.ts +0 -191
  302. package/lib/models/RuntimeDTO.js +0 -204
  303. package/lib/models/Space.d.ts +0 -35
  304. package/lib/models/Space.js +0 -66
  305. package/lib/models/SpaceDTO.d.ts +0 -334
  306. package/lib/models/SpaceDTO.js +0 -244
  307. package/lib/models/SpaceItem.d.ts +0 -10
  308. package/lib/models/SpaceItem.js +0 -5
  309. package/lib/models/SpaceMember.d.ts +0 -6
  310. package/lib/models/SpaceMember.js +0 -5
  311. package/lib/models/StudentItem.d.ts +0 -21
  312. package/lib/models/StudentItem.js +0 -5
  313. package/lib/services/DatalayerServiceManager.d.ts +0 -22
  314. package/lib/services/DatalayerServiceManager.js +0 -69
  315. package/lib/services/index.d.ts +0 -4
  316. package/lib/services/index.js +0 -7
  317. package/lib/services/reconnectToRuntime.d.ts +0 -32
  318. package/lib/services/reconnectToRuntime.js +0 -59
  319. package/lib/state/substates/CellState.d.ts +0 -12
  320. package/lib/state/substates/CellState.js +0 -22
  321. package/lib/state/substates/DocumentState.d.ts +0 -10
  322. package/lib/state/substates/DocumentState.js +0 -14
  323. package/lib/state/substates/GradeState.d.ts +0 -10
  324. package/lib/state/substates/GradeState.js +0 -14
  325. package/lib/state/substates/JupyterLabState.d.ts +0 -16
  326. package/lib/state/substates/JupyterLabState.js +0 -17
  327. package/lib/state/substates/NbformatState.d.ts +0 -13
  328. package/lib/state/substates/NbformatState.js +0 -16
  329. package/lib/state/substates/RuntimesState.d.ts +0 -79
  330. package/lib/state/substates/RuntimesState.js +0 -180
  331. package/lib/state/substates/SpaceState.d.ts +0 -11
  332. package/lib/state/substates/SpaceState.js +0 -16
  333. package/lib/stateful/index.d.ts +0 -2
  334. package/lib/stateful/index.js +0 -6
  335. package/lib/stateful/jupyter/exec/Python.d.ts +0 -5
  336. package/lib/stateful/jupyter/exec/Python.js +0 -100
  337. package/lib/stateful/jupyter/exec/Snippets.d.ts +0 -105
  338. package/lib/stateful/jupyter/exec/Snippets.js +0 -101
  339. package/lib/stateful/jupyter/exec/index.d.ts +0 -2
  340. package/lib/stateful/jupyter/exec/index.js +0 -6
  341. package/lib/stateful/jupyter/index.d.ts +0 -2
  342. package/lib/stateful/jupyter/index.js +0 -6
  343. package/lib/stateful/jupyter/kernelsHandler.d.ts +0 -8
  344. package/lib/stateful/jupyter/kernelsHandler.js +0 -39
  345. package/lib/stateful/runtimes/actions.d.ts +0 -102
  346. package/lib/stateful/runtimes/actions.js +0 -249
  347. package/lib/stateful/runtimes/apis.d.ts +0 -273
  348. package/lib/stateful/runtimes/apis.js +0 -5
  349. package/lib/stateful/runtimes/index.d.ts +0 -5
  350. package/lib/stateful/runtimes/index.js +0 -9
  351. package/lib/stateful/runtimes/settings.d.ts +0 -15
  352. package/lib/stateful/runtimes/settings.js +0 -31
  353. package/lib/stateful/runtimes/snapshots.d.ts +0 -25
  354. package/lib/stateful/runtimes/snapshots.js +0 -150
  355. package/lib/stateful/runtimes/utils.d.ts +0 -7
  356. package/lib/stateful/runtimes/utils.js +0 -14
  357. package/lib/utils/Cells.d.ts +0 -2
  358. package/lib/utils/Cells.js +0 -28
  359. /package/lib/{mocks/jupyter/index.d.ts → cli-login.d.ts} +0 -0
@@ -1,89 +0,0 @@
1
- /*
2
- * Copyright (c) 2023-2025 Datalayer, Inc.
3
- * Distributed under the terms of the Modified BSD License.
4
- */
5
- /**
6
- * Jupyter notebooks API functions for the Datalayer platform.
7
- *
8
- * Provides functions for creating and retrieving Jupyter notebooks within workspaces.
9
- *
10
- * @module api/spacer/notebooks
11
- */
12
- import { requestDatalayerAPI } from '../DatalayerApi.js';
13
- import { API_BASE_PATHS, DEFAULT_SERVICE_URLS } from '../constants.js';
14
- /**
15
- * Create a new Jupyter notebook.
16
- * @param token - Authentication token
17
- * @param data - Notebook creation configuration
18
- * @param baseUrl - Base URL for the API (defaults to production)
19
- * @returns Promise resolving to the created notebook response
20
- */
21
- export const createNotebook = async (token, data, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
22
- // Create FormData for multipart/form-data request (like the working example)
23
- const formData = new FormData();
24
- formData.append('spaceId', data.spaceId);
25
- formData.append('name', data.name);
26
- formData.append('notebookType', data.notebookType || 'jupyter'); // Required field
27
- formData.append('description', data.description || ''); // Required field - can be empty
28
- // Add file if provided
29
- if (data.file) {
30
- if (data.file instanceof File) {
31
- formData.append('file', data.file, data.file.name);
32
- }
33
- else {
34
- // Handle Blob case
35
- formData.append('file', data.file, `${data.name}.ipynb`);
36
- }
37
- }
38
- const url = `${baseUrl}${API_BASE_PATHS.SPACER}/notebooks`;
39
- return requestDatalayerAPI({
40
- url,
41
- method: 'POST',
42
- token,
43
- body: formData,
44
- });
45
- };
46
- /**
47
- * Get a notebook by ID.
48
- * @param token - Authentication token
49
- * @param id - The notebook ID
50
- * @param baseUrl - Base URL for the API (defaults to production)
51
- * @returns Promise resolving to the notebook response
52
- */
53
- export const getNotebook = async (token, id, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
54
- return requestDatalayerAPI({
55
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/notebooks/${id}`,
56
- method: 'GET',
57
- token,
58
- });
59
- };
60
- /**
61
- * Update a notebook.
62
- * @param token - Authentication token
63
- * @param id - The notebook ID
64
- * @param data - Update data containing name and/or description
65
- * @param baseUrl - Base URL for the API (defaults to production)
66
- * @returns Promise resolving to the updated notebook response
67
- */
68
- export const updateNotebook = async (token, id, data, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
69
- return requestDatalayerAPI({
70
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/notebooks/${id}`,
71
- method: 'PUT',
72
- token,
73
- body: data,
74
- });
75
- };
76
- /**
77
- * Clone a notebook.
78
- * @param token - Authentication token
79
- * @param id - The notebook ID to clone
80
- * @param baseUrl - Base URL for the API (defaults to production)
81
- * @returns Promise resolving to the cloned notebook response
82
- */
83
- export const cloneNotebook = async (token, id, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
84
- return requestDatalayerAPI({
85
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/notebooks/${id}/clone`,
86
- method: 'POST',
87
- token,
88
- });
89
- };
@@ -1,84 +0,0 @@
1
- import { CreateSpaceRequest, CreateSpaceResponse, GetSpaceResponse, UpdateSpaceRequest, UpdateSpaceResponse, DeleteSpaceResponse, GetSpaceDefaultItemsResponse, GetSpacesByTypeResponse } from '../../models/SpaceDTO';
2
- /**
3
- * Create a new workspace space.
4
- * @param token - Authentication token
5
- * @param data - Space creation configuration
6
- * @param baseUrl - Base URL for the API
7
- * @returns Promise resolving to the created space response
8
- */
9
- export declare const createSpace: (token: string, data: CreateSpaceRequest, baseUrl?: string) => Promise<CreateSpaceResponse>;
10
- /**
11
- * Get a space by UID.
12
- * @param token - Authentication token
13
- * @param uid - Space UID
14
- * @param baseUrl - Base URL for the API
15
- * @returns Promise resolving to the space response
16
- */
17
- export declare const getSpace: (token: string, uid: string, baseUrl?: string) => Promise<GetSpaceResponse>;
18
- /**
19
- * Update a space (owner updating their own space).
20
- * @param token - Authentication token
21
- * @param uid - Space UID
22
- * @param data - Update data (supports arbitrary Solr fields)
23
- * @param baseUrl - Base URL for the API
24
- * @returns Promise resolving to the updated space response
25
- */
26
- export declare const updateSpace: (token: string, uid: string, data: UpdateSpaceRequest, baseUrl?: string) => Promise<UpdateSpaceResponse>;
27
- /**
28
- * Update a user-specific space (e.g., org admin managing another user's space).
29
- * @param token - Authentication token
30
- * @param uid - Space UID
31
- * @param userId - User ID
32
- * @param data - Update data (supports arbitrary Solr fields)
33
- * @param baseUrl - Base URL for the API
34
- * @returns Promise resolving to the updated space response
35
- */
36
- export declare const updateUserSpace: (token: string, uid: string, userId: string, data: UpdateSpaceRequest, baseUrl?: string) => Promise<UpdateSpaceResponse>;
37
- /**
38
- * Delete a space and all its contents.
39
- * @param token - Authentication token
40
- * @param uid - Space UID
41
- * @param baseUrl - Base URL for the API
42
- * @returns Promise resolving to the delete response
43
- */
44
- export declare const deleteSpace: (token: string, uid: string, baseUrl?: string) => Promise<DeleteSpaceResponse>;
45
- /**
46
- * Get default items (notebook UID and document UID) for a space.
47
- * @param token - Authentication token
48
- * @param uid - Space UID
49
- * @param baseUrl - Base URL for the API
50
- * @returns Promise resolving to the default items response
51
- */
52
- export declare const getSpaceDefaultItems: (token: string, uid: string, baseUrl?: string) => Promise<GetSpaceDefaultItemsResponse>;
53
- /**
54
- * Get spaces by type (e.g., 'project', 'workspace', 'course').
55
- * @param token - Authentication token
56
- * @param type - Space type to filter by
57
- * @param baseUrl - Base URL for the API
58
- * @returns Promise resolving to the spaces response
59
- */
60
- export declare const getSpacesByType: (token: string, type: string, baseUrl?: string) => Promise<GetSpacesByTypeResponse>;
61
- /**
62
- * Make a space public.
63
- * @param token - Authentication token
64
- * @param uid - Space UID
65
- * @param baseUrl - Base URL for the API
66
- * @returns Promise resolving to the updated space response
67
- */
68
- export declare const makeSpacePublic: (token: string, uid: string, baseUrl?: string) => Promise<UpdateSpaceResponse>;
69
- /**
70
- * Make a space private.
71
- * @param token - Authentication token
72
- * @param uid - Space UID
73
- * @param baseUrl - Base URL for the API
74
- * @returns Promise resolving to the updated space response
75
- */
76
- export declare const makeSpacePrivate: (token: string, uid: string, baseUrl?: string) => Promise<UpdateSpaceResponse>;
77
- /**
78
- * Export a space and its contents.
79
- * @param token - Authentication token
80
- * @param uid - Space UID
81
- * @param baseUrl - Base URL for the API
82
- * @returns Promise resolving to the export data
83
- */
84
- export declare const exportSpace: (token: string, uid: string, baseUrl?: string) => Promise<any>;
@@ -1,170 +0,0 @@
1
- /*
2
- * Copyright (c) 2023-2025 Datalayer, Inc.
3
- * Distributed under the terms of the Modified BSD License.
4
- */
5
- /**
6
- * Workspace spaces API functions for the Datalayer platform.
7
- *
8
- * Provides function for creating workspace spaces.
9
- *
10
- * @module api/spacer/spaces
11
- */
12
- import { requestDatalayerAPI } from '../DatalayerApi.js';
13
- import { API_BASE_PATHS, DEFAULT_SERVICE_URLS } from '../constants.js';
14
- import { validateToken } from '../utils/validation.js';
15
- /**
16
- * Create a new workspace space.
17
- * @param token - Authentication token
18
- * @param data - Space creation configuration
19
- * @param baseUrl - Base URL for the API
20
- * @returns Promise resolving to the created space response
21
- */
22
- export const createSpace = async (token, data, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
23
- validateToken(token);
24
- return requestDatalayerAPI({
25
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/spaces`,
26
- method: 'POST',
27
- token,
28
- body: data,
29
- });
30
- };
31
- /**
32
- * Get a space by UID.
33
- * @param token - Authentication token
34
- * @param uid - Space UID
35
- * @param baseUrl - Base URL for the API
36
- * @returns Promise resolving to the space response
37
- */
38
- export const getSpace = async (token, uid, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
39
- validateToken(token);
40
- return requestDatalayerAPI({
41
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/spaces/${uid}`,
42
- method: 'GET',
43
- token,
44
- });
45
- };
46
- /**
47
- * Update a space (owner updating their own space).
48
- * @param token - Authentication token
49
- * @param uid - Space UID
50
- * @param data - Update data (supports arbitrary Solr fields)
51
- * @param baseUrl - Base URL for the API
52
- * @returns Promise resolving to the updated space response
53
- */
54
- export const updateSpace = async (token, uid, data, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
55
- validateToken(token);
56
- return requestDatalayerAPI({
57
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/spaces/${uid}`,
58
- method: 'PUT',
59
- token,
60
- body: data,
61
- });
62
- };
63
- /**
64
- * Update a user-specific space (e.g., org admin managing another user's space).
65
- * @param token - Authentication token
66
- * @param uid - Space UID
67
- * @param userId - User ID
68
- * @param data - Update data (supports arbitrary Solr fields)
69
- * @param baseUrl - Base URL for the API
70
- * @returns Promise resolving to the updated space response
71
- */
72
- export const updateUserSpace = async (token, uid, userId, data, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
73
- validateToken(token);
74
- return requestDatalayerAPI({
75
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/spaces/${uid}/users/${userId}`,
76
- method: 'PUT',
77
- token,
78
- body: data,
79
- });
80
- };
81
- /**
82
- * Delete a space and all its contents.
83
- * @param token - Authentication token
84
- * @param uid - Space UID
85
- * @param baseUrl - Base URL for the API
86
- * @returns Promise resolving to the delete response
87
- */
88
- export const deleteSpace = async (token, uid, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
89
- validateToken(token);
90
- return requestDatalayerAPI({
91
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/spaces/${uid}`,
92
- method: 'DELETE',
93
- token,
94
- });
95
- };
96
- /**
97
- * Get default items (notebook UID and document UID) for a space.
98
- * @param token - Authentication token
99
- * @param uid - Space UID
100
- * @param baseUrl - Base URL for the API
101
- * @returns Promise resolving to the default items response
102
- */
103
- export const getSpaceDefaultItems = async (token, uid, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
104
- validateToken(token);
105
- return requestDatalayerAPI({
106
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/spaces/${uid}/default-items`,
107
- method: 'GET',
108
- token,
109
- });
110
- };
111
- /**
112
- * Get spaces by type (e.g., 'project', 'workspace', 'course').
113
- * @param token - Authentication token
114
- * @param type - Space type to filter by
115
- * @param baseUrl - Base URL for the API
116
- * @returns Promise resolving to the spaces response
117
- */
118
- export const getSpacesByType = async (token, type, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
119
- validateToken(token);
120
- return requestDatalayerAPI({
121
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/spaces/types/${type}`,
122
- method: 'GET',
123
- token,
124
- });
125
- };
126
- /**
127
- * Make a space public.
128
- * @param token - Authentication token
129
- * @param uid - Space UID
130
- * @param baseUrl - Base URL for the API
131
- * @returns Promise resolving to the updated space response
132
- */
133
- export const makeSpacePublic = async (token, uid, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
134
- validateToken(token);
135
- return requestDatalayerAPI({
136
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/spaces/${uid}/public`,
137
- method: 'PUT',
138
- token,
139
- });
140
- };
141
- /**
142
- * Make a space private.
143
- * @param token - Authentication token
144
- * @param uid - Space UID
145
- * @param baseUrl - Base URL for the API
146
- * @returns Promise resolving to the updated space response
147
- */
148
- export const makeSpacePrivate = async (token, uid, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
149
- validateToken(token);
150
- return requestDatalayerAPI({
151
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/spaces/${uid}/private`,
152
- method: 'PUT',
153
- token,
154
- });
155
- };
156
- /**
157
- * Export a space and its contents.
158
- * @param token - Authentication token
159
- * @param uid - Space UID
160
- * @param baseUrl - Base URL for the API
161
- * @returns Promise resolving to the export data
162
- */
163
- export const exportSpace = async (token, uid, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
164
- validateToken(token);
165
- return requestDatalayerAPI({
166
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/spaces/${uid}/export`,
167
- method: 'GET',
168
- token,
169
- });
170
- };
@@ -1,9 +0,0 @@
1
- import { SpacesForUserResponse } from '../../models/SpaceDTO';
2
- /**
3
- * Get all spaces for the current authenticated user.
4
- * @param token - Authentication token
5
- * @param baseUrl - Base URL for the API (defaults to production Spacer URL)
6
- * @returns Promise resolving to the user's spaces
7
- * @throws {Error} If authentication token is missing or invalid
8
- */
9
- export declare const getMySpaces: (token: string, baseUrl?: string) => Promise<SpacesForUserResponse>;
@@ -1,29 +0,0 @@
1
- /*
2
- * Copyright (c) 2023-2025 Datalayer, Inc.
3
- * Distributed under the terms of the Modified BSD License.
4
- */
5
- /**
6
- * User-related Spacer API functions for the Datalayer platform.
7
- *
8
- * Provides functions for user-specific operations in the Spacer service.
9
- *
10
- * @module api/spacer/users
11
- */
12
- import { requestDatalayerAPI } from '../DatalayerApi.js';
13
- import { API_BASE_PATHS, DEFAULT_SERVICE_URLS } from '../constants.js';
14
- import { validateToken } from '../utils/validation.js';
15
- /**
16
- * Get all spaces for the current authenticated user.
17
- * @param token - Authentication token
18
- * @param baseUrl - Base URL for the API (defaults to production Spacer URL)
19
- * @returns Promise resolving to the user's spaces
20
- * @throws {Error} If authentication token is missing or invalid
21
- */
22
- export const getMySpaces = async (token, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
23
- validateToken(token);
24
- return requestDatalayerAPI({
25
- url: `${baseUrl}${API_BASE_PATHS.SPACER}/spaces/users/me`,
26
- method: 'GET',
27
- token,
28
- });
29
- };
@@ -1,93 +0,0 @@
1
- import type { Constructor } from '../utils/mixins';
2
- import { EnvironmentDTO } from '../../models/EnvironmentDTO';
3
- import { RuntimeDTO } from '../../models/RuntimeDTO';
4
- import { CodeSandboxSnapshotDTO } from '../../models/CodeSandboxSnapshotDTO';
5
- import { HealthCheck } from '../../models/HealthCheck';
6
- /** Options for ensuring a runtime is available. */
7
- export interface EnsureRuntimeOptions {
8
- /** Name of the environment to use */
9
- environmentName?: string;
10
- /** Maximum credits to allocate */
11
- creditsLimit?: number;
12
- /** Whether to wait for runtime to be ready */
13
- waitForReady?: boolean;
14
- /** Maximum time to wait for ready state (ms) */
15
- maxWaitTime?: number;
16
- /** Whether to reuse existing suitable runtime */
17
- reuseExisting?: boolean;
18
- /** Snapshot ID to create runtime from */
19
- snapshotId?: string;
20
- }
21
- /** Runtimes mixin providing computational environment and runtime management. */
22
- export declare function RuntimesMixin<TBase extends Constructor>(Base: TBase): {
23
- new (...args: any[]): {
24
- _extractRuntimePodName(runtimePodNameOrInstance: string | RuntimeDTO): string;
25
- _extractSnapshotId(snapshotIdOrInstance: string | CodeSandboxSnapshotDTO): string;
26
- /**
27
- * List all available computational environments.
28
- * @returns Array of Environment model instances
29
- */
30
- listEnvironments(): Promise<EnvironmentDTO[]>;
31
- /**
32
- * Create a new computational runtime.
33
- * @param environmentName - Name of the environment to use
34
- * @param type - Type of runtime
35
- * @param givenName - User-friendly name for the runtime
36
- * @param creditsLimit - Credits limit
37
- * @returns Created runtime
38
- */
39
- createRuntime(environmentName: string, type: "notebook" | "terminal" | "job", givenName: string, minutesLimit: number, fromSnapshotId?: string): Promise<RuntimeDTO>;
40
- /**
41
- * List all runtimes.
42
- * @returns Array of runtimes
43
- */
44
- listRuntimes(): Promise<RuntimeDTO[]>;
45
- /**
46
- * Get details for a specific runtime by pod name.
47
- * @param podName - Runtime pod name
48
- * @returns Runtime details
49
- */
50
- getRuntime(podName: string): Promise<RuntimeDTO>;
51
- /**
52
- * Delete a runtime permanently.
53
- * @param podName - Runtime pod name
54
- */
55
- deleteRuntime(podName: string): Promise<void>;
56
- /**
57
- * Terminate all runtimes.
58
- * Lists all runtimes and deletes them in parallel.
59
- * @returns Array of results for each deletion (fulfilled or rejected)
60
- */
61
- terminateAllRuntimes(): Promise<PromiseSettledResult<void>[]>;
62
- /**
63
- * Create a snapshot of a runtime.
64
- * @param podName - Pod name of the runtime to snapshot
65
- * @param name - Name for the snapshot
66
- * @param description - Description of the snapshot
67
- * @param stop - Whether to stop the runtime after creating snapshot (defaults to false)
68
- * @returns Created snapshot
69
- */
70
- createSnapshot(podName: string, name: string, description: string, stop?: boolean): Promise<CodeSandboxSnapshotDTO>;
71
- /**
72
- * List all code sandbox snapshots.
73
- * @returns Array of snapshots
74
- */
75
- listSnapshots(): Promise<CodeSandboxSnapshotDTO[]>;
76
- /**
77
- * Get details for a specific snapshot by ID.
78
- * @param id - Snapshot ID
79
- * @returns Snapshot details
80
- */
81
- getSnapshot(id: string): Promise<CodeSandboxSnapshotDTO>;
82
- /**
83
- * Delete a snapshot permanently.
84
- * @param id - Snapshot ID
85
- */
86
- deleteSnapshot(id: string): Promise<void>;
87
- /**
88
- * Check the health status of the Runtimes service.
89
- * @returns Health check result with status and response time
90
- */
91
- checkRuntimesHealth(): Promise<HealthCheck>;
92
- };
93
- } & TBase;