@datalayer/core 0.0.1 → 0.0.2

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 (641) hide show
  1. package/README.md +176 -7
  2. package/lib/App.d.ts +3 -0
  3. package/lib/App.js +4 -0
  4. package/lib/__tests__/App.test.d.ts +1 -0
  5. package/lib/__tests__/App.test.js +17 -0
  6. package/lib/__tests__/hooks.test.d.ts +1 -0
  7. package/lib/__tests__/hooks.test.js +19 -0
  8. package/lib/__tests__/index.test.d.ts +1 -0
  9. package/lib/__tests__/index.test.js +26 -0
  10. package/lib/__tests__/integration.test.d.ts +1 -0
  11. package/lib/__tests__/integration.test.js +57 -0
  12. package/lib/__tests__/utils.test.d.ts +1 -0
  13. package/lib/__tests__/utils.test.js +59 -0
  14. package/lib/api/RunApi.d.ts +75 -0
  15. package/lib/api/RunApi.js +150 -0
  16. package/lib/api/index.d.ts +2 -0
  17. package/lib/api/index.js +11 -0
  18. package/lib/api/runtimes/exec/Python.d.ts +5 -0
  19. package/lib/api/runtimes/exec/Python.js +105 -0
  20. package/lib/api/runtimes/exec/Snippets.d.ts +145 -0
  21. package/lib/api/runtimes/exec/Snippets.js +125 -0
  22. package/lib/api/runtimes/exec/index.d.ts +2 -0
  23. package/lib/api/runtimes/exec/index.js +11 -0
  24. package/lib/api/runtimes/index.d.ts +7 -0
  25. package/lib/api/runtimes/index.js +16 -0
  26. package/lib/api/runtimes/kernelsHandler.d.ts +8 -0
  27. package/lib/api/runtimes/kernelsHandler.js +44 -0
  28. package/lib/api/runtimes/models.d.ts +59 -0
  29. package/lib/api/runtimes/models.js +11 -0
  30. package/lib/api/runtimes/runtimesApi.d.ts +370 -0
  31. package/lib/api/runtimes/runtimesApi.js +269 -0
  32. package/lib/api/runtimes/settings.d.ts +15 -0
  33. package/lib/api/runtimes/settings.js +36 -0
  34. package/lib/api/runtimes/snapshots.d.ts +25 -0
  35. package/lib/api/runtimes/snapshots.js +155 -0
  36. package/lib/api/runtimes/utils.d.ts +7 -0
  37. package/lib/api/runtimes/utils.js +22 -0
  38. package/lib/components/avatars/BoringAvatar.d.ts +20 -0
  39. package/lib/components/avatars/BoringAvatar.js +39 -0
  40. package/lib/components/avatars/UserProfileAvatar.d.ts +13 -0
  41. package/lib/components/avatars/UserProfileAvatar.js +37 -0
  42. package/lib/components/avatars/index.d.ts +2 -0
  43. package/lib/components/avatars/index.js +11 -0
  44. package/lib/components/banners/NoAutomationBanner.d.ts +2 -0
  45. package/lib/components/banners/NoAutomationBanner.js +18 -0
  46. package/lib/components/banners/index.d.ts +1 -0
  47. package/lib/components/banners/index.js +10 -0
  48. package/lib/components/buttons/DownloadCSVButton.d.ts +13 -0
  49. package/lib/components/buttons/DownloadCSVButton.js +21 -0
  50. package/lib/components/buttons/DownloadJsonButton.d.ts +16 -0
  51. package/lib/components/buttons/DownloadJsonButton.js +23 -0
  52. package/lib/components/buttons/LongActionButton.d.ts +28 -0
  53. package/lib/components/buttons/LongActionButton.js +29 -0
  54. package/lib/components/buttons/UploadButton.d.ts +37 -0
  55. package/lib/components/buttons/UploadButton.js +48 -0
  56. package/lib/components/buttons/VariantType.d.ts +1 -0
  57. package/lib/components/buttons/VariantType.js +5 -0
  58. package/lib/components/buttons/index.d.ts +5 -0
  59. package/lib/components/buttons/index.js +14 -0
  60. package/lib/components/checkout/StripeCheckout.d.ts +32 -0
  61. package/lib/components/checkout/StripeCheckout.js +100 -0
  62. package/lib/components/checkout/index.d.ts +1 -0
  63. package/lib/components/checkout/index.js +10 -0
  64. package/lib/components/confetti/ConfettiSuccess.d.ts +2 -0
  65. package/lib/components/confetti/ConfettiSuccess.js +17 -0
  66. package/lib/components/confetti/index.d.ts +1 -0
  67. package/lib/components/confetti/index.js +10 -0
  68. package/lib/components/context/OrganizationSelect.d.ts +2 -0
  69. package/lib/components/context/OrganizationSelect.js +40 -0
  70. package/lib/components/context/SpaceSelect.d.ts +2 -0
  71. package/lib/components/context/SpaceSelect.js +48 -0
  72. package/lib/components/context/index.d.ts +2 -0
  73. package/lib/components/context/index.js +11 -0
  74. package/lib/components/display/AvatarSkeleton.d.ts +5 -0
  75. package/lib/components/display/AvatarSkeleton.js +16 -0
  76. package/lib/components/display/CenteredSpinner.d.ts +14 -0
  77. package/lib/components/display/CenteredSpinner.js +25 -0
  78. package/lib/components/display/CodePreview.d.ts +4 -0
  79. package/lib/components/display/CodePreview.js +20 -0
  80. package/lib/components/display/DatalayerBox.d.ts +8 -0
  81. package/lib/components/display/DatalayerBox.js +33 -0
  82. package/lib/components/display/HorizontalCenter.d.ts +9 -0
  83. package/lib/components/display/HorizontalCenter.js +14 -0
  84. package/lib/components/display/JupyterDialog.d.ts +69 -0
  85. package/lib/components/display/JupyterDialog.js +120 -0
  86. package/lib/components/display/Markdown.d.ts +23 -0
  87. package/lib/components/display/Markdown.js +20 -0
  88. package/lib/components/display/NavLink.d.ts +9 -0
  89. package/lib/components/display/NavLink.js +22 -0
  90. package/lib/components/display/NotebookSkeleton.d.ts +2 -0
  91. package/lib/components/display/NotebookSkeleton.js +16 -0
  92. package/lib/components/display/Placeholder.d.ts +2 -0
  93. package/lib/components/display/Placeholder.js +14 -0
  94. package/lib/components/display/ToTopBranded.d.ts +2 -0
  95. package/lib/components/display/ToTopBranded.js +16 -0
  96. package/lib/components/display/VisuallyHidden.d.ts +5 -0
  97. package/lib/components/display/VisuallyHidden.js +29 -0
  98. package/lib/components/display/index.d.ts +12 -0
  99. package/lib/components/display/index.js +21 -0
  100. package/lib/components/echarts/EChartsReact.d.ts +11 -0
  101. package/lib/components/echarts/EChartsReact.js +53 -0
  102. package/lib/components/echarts/index.d.ts +1 -0
  103. package/lib/components/echarts/index.js +10 -0
  104. package/lib/components/flashes/FlashClosable.d.ts +22 -0
  105. package/lib/components/flashes/FlashClosable.js +69 -0
  106. package/lib/components/flashes/FlashDisclaimer.d.ts +2 -0
  107. package/lib/components/flashes/FlashDisclaimer.js +23 -0
  108. package/lib/components/flashes/FlashGuest.d.ts +2 -0
  109. package/lib/components/flashes/FlashGuest.js +35 -0
  110. package/lib/components/flashes/FlashSurveys.d.ts +6 -0
  111. package/lib/components/flashes/FlashSurveys.js +41 -0
  112. package/lib/components/flashes/FlashUnauthorized.d.ts +2 -0
  113. package/lib/components/flashes/FlashUnauthorized.js +23 -0
  114. package/lib/components/flashes/index.d.ts +6 -0
  115. package/lib/components/flashes/index.js +15 -0
  116. package/lib/components/flashes/surveys/Survey2025_1.d.ts +3 -0
  117. package/lib/components/flashes/surveys/Survey2025_1.js +134 -0
  118. package/lib/components/flashes/surveys/SurveyProps.d.ts +6 -0
  119. package/lib/components/flashes/surveys/SurveyProps.js +5 -0
  120. package/lib/components/flashes/surveys/index.d.ts +2 -0
  121. package/lib/components/flashes/surveys/index.js +11 -0
  122. package/lib/components/iam/ExternalTokenSilentLogin.d.ts +5 -0
  123. package/lib/components/iam/ExternalTokenSilentLogin.js +38 -0
  124. package/lib/components/iam/index.d.ts +1 -0
  125. package/lib/components/iam/index.js +10 -0
  126. package/lib/components/icons/ArtifactIcon.d.ts +10 -0
  127. package/lib/components/icons/ArtifactIcon.js +63 -0
  128. package/lib/components/icons/index.d.ts +1 -0
  129. package/lib/components/icons/index.js +10 -0
  130. package/lib/components/index.d.ts +1 -0
  131. package/lib/components/index.js +10 -0
  132. package/lib/components/labels/VisibilityLabel.d.ts +4 -0
  133. package/lib/components/labels/VisibilityLabel.js +22 -0
  134. package/lib/components/labels/index.d.ts +1 -0
  135. package/lib/components/labels/index.js +10 -0
  136. package/lib/components/landings/StepBlock.d.ts +11 -0
  137. package/lib/components/landings/StepBlock.js +17 -0
  138. package/lib/components/landings/index.d.ts +1 -0
  139. package/lib/components/landings/index.js +10 -0
  140. package/lib/components/navbar/NavigationVisbilityObserver.d.ts +5 -0
  141. package/lib/components/navbar/NavigationVisbilityObserver.js +63 -0
  142. package/lib/components/navbar/SubdomainNavBar.d.ts +81 -0
  143. package/lib/components/navbar/SubdomainNavBar.js +240 -0
  144. package/lib/components/navbar/index.d.ts +2 -0
  145. package/lib/components/navbar/index.js +11 -0
  146. package/lib/components/nbgrader/NbGradesDetails.d.ts +5 -0
  147. package/lib/components/nbgrader/NbGradesDetails.js +22 -0
  148. package/lib/components/nbgrader/index.d.ts +1 -0
  149. package/lib/components/nbgrader/index.js +10 -0
  150. package/lib/components/notebooks/JupyterNotebook.d.ts +12 -0
  151. package/lib/components/notebooks/JupyterNotebook.js +41 -0
  152. package/lib/components/notebooks/JupyterNotebookToolbar.d.ts +2 -0
  153. package/lib/components/notebooks/JupyterNotebookToolbar.js +44 -0
  154. package/lib/components/notebooks/index.d.ts +2 -0
  155. package/lib/components/notebooks/index.js +11 -0
  156. package/lib/components/primer/Helper.d.ts +32 -0
  157. package/lib/components/primer/Helper.js +19 -0
  158. package/lib/components/primer/Portals.d.ts +9 -0
  159. package/lib/components/primer/Portals.js +31 -0
  160. package/lib/components/primer/Styles.d.ts +2 -0
  161. package/lib/components/primer/Styles.js +16 -0
  162. package/lib/components/primer/index.d.ts +2 -0
  163. package/lib/components/primer/index.js +11 -0
  164. package/lib/components/progress/ConsumptionBar.d.ts +40 -0
  165. package/lib/components/progress/ConsumptionBar.js +54 -0
  166. package/lib/components/progress/CreditsIndicator.d.ts +27 -0
  167. package/lib/components/progress/CreditsIndicator.js +30 -0
  168. package/lib/components/progress/ProgressBar.d.ts +2 -0
  169. package/lib/components/progress/ProgressBar.js +26 -0
  170. package/lib/components/progress/ProgressRing.d.ts +36 -0
  171. package/lib/components/progress/ProgressRing.js +31 -0
  172. package/lib/components/progress/Timer.d.ts +9 -0
  173. package/lib/components/progress/Timer.js +33 -0
  174. package/lib/components/progress/index.d.ts +5 -0
  175. package/lib/components/progress/index.js +14 -0
  176. package/lib/components/runtimes/RuntimeCellVariables.d.ts +39 -0
  177. package/lib/components/runtimes/RuntimeCellVariables.js +177 -0
  178. package/lib/components/runtimes/RuntimeCellVariablesDialog.d.ts +37 -0
  179. package/lib/components/runtimes/RuntimeCellVariablesDialog.js +106 -0
  180. package/lib/components/runtimes/RuntimeLauncherDialog.d.ts +54 -0
  181. package/lib/components/runtimes/RuntimeLauncherDialog.js +254 -0
  182. package/lib/components/runtimes/RuntimePickerBase.d.ts +69 -0
  183. package/lib/components/runtimes/RuntimePickerBase.js +114 -0
  184. package/lib/components/runtimes/RuntimePickerCell.d.ts +34 -0
  185. package/lib/components/runtimes/RuntimePickerCell.js +111 -0
  186. package/lib/components/runtimes/RuntimePickerNotebook.d.ts +43 -0
  187. package/lib/components/runtimes/RuntimePickerNotebook.js +173 -0
  188. package/lib/components/runtimes/RuntimeReservationControl.d.ts +47 -0
  189. package/lib/components/runtimes/RuntimeReservationControl.js +43 -0
  190. package/lib/components/runtimes/RuntimeSimplePicker.d.ts +34 -0
  191. package/lib/components/runtimes/RuntimeSimplePicker.js +161 -0
  192. package/lib/components/runtimes/RuntimeTransfer.d.ts +16 -0
  193. package/lib/components/runtimes/RuntimeTransfer.js +5 -0
  194. package/lib/components/runtimes/RuntimeUtils.d.ts +17 -0
  195. package/lib/components/runtimes/RuntimeUtils.js +173 -0
  196. package/lib/components/runtimes/RuntimeVariables.d.ts +38 -0
  197. package/lib/components/runtimes/RuntimeVariables.js +80 -0
  198. package/lib/components/runtimes/index.d.ts +11 -0
  199. package/lib/components/runtimes/index.js +20 -0
  200. package/lib/components/screenshot/ScreenCapture.d.ts +38 -0
  201. package/lib/components/screenshot/ScreenCapture.js +179 -0
  202. package/lib/components/screenshot/ScreenCaptureButton.d.ts +3 -0
  203. package/lib/components/screenshot/ScreenCaptureButton.js +21 -0
  204. package/lib/components/screenshot/index.d.ts +2 -0
  205. package/lib/components/screenshot/index.js +11 -0
  206. package/lib/components/snapshots/RuntimeSnapshotMenu.d.ts +36 -0
  207. package/lib/components/snapshots/RuntimeSnapshotMenu.js +169 -0
  208. package/lib/components/snapshots/index.d.ts +1 -0
  209. package/lib/components/snapshots/index.js +10 -0
  210. package/lib/components/snippets/SnippetDialog.d.ts +42 -0
  211. package/lib/components/snippets/SnippetDialog.js +47 -0
  212. package/lib/components/snippets/index.d.ts +1 -0
  213. package/lib/components/snippets/index.js +10 -0
  214. package/lib/components/storage/ContentsBrowser.d.ts +32 -0
  215. package/lib/components/storage/ContentsBrowser.js +250 -0
  216. package/lib/components/storage/ContentsItems.d.ts +58 -0
  217. package/lib/components/storage/ContentsItems.js +83 -0
  218. package/lib/components/storage/index.d.ts +2 -0
  219. package/lib/components/storage/index.js +11 -0
  220. package/lib/components/students/StudentItemStatus.d.ts +7 -0
  221. package/lib/components/students/StudentItemStatus.js +49 -0
  222. package/lib/components/students/index.d.ts +1 -0
  223. package/lib/components/students/index.js +10 -0
  224. package/lib/components/subnav/SubNav.d.ts +84 -0
  225. package/lib/components/subnav/SubNav.js +270 -0
  226. package/lib/components/subnav/index.d.ts +1 -0
  227. package/lib/components/subnav/index.js +10 -0
  228. package/lib/components/tables/DataTable.d.ts +5 -0
  229. package/lib/components/tables/DataTable.js +24 -0
  230. package/lib/components/tables/index.d.ts +1 -0
  231. package/lib/components/tables/index.js +10 -0
  232. package/lib/components/text-reveal/TextRevealAnimation.d.ts +6 -0
  233. package/lib/components/text-reveal/TextRevealAnimation.js +55 -0
  234. package/lib/components/text-reveal/index.d.ts +1 -0
  235. package/lib/components/text-reveal/index.js +10 -0
  236. package/lib/components/text-reveal/useTextRevealAnimationLines.d.ts +4 -0
  237. package/lib/components/text-reveal/useTextRevealAnimationLines.js +52 -0
  238. package/lib/components/tokens/SpaceVariantToken.d.ts +5 -0
  239. package/lib/components/tokens/SpaceVariantToken.js +25 -0
  240. package/lib/components/tokens/index.d.ts +1 -0
  241. package/lib/components/tokens/index.js +10 -0
  242. package/lib/components/toolbars/AssignmentEditorToolbar.d.ts +4 -0
  243. package/lib/components/toolbars/AssignmentEditorToolbar.js +23 -0
  244. package/lib/components/toolbars/DocumentEditorToolbar.d.ts +2 -0
  245. package/lib/components/toolbars/DocumentEditorToolbar.js +17 -0
  246. package/lib/components/toolbars/NotebookEditorToolbar.d.ts +29 -0
  247. package/lib/components/toolbars/NotebookEditorToolbar.js +35 -0
  248. package/lib/components/toolbars/index.d.ts +3 -0
  249. package/lib/components/toolbars/index.js +12 -0
  250. package/lib/components/users/PeerIndicator.d.ts +18 -0
  251. package/lib/components/users/PeerIndicator.js +105 -0
  252. package/lib/components/users/index.d.ts +1 -0
  253. package/lib/components/users/index.js +10 -0
  254. package/lib/config/Configuration.d.ts +111 -0
  255. package/lib/config/Configuration.js +30 -0
  256. package/lib/config/index.d.ts +2 -0
  257. package/lib/config/index.js +11 -0
  258. package/lib/config/integrations/Loom.d.ts +1 -0
  259. package/lib/config/integrations/Loom.js +21 -0
  260. package/lib/config/integrations/index.d.ts +1 -0
  261. package/lib/config/integrations/index.js +10 -0
  262. package/lib/hooks/assets/OutputshotPlaceholders.d.ts +19 -0
  263. package/lib/hooks/assets/OutputshotPlaceholders.js +28 -0
  264. package/lib/hooks/assets/index.d.ts +1 -0
  265. package/lib/hooks/assets/index.js +10 -0
  266. package/lib/hooks/index.d.ts +28 -0
  267. package/lib/hooks/index.js +38 -0
  268. package/lib/hooks/layouts/LayoutBackdrop.d.ts +2 -0
  269. package/lib/hooks/layouts/LayoutBackdrop.js +35 -0
  270. package/lib/hooks/layouts/LayoutScreenshot.d.ts +2 -0
  271. package/lib/hooks/layouts/LayoutScreenshot.js +48 -0
  272. package/lib/hooks/layouts/index.d.ts +2 -0
  273. package/lib/hooks/layouts/index.js +11 -0
  274. package/lib/hooks/useAIAgents.d.ts +13 -0
  275. package/lib/hooks/useAIAgents.js +77 -0
  276. package/lib/hooks/useAuthorization.d.ts +19 -0
  277. package/lib/hooks/useAuthorization.js +130 -0
  278. package/lib/hooks/useBackdrop.d.ts +28 -0
  279. package/lib/hooks/useBackdrop.js +105 -0
  280. package/lib/hooks/useBackdropJupyterLab.d.ts +15 -0
  281. package/lib/hooks/useBackdropJupyterLab.js +56 -0
  282. package/lib/hooks/useCache.d.ts +306 -0
  283. package/lib/hooks/useCache.js +3103 -0
  284. package/lib/hooks/useCellOutputshot.d.ts +4 -0
  285. package/lib/hooks/useCellOutputshot.js +33 -0
  286. package/lib/hooks/useContainsFocus.d.ts +9 -0
  287. package/lib/hooks/useContainsFocus.js +48 -0
  288. package/lib/hooks/useError.d.ts +9 -0
  289. package/lib/hooks/useError.js +31 -0
  290. package/lib/hooks/useExternalScript.d.ts +2 -0
  291. package/lib/hooks/useExternalScript.js +22 -0
  292. package/lib/hooks/useFocusTrap.d.ts +30 -0
  293. package/lib/hooks/useFocusTrap.js +53 -0
  294. package/lib/hooks/useIAM.d.ts +14 -0
  295. package/lib/hooks/useIAM.js +98 -0
  296. package/lib/hooks/useId.d.ts +19 -0
  297. package/lib/hooks/useId.js +105 -0
  298. package/lib/hooks/useIsomorphicLayoutEffect.d.ts +3 -0
  299. package/lib/hooks/useIsomorphicLayoutEffect.js +16 -0
  300. package/lib/hooks/useJupyterLabTheme.d.ts +6 -0
  301. package/lib/hooks/useJupyterLabTheme.js +29 -0
  302. package/lib/hooks/useKeyboardEscape.d.ts +1 -0
  303. package/lib/hooks/useKeyboardEscape.js +23 -0
  304. package/lib/hooks/useLocationHandles.d.ts +10 -0
  305. package/lib/hooks/useLocationHandles.js +27 -0
  306. package/lib/hooks/useNavigate.d.ts +2 -0
  307. package/lib/hooks/useNavigate.js +29 -0
  308. package/lib/hooks/useNotebookAIAgent.d.ts +8 -0
  309. package/lib/hooks/useNotebookAIAgent.js +59 -0
  310. package/lib/hooks/useOnClickOutside.d.ts +1 -0
  311. package/lib/hooks/useOnClickOutside.js +34 -0
  312. package/lib/hooks/useRef.d.ts +10 -0
  313. package/lib/hooks/useRef.js +22 -0
  314. package/lib/hooks/useRun.d.ts +21 -0
  315. package/lib/hooks/useRun.js +85 -0
  316. package/lib/hooks/useRuntimes.d.ts +5 -0
  317. package/lib/hooks/useRuntimes.js +39 -0
  318. package/lib/hooks/useScreenshot.d.ts +21 -0
  319. package/lib/hooks/useScreenshot.js +65 -0
  320. package/lib/hooks/useToast.d.ts +42 -0
  321. package/lib/hooks/useToast.js +143 -0
  322. package/lib/hooks/useUpload.d.ts +7 -0
  323. package/lib/hooks/useUpload.js +51 -0
  324. package/lib/hooks/useUser.d.ts +3 -0
  325. package/lib/hooks/useUser.js +22 -0
  326. package/lib/hooks/useVisibilityObserver.d.ts +5 -0
  327. package/lib/hooks/useVisibilityObserver.js +47 -0
  328. package/lib/hooks/useWindowSize.d.ts +21 -0
  329. package/lib/hooks/useWindowSize.js +80 -0
  330. package/lib/i18n/Labels.d.ts +1 -0
  331. package/lib/i18n/Labels.js +10 -0
  332. package/lib/i18n/index.d.ts +1 -0
  333. package/lib/i18n/index.js +10 -0
  334. package/lib/index.d.ts +3 -0
  335. package/lib/index.js +6 -0
  336. package/lib/main.d.ts +1 -0
  337. package/lib/main.js +4 -0
  338. package/lib/mocks/components/FlashMock.d.ts +2 -0
  339. package/lib/mocks/components/FlashMock.js +18 -0
  340. package/lib/mocks/components/index.d.ts +1 -0
  341. package/lib/mocks/components/index.js +10 -0
  342. package/lib/mocks/hooks/index.d.ts +1 -0
  343. package/lib/mocks/hooks/index.js +10 -0
  344. package/lib/mocks/hooks/rests/index.d.ts +1 -0
  345. package/lib/mocks/hooks/rests/index.js +10 -0
  346. package/lib/mocks/hooks/rests/rests.d.ts +22 -0
  347. package/lib/mocks/hooks/rests/rests.js +37 -0
  348. package/lib/mocks/hooks/useRunMock.d.ts +6 -0
  349. package/lib/mocks/hooks/useRunMock.js +83 -0
  350. package/lib/mocks/index.d.ts +4 -0
  351. package/lib/mocks/index.js +14 -0
  352. package/lib/mocks/jupyter/index.d.ts +1 -0
  353. package/lib/mocks/jupyter/index.js +10 -0
  354. package/lib/mocks/models/CodeBlockMock.d.ts +1 -0
  355. package/lib/mocks/models/CodeBlockMock.js +10 -0
  356. package/lib/mocks/models/CodelineMock.d.ts +1 -0
  357. package/lib/mocks/models/CodelineMock.js +10 -0
  358. package/lib/mocks/models/CourseMock.d.ts +6 -0
  359. package/lib/mocks/models/CourseMock.js +34 -0
  360. package/lib/mocks/models/InviteMock.d.ts +6 -0
  361. package/lib/mocks/models/InviteMock.js +27 -0
  362. package/lib/mocks/models/JupyterLabUserMock.d.ts +2 -0
  363. package/lib/mocks/models/JupyterLabUserMock.js +17 -0
  364. package/lib/mocks/models/OrganisationMock.d.ts +5 -0
  365. package/lib/mocks/models/OrganisationMock.js +24 -0
  366. package/lib/mocks/models/SchoolMock.d.ts +6 -0
  367. package/lib/mocks/models/SchoolMock.js +25 -0
  368. package/lib/mocks/models/SpaceMock.d.ts +6 -0
  369. package/lib/mocks/models/SpaceMock.js +30 -0
  370. package/lib/mocks/models/TeamMock.d.ts +5 -0
  371. package/lib/mocks/models/TeamMock.js +26 -0
  372. package/lib/mocks/models/UserMock.d.ts +2 -0
  373. package/lib/mocks/models/UserMock.js +34 -0
  374. package/lib/mocks/models/index.d.ts +9 -0
  375. package/lib/mocks/models/index.js +18 -0
  376. package/lib/mocks/views/ActionMenuMock.d.ts +5 -0
  377. package/lib/mocks/views/ActionMenuMock.js +17 -0
  378. package/lib/mocks/views/ChartMock.d.ts +5 -0
  379. package/lib/mocks/views/ChartMock.js +20 -0
  380. package/lib/mocks/views/ChartMockOptions.d.ts +92 -0
  381. package/lib/mocks/views/ChartMockOptions.js +107 -0
  382. package/lib/mocks/views/DashboardMock.d.ts +2 -0
  383. package/lib/mocks/views/DashboardMock.js +123 -0
  384. package/lib/mocks/views/FormMock.d.ts +5 -0
  385. package/lib/mocks/views/FormMock.js +33 -0
  386. package/lib/mocks/views/TableMock.d.ts +5 -0
  387. package/lib/mocks/views/TableMock.js +160 -0
  388. package/lib/mocks/views/WipMock.d.ts +5 -0
  389. package/lib/mocks/views/WipMock.js +17 -0
  390. package/lib/mocks/views/index.d.ts +7 -0
  391. package/lib/mocks/views/index.js +16 -0
  392. package/lib/models/AIAgent.d.ts +17 -0
  393. package/lib/models/AIAgent.js +5 -0
  394. package/lib/models/Account.d.ts +4 -0
  395. package/lib/models/Account.js +5 -0
  396. package/lib/models/Assignment.d.ts +7 -0
  397. package/lib/models/Assignment.js +5 -0
  398. package/lib/models/Base.d.ts +16 -0
  399. package/lib/models/Base.js +5 -0
  400. package/lib/models/Cell.d.ts +8 -0
  401. package/lib/models/Cell.js +5 -0
  402. package/lib/models/CodeBlock.d.ts +10 -0
  403. package/lib/models/CodeBlock.js +5 -0
  404. package/lib/models/CodefeedBlocks.d.ts +7 -0
  405. package/lib/models/CodefeedBlocks.js +5 -0
  406. package/lib/models/Contact.d.ts +73 -0
  407. package/lib/models/Contact.js +95 -0
  408. package/lib/models/ContactEvent.d.ts +10 -0
  409. package/lib/models/ContactEvent.js +19 -0
  410. package/lib/models/ContactIAMProvider.d.ts +12 -0
  411. package/lib/models/ContactIAMProvider.js +20 -0
  412. package/lib/models/ContactTags.d.ts +23 -0
  413. package/lib/models/ContactTags.js +73 -0
  414. package/lib/models/Content.d.ts +5 -0
  415. package/lib/models/Content.js +5 -0
  416. package/lib/models/Course.d.ts +17 -0
  417. package/lib/models/Course.js +5 -0
  418. package/lib/models/Credits.d.ts +76 -0
  419. package/lib/models/Credits.js +16 -0
  420. package/lib/models/Dataset.d.ts +16 -0
  421. package/lib/models/Dataset.js +5 -0
  422. package/lib/models/Datasource.d.ts +11 -0
  423. package/lib/models/Datasource.js +19 -0
  424. package/lib/models/Dean.d.ts +3 -0
  425. package/lib/models/Dean.js +5 -0
  426. package/lib/models/Document.d.ts +8 -0
  427. package/lib/models/Document.js +5 -0
  428. package/lib/models/Environment.d.ts +82 -0
  429. package/lib/models/Environment.js +5 -0
  430. package/lib/models/Errors.d.ts +6 -0
  431. package/lib/models/Errors.js +18 -0
  432. package/lib/models/Exercise.d.ts +16 -0
  433. package/lib/models/Exercise.js +5 -0
  434. package/lib/models/GrowthKPI.d.ts +5 -0
  435. package/lib/models/GrowthKPI.js +14 -0
  436. package/lib/models/IAMProviderLinked.d.ts +9 -0
  437. package/lib/models/IAMProviderLinked.js +13 -0
  438. package/lib/models/IAMProviderPost.d.ts +8 -0
  439. package/lib/models/IAMProviderPost.js +22 -0
  440. package/lib/models/IAMProviderUsers.d.ts +49 -0
  441. package/lib/models/IAMProviderUsers.js +34 -0
  442. package/lib/models/IAMProvidersSpecs.d.ts +22 -0
  443. package/lib/models/IAMProvidersSpecs.js +72 -0
  444. package/lib/models/IAMToken.d.ts +11 -0
  445. package/lib/models/IAMToken.js +19 -0
  446. package/lib/models/Inbound.d.ts +25 -0
  447. package/lib/models/Inbound.js +34 -0
  448. package/lib/models/Instructor.d.ts +3 -0
  449. package/lib/models/Instructor.js +5 -0
  450. package/lib/models/Invite.d.ts +14 -0
  451. package/lib/models/Invite.js +24 -0
  452. package/lib/models/Item.d.ts +20 -0
  453. package/lib/models/Item.js +5 -0
  454. package/lib/models/ItemType.d.ts +2 -0
  455. package/lib/models/ItemType.js +5 -0
  456. package/lib/models/LandingRoles.d.ts +3 -0
  457. package/lib/models/LandingRoles.js +32 -0
  458. package/lib/models/Lesson.d.ts +5 -0
  459. package/lib/models/Lesson.js +5 -0
  460. package/lib/models/Library.d.ts +10 -0
  461. package/lib/models/Library.js +5 -0
  462. package/lib/models/Member.d.ts +3 -0
  463. package/lib/models/Member.js +5 -0
  464. package/lib/models/Notebook.d.ts +11 -0
  465. package/lib/models/Notebook.js +5 -0
  466. package/lib/models/Organization.d.ts +27 -0
  467. package/lib/models/Organization.js +41 -0
  468. package/lib/models/OrganizationMember.d.ts +6 -0
  469. package/lib/models/OrganizationMember.js +5 -0
  470. package/lib/models/Outbound.d.ts +41 -0
  471. package/lib/models/Outbound.js +50 -0
  472. package/lib/models/Page.d.ts +36 -0
  473. package/lib/models/Page.js +23 -0
  474. package/lib/models/PageTag.d.ts +19 -0
  475. package/lib/models/PageTag.js +26 -0
  476. package/lib/models/Profile.d.ts +1 -0
  477. package/lib/models/Profile.js +5 -0
  478. package/lib/models/Role.d.ts +9 -0
  479. package/lib/models/Role.js +5 -0
  480. package/lib/models/RolesOrganization.d.ts +9 -0
  481. package/lib/models/RolesOrganization.js +63 -0
  482. package/lib/models/RolesPlatform.d.ts +16 -0
  483. package/lib/models/RolesPlatform.js +147 -0
  484. package/lib/models/RolesTeam.d.ts +7 -0
  485. package/lib/models/RolesTeam.js +39 -0
  486. package/lib/models/Runtime.d.ts +65 -0
  487. package/lib/models/Runtime.js +16 -0
  488. package/lib/models/RuntimeSnapshot.d.ts +92 -0
  489. package/lib/models/RuntimeSnapshot.js +13 -0
  490. package/lib/models/School.d.ts +11 -0
  491. package/lib/models/School.js +5 -0
  492. package/lib/models/Secret.d.ts +10 -0
  493. package/lib/models/Secret.js +18 -0
  494. package/lib/models/Space.d.ts +34 -0
  495. package/lib/models/Space.js +39 -0
  496. package/lib/models/SpaceItem.d.ts +10 -0
  497. package/lib/models/SpaceItem.js +5 -0
  498. package/lib/models/SpaceMember.d.ts +6 -0
  499. package/lib/models/SpaceMember.js +5 -0
  500. package/lib/models/Student.d.ts +6 -0
  501. package/lib/models/Student.js +5 -0
  502. package/lib/models/StudentItem.d.ts +21 -0
  503. package/lib/models/StudentItem.js +5 -0
  504. package/lib/models/Survey.d.ts +20 -0
  505. package/lib/models/Survey.js +19 -0
  506. package/lib/models/Team.d.ts +22 -0
  507. package/lib/models/Team.js +37 -0
  508. package/lib/models/TeamMember.d.ts +6 -0
  509. package/lib/models/TeamMember.js +5 -0
  510. package/lib/models/URN.d.ts +63 -0
  511. package/lib/models/URN.js +45 -0
  512. package/lib/models/Usage.d.ts +46 -0
  513. package/lib/models/Usage.js +21 -0
  514. package/lib/models/User.d.ts +71 -0
  515. package/lib/models/User.js +103 -0
  516. package/lib/models/UserEvent.d.ts +10 -0
  517. package/lib/models/UserEvent.js +19 -0
  518. package/lib/models/UserOnboarding.d.ts +14 -0
  519. package/lib/models/UserOnboarding.js +24 -0
  520. package/lib/models/UserSettings.d.ts +16 -0
  521. package/lib/models/UserSettings.js +32 -0
  522. package/lib/models/WaitingListFormData.d.ts +6 -0
  523. package/lib/models/WaitingListFormData.js +5 -0
  524. package/lib/models/index.d.ts +65 -0
  525. package/lib/models/index.js +74 -0
  526. package/lib/routes/Routes.d.ts +3 -0
  527. package/lib/routes/Routes.js +12 -0
  528. package/lib/routes/index.d.ts +1 -0
  529. package/lib/routes/index.js +10 -0
  530. package/lib/state/State.d.ts +33 -0
  531. package/lib/state/State.js +49 -0
  532. package/lib/state/index.d.ts +3 -0
  533. package/lib/state/index.js +12 -0
  534. package/lib/state/storage/IAMStorage.d.ts +33 -0
  535. package/lib/state/storage/IAMStorage.js +81 -0
  536. package/lib/state/storage/index.d.ts +1 -0
  537. package/lib/state/storage/index.js +10 -0
  538. package/lib/state/substates/AIAgentState.d.ts +11 -0
  539. package/lib/state/substates/AIAgentState.js +45 -0
  540. package/lib/state/substates/CellState.d.ts +12 -0
  541. package/lib/state/substates/CellState.js +26 -0
  542. package/lib/state/substates/CoreState.d.ts +25 -0
  543. package/lib/state/substates/CoreState.js +93 -0
  544. package/lib/state/substates/DatasourceState.d.ts +11 -0
  545. package/lib/state/substates/DatasourceState.js +21 -0
  546. package/lib/state/substates/DocumentState.d.ts +10 -0
  547. package/lib/state/substates/DocumentState.js +19 -0
  548. package/lib/state/substates/GradeState.d.ts +10 -0
  549. package/lib/state/substates/GradeState.js +19 -0
  550. package/lib/state/substates/IAMState.d.ts +75 -0
  551. package/lib/state/substates/IAMState.js +294 -0
  552. package/lib/state/substates/JupyterLabState.d.ts +16 -0
  553. package/lib/state/substates/JupyterLabState.js +22 -0
  554. package/lib/state/substates/LayoutState.d.ts +62 -0
  555. package/lib/state/substates/LayoutState.js +74 -0
  556. package/lib/state/substates/NbformatState.d.ts +13 -0
  557. package/lib/state/substates/NbformatState.js +21 -0
  558. package/lib/state/substates/OrganizationState.d.ts +11 -0
  559. package/lib/state/substates/OrganizationState.js +21 -0
  560. package/lib/state/substates/RuntimesState.d.ts +88 -0
  561. package/lib/state/substates/RuntimesState.js +183 -0
  562. package/lib/state/substates/SpaceState.d.ts +11 -0
  563. package/lib/state/substates/SpaceState.js +21 -0
  564. package/lib/state/substates/SurveysState.d.ts +14 -0
  565. package/lib/state/substates/SurveysState.js +103 -0
  566. package/lib/state/substates/TeamState.d.ts +11 -0
  567. package/lib/state/substates/TeamState.js +22 -0
  568. package/lib/state/substates/index.d.ts +15 -0
  569. package/lib/state/substates/index.js +24 -0
  570. package/lib/test-setup.d.ts +1 -0
  571. package/lib/test-setup.js +7 -0
  572. package/lib/theme/DatalayerTheme.d.ts +37 -0
  573. package/lib/theme/DatalayerTheme.js +67 -0
  574. package/lib/theme/DatalayerThemeProvider.d.ts +17 -0
  575. package/lib/theme/DatalayerThemeProvider.js +74 -0
  576. package/lib/theme/Palette.d.ts +5 -0
  577. package/lib/theme/Palette.js +27 -0
  578. package/lib/theme/index.d.ts +3 -0
  579. package/lib/theme/index.js +12 -0
  580. package/lib/utils/Array.d.ts +2 -0
  581. package/lib/utils/Array.js +21 -0
  582. package/lib/utils/Avatar.d.ts +9 -0
  583. package/lib/utils/Avatar.js +39 -0
  584. package/lib/utils/Browser.d.ts +3 -0
  585. package/lib/utils/Browser.js +68 -0
  586. package/lib/utils/Cells.d.ts +2 -0
  587. package/lib/utils/Cells.js +28 -0
  588. package/lib/utils/Cookie.d.ts +12 -0
  589. package/lib/utils/Cookie.js +53 -0
  590. package/lib/utils/Date.d.ts +2 -0
  591. package/lib/utils/Date.js +65 -0
  592. package/lib/utils/Download.d.ts +3 -0
  593. package/lib/utils/Download.js +53 -0
  594. package/lib/utils/DownloadFile.d.ts +10 -0
  595. package/lib/utils/DownloadFile.js +41 -0
  596. package/lib/utils/Env.d.ts +1 -0
  597. package/lib/utils/Env.js +12 -0
  598. package/lib/utils/File.d.ts +7 -0
  599. package/lib/utils/File.js +21 -0
  600. package/lib/utils/Format.d.ts +17 -0
  601. package/lib/utils/Format.js +54 -0
  602. package/lib/utils/Ids.d.ts +2 -0
  603. package/lib/utils/Ids.js +17 -0
  604. package/lib/utils/Jupyter.d.ts +1 -0
  605. package/lib/utils/Jupyter.js +17 -0
  606. package/lib/utils/Lazy.d.ts +8 -0
  607. package/lib/utils/Lazy.js +29 -0
  608. package/lib/utils/Msc.d.ts +16 -0
  609. package/lib/utils/Msc.js +28 -0
  610. package/lib/utils/Name.d.ts +7 -0
  611. package/lib/utils/Name.js +39 -0
  612. package/lib/utils/Notebook.d.ts +19 -0
  613. package/lib/utils/Notebook.js +37 -0
  614. package/lib/utils/Number.d.ts +1 -0
  615. package/lib/utils/Number.js +26 -0
  616. package/lib/utils/Plots.d.ts +16 -0
  617. package/lib/utils/Plots.js +56 -0
  618. package/lib/utils/Random.d.ts +1 -0
  619. package/lib/utils/Random.js +12 -0
  620. package/lib/utils/Screenshot.d.ts +1 -0
  621. package/lib/utils/Screenshot.js +32 -0
  622. package/lib/utils/Scroll.d.ts +2 -0
  623. package/lib/utils/Scroll.js +36 -0
  624. package/lib/utils/Sleep.d.ts +2 -0
  625. package/lib/utils/Sleep.js +13 -0
  626. package/lib/utils/Snapshot.d.ts +7 -0
  627. package/lib/utils/Snapshot.js +26 -0
  628. package/lib/utils/String.d.ts +1 -0
  629. package/lib/utils/String.js +18 -0
  630. package/lib/utils/Uri.d.ts +2 -0
  631. package/lib/utils/Uri.js +31 -0
  632. package/lib/utils/Validator.d.ts +12 -0
  633. package/lib/utils/Validator.js +49 -0
  634. package/lib/utils/WithSuspense.d.ts +2 -0
  635. package/lib/utils/WithSuspense.js +26 -0
  636. package/lib/utils/index.d.ts +26 -0
  637. package/lib/utils/index.js +36 -0
  638. package/package.json +43 -4
  639. package/style/base.css +0 -5
  640. package/style/index.css +0 -7
  641. package/style/index.js +0 -7
@@ -0,0 +1,12 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ export const CONTACT_ROUTE = 'contact';
11
+ export const SUPPORT_ROUTE = 'support';
12
+ export const USAGE_ROUTE = 'usage';
@@ -0,0 +1 @@
1
+ export * from "./Routes";
@@ -0,0 +1,10 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ export * from "./Routes";
@@ -0,0 +1,33 @@
1
+ import { coreStore } from './substates/CoreState';
2
+ import { cellStore } from './substates/CellState';
3
+ import { documentStore } from './substates/DocumentState';
4
+ import { gradeStore } from './substates/GradeState';
5
+ import { iamStore } from './substates/IAMState';
6
+ import { runtimesStore } from './substates/RuntimesState';
7
+ import { layoutStore } from './substates/LayoutState';
8
+ import { nbformatStore } from './substates/NbformatState';
9
+ import { organizationStore } from './substates/OrganizationState';
10
+ import { spaceStore } from './substates/SpaceState';
11
+ import { surveysStore } from './substates/SurveysState';
12
+ import { teamStore } from './substates/TeamState';
13
+ export type DatalayerRunState = {
14
+ version: string;
15
+ setVersion: (version: string) => void;
16
+ isDev: boolean;
17
+ core: typeof coreStore.getState;
18
+ cell: typeof cellStore.getState;
19
+ document: typeof documentStore.getState;
20
+ grade: typeof gradeStore.getState;
21
+ iam: typeof iamStore.getState;
22
+ kernels: typeof runtimesStore.getState;
23
+ layout: typeof layoutStore.getState;
24
+ nbformat: typeof nbformatStore.getState;
25
+ organization: typeof organizationStore.getState;
26
+ space: typeof spaceStore.getState;
27
+ success: typeof surveysStore.getState;
28
+ team: typeof teamStore.getState;
29
+ };
30
+ export declare const runStore: import("zustand").StoreApi<DatalayerRunState>;
31
+ export declare function useRunStore(): DatalayerRunState;
32
+ export declare function useRunStore<T>(selector: (state: DatalayerRunState) => T): T;
33
+ export default useRunStore;
@@ -0,0 +1,49 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ import { createStore } from 'zustand/vanilla';
11
+ import { useStore } from 'zustand';
12
+ import { coreStore } from './substates/CoreState';
13
+ import { cellStore } from './substates/CellState';
14
+ import { documentStore } from './substates/DocumentState';
15
+ import { gradeStore } from './substates/GradeState';
16
+ import { iamStore } from './substates/IAMState';
17
+ import { runtimesStore } from './substates/RuntimesState';
18
+ import { layoutStore } from './substates/LayoutState';
19
+ import { nbformatStore } from './substates/NbformatState';
20
+ import { organizationStore } from './substates/OrganizationState';
21
+ import { spaceStore } from './substates/SpaceState';
22
+ import { surveysStore } from './substates/SurveysState';
23
+ import { teamStore } from './substates/TeamState';
24
+ import { isDevDeployment } from '../utils';
25
+ export const runStore = createStore((set, get) => ({
26
+ version: '',
27
+ setVersion: version => {
28
+ if (version && !get().version) {
29
+ set(state => ({ version }));
30
+ }
31
+ },
32
+ isDev: isDevDeployment(),
33
+ core: coreStore.getState,
34
+ cell: cellStore.getState,
35
+ document: documentStore.getState,
36
+ grade: gradeStore.getState,
37
+ iam: iamStore.getState,
38
+ kernels: runtimesStore.getState,
39
+ layout: layoutStore.getState,
40
+ nbformat: nbformatStore.getState,
41
+ organization: organizationStore.getState,
42
+ space: spaceStore.getState,
43
+ success: surveysStore.getState,
44
+ team: teamStore.getState,
45
+ }));
46
+ export function useRunStore(selector) {
47
+ return useStore(runStore, selector);
48
+ }
49
+ export default useRunStore;
@@ -0,0 +1,3 @@
1
+ export * from "./storage";
2
+ export * from './State';
3
+ export * from './substates';
@@ -0,0 +1,12 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ export * from "./storage";
11
+ export * from './State';
12
+ export * from './substates';
@@ -0,0 +1,33 @@
1
+ import { IUser } from '../../models';
2
+ export declare const JWT_DATALAYER_ISSUER = "https://id.datalayer.run";
3
+ export declare const DATALAYER_IAM_USER_KEY = "@datalayer/iam:user";
4
+ export declare const DATALAYER_IAM_TOKEN_KEY = "@datalayer/iam:token";
5
+ export declare const JWT_REFRESH_TOKEN_COOKIE_NAME = "refresh_token";
6
+ export type IJWTToken = {
7
+ exp: number;
8
+ iat: number;
9
+ iss: string;
10
+ jti: number;
11
+ roles: Array<string>;
12
+ sub: IUser;
13
+ };
14
+ /**
15
+ * Return the user from the local storage.
16
+ */
17
+ export declare const getStoredUser: () => IUser | undefined;
18
+ /**
19
+ * Set the user in the local storage.
20
+ */
21
+ export declare const storeUser: (user?: IUser) => void;
22
+ /**
23
+ * Return the IAM token from the local storage.
24
+ */
25
+ export declare const getStoredToken: () => string | undefined;
26
+ /**
27
+ * Set the IAM token in the local storage.
28
+ */
29
+ export declare const storeToken: (token?: string) => void;
30
+ /**
31
+ * Load a JWT refresh token stored in a cookie.
32
+ */
33
+ export declare function loadRefreshTokenFromCookie(): string | undefined;
@@ -0,0 +1,81 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ import jwt_decode from 'jwt-decode';
11
+ import { getCookie } from '../../utils';
12
+ import { ANONYMOUS_USER, ANONYMOUS_USER_TOKEN } from '../../models';
13
+ export const JWT_DATALAYER_ISSUER = 'https://id.datalayer.run';
14
+ export const DATALAYER_IAM_USER_KEY = '@datalayer/iam:user';
15
+ export const DATALAYER_IAM_TOKEN_KEY = '@datalayer/iam:token';
16
+ export const JWT_REFRESH_TOKEN_COOKIE_NAME = 'refresh_token';
17
+ /**
18
+ * Return the user from the local storage.
19
+ */
20
+ export const getStoredUser = () => {
21
+ const user = window.localStorage.getItem(DATALAYER_IAM_USER_KEY);
22
+ if (user) {
23
+ try {
24
+ const u = JSON.parse(user);
25
+ u.joinDate = new Date(u.joinDate);
26
+ return u;
27
+ }
28
+ catch (e) {
29
+ return ANONYMOUS_USER;
30
+ }
31
+ }
32
+ return ANONYMOUS_USER;
33
+ };
34
+ /**
35
+ * Set the user in the local storage.
36
+ */
37
+ export const storeUser = (user) => {
38
+ if (user) {
39
+ window.localStorage.setItem(DATALAYER_IAM_USER_KEY, JSON.stringify(user));
40
+ }
41
+ else {
42
+ window.localStorage.removeItem(DATALAYER_IAM_USER_KEY);
43
+ }
44
+ };
45
+ /**
46
+ * Return the IAM token from the local storage.
47
+ */
48
+ export const getStoredToken = () => {
49
+ const token = window.localStorage.getItem(DATALAYER_IAM_TOKEN_KEY);
50
+ if (token) {
51
+ return token;
52
+ }
53
+ return ANONYMOUS_USER_TOKEN;
54
+ };
55
+ /**
56
+ * Set the IAM token in the local storage.
57
+ */
58
+ export const storeToken = (token) => {
59
+ if (token) {
60
+ if (token !== ANONYMOUS_USER_TOKEN) {
61
+ try {
62
+ const jwt = jwt_decode(token);
63
+ console.debug('JWT Token', jwt);
64
+ }
65
+ catch (error) {
66
+ console.error("Error while decoding JWT Token.", error);
67
+ throw error;
68
+ }
69
+ }
70
+ localStorage.setItem(DATALAYER_IAM_TOKEN_KEY, token);
71
+ }
72
+ else {
73
+ window.localStorage.removeItem(DATALAYER_IAM_TOKEN_KEY);
74
+ }
75
+ };
76
+ /**
77
+ * Load a JWT refresh token stored in a cookie.
78
+ */
79
+ export function loadRefreshTokenFromCookie() {
80
+ return getCookie(JWT_REFRESH_TOKEN_COOKIE_NAME);
81
+ }
@@ -0,0 +1 @@
1
+ export * from "./IAMStorage";
@@ -0,0 +1,10 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ export * from "./IAMStorage";
@@ -0,0 +1,11 @@
1
+ import type { IAIAgent } from '../../models';
2
+ export type AIAgentState = {
3
+ aiAgents: readonly IAIAgent[];
4
+ addAIAgent: (aiAgent: IAIAgent) => void;
5
+ deleteAIAgent: (documentId: string) => void;
6
+ updateAIAgent: (documentId: string, runtimeId?: string) => void;
7
+ };
8
+ export declare const aiAgentStore: import("zustand").StoreApi<AIAgentState>;
9
+ export declare function useAIAgentStore(): AIAgentState;
10
+ export declare function useAIAgentStore<T>(selector: (state: AIAgentState) => T): T;
11
+ export default useAIAgentStore;
@@ -0,0 +1,45 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ import { createStore } from 'zustand/vanilla';
11
+ import { useStore } from 'zustand';
12
+ export const aiAgentStore = createStore(set => ({
13
+ aiAgents: [],
14
+ addAIAgent: (aiAgent) => {
15
+ set((state) => {
16
+ if (!state.aiAgents.includes(aiAgent)) {
17
+ return { aiAgents: state.aiAgents.concat([aiAgent]) };
18
+ }
19
+ else {
20
+ return {};
21
+ }
22
+ });
23
+ },
24
+ deleteAIAgent: (documentId) => {
25
+ set((state) => {
26
+ return { aiAgents: state.aiAgents.filter(a => a.documentId === documentId) };
27
+ });
28
+ },
29
+ updateAIAgent: (documentId, runtimeId) => {
30
+ set((state) => {
31
+ const index = state.aiAgents.findIndex(aiAgent => aiAgent.documentId === documentId);
32
+ if (index >= 0) {
33
+ state.aiAgents[index].runtimeId = runtimeId;
34
+ return { aiAgents: [...state.aiAgents] };
35
+ }
36
+ else {
37
+ return {};
38
+ }
39
+ });
40
+ }
41
+ }));
42
+ export function useAIAgentStore(selector) {
43
+ return useStore(aiAgentStore, selector);
44
+ }
45
+ export default useAIAgentStore;
@@ -0,0 +1,12 @@
1
+ import { ICell } from '../../models';
2
+ export type ICellState = {
3
+ cell?: ICell;
4
+ };
5
+ export type CellState = ICellState & {
6
+ create: (cell: ICell) => void;
7
+ update: (cell: Partial<ICell>) => void;
8
+ };
9
+ export declare const cellStore: import("zustand").StoreApi<CellState>;
10
+ export declare function useCellStore(): CellState;
11
+ export declare function useCellStore<T>(selector: (state: CellState) => T): T;
12
+ export default useCellStore;
@@ -0,0 +1,26 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ import { createStore } from 'zustand/vanilla';
11
+ import { useStore } from 'zustand';
12
+ export const cellStore = createStore((set, get) => ({
13
+ cell: undefined,
14
+ create: (cell) => set((state) => ({ cell })),
15
+ update: (cell) => set((state) => ({
16
+ cell: cell ? {
17
+ ...state.cell,
18
+ ...cell,
19
+ }
20
+ : undefined
21
+ })),
22
+ }));
23
+ export function useCellStore(selector) {
24
+ return useStore(cellStore, selector);
25
+ }
26
+ export default useCellStore;
@@ -0,0 +1,25 @@
1
+ import type { IDatalayerCoreConfig } from '../../config';
2
+ export type DatalayerCoreState = {
3
+ tab: number;
4
+ getIntTab: () => number;
5
+ setTab: (tab: number) => void;
6
+ /**
7
+ * Datalayer configuration
8
+ */
9
+ configuration: IDatalayerCoreConfig;
10
+ /**
11
+ * Set the Datalayer configuration
12
+ */
13
+ setConfiguration: (configuration: Partial<IDatalayerCoreConfig>) => void;
14
+ /**
15
+ * Package version
16
+ */
17
+ version: string;
18
+ setVersion: (version: string) => void;
19
+ loadConfigurationFromServer: boolean;
20
+ setLoadConfigurationFromServer: (loadConfigurationFromServer: boolean) => void;
21
+ };
22
+ export declare const coreStore: import("zustand").StoreApi<DatalayerCoreState>;
23
+ export declare function useCoreStore(): DatalayerCoreState;
24
+ export declare function useCoreStore<T>(selector: (state: DatalayerCoreState) => T): T;
25
+ export default useCoreStore;
@@ -0,0 +1,93 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ import { createStore } from 'zustand/vanilla';
11
+ import { useStore } from 'zustand';
12
+ let loadConfigurationFromServer = true;
13
+ let initialConfiguration = {
14
+ useMock: false,
15
+ whiteLabel: true,
16
+ loadConfigurationFromServer: true,
17
+ jupyterServerless: false,
18
+ iamRunUrl: 'https://prod1.datalayer.run',
19
+ runtimesRunUrl: 'https://prod1.datalayer.run',
20
+ libraryRunUrl: 'https://prod1.datalayer.run',
21
+ spacerRunUrl: 'https://prod1.datalayer.run',
22
+ aiagentsRunUrl: 'https://prod1.datalayer.run',
23
+ growthRunUrl: 'https://prod1.datalayer.run',
24
+ inboundsRunUrl: 'https://prod1.datalayer.run',
25
+ successRunUrl: 'https://prod1.datalayer.run',
26
+ supportRunUrl: 'https://prod1.datalayer.run',
27
+ launcher: {
28
+ category: 'Datalayer',
29
+ name: 'Datalayer Runtimes',
30
+ icon: 'https://raw.githubusercontent.com/datalayer/icons/main/svg/data1/jupyter-base.svg',
31
+ rank: 1
32
+ },
33
+ brand: {
34
+ name: 'Datalayer',
35
+ about: 'AI Platform for Data Analysis',
36
+ logoUrl: 'https://assets.datalayer.tech/datalayer-25.svg',
37
+ logoSquareUrl: 'https://assets.datalayer.tech/datalayer-square.png',
38
+ copyright: '© 2025 Datalayer, Inc',
39
+ docsUrl: 'https://docs.datalayer.app',
40
+ supportUrl: 'https://datalayer.app/support',
41
+ termsUrl: 'https://datalayer.app/terms',
42
+ pricingUrl: 'https://datalayer.app/pricing',
43
+ privacyUrl: 'https://datalayer.app/privacy',
44
+ }
45
+ };
46
+ // Try loading initial state from datalayer-config-data element
47
+ try {
48
+ const rawConfig = document.getElementById('datalayer-config-data');
49
+ if (rawConfig?.innerText) {
50
+ const htmlOverridingConfiguration = JSON.parse(rawConfig?.innerText || '{}');
51
+ if (htmlOverridingConfiguration.loadConfigurationFromServer != undefined) {
52
+ loadConfigurationFromServer = htmlOverridingConfiguration.loadConfigurationFromServer;
53
+ }
54
+ initialConfiguration = {
55
+ ...initialConfiguration,
56
+ ...htmlOverridingConfiguration,
57
+ };
58
+ console.log('Datalayer configuration loaded from HTML page', initialConfiguration);
59
+ window.document.title = `${initialConfiguration.brand.name} Ξ ${initialConfiguration.brand.about}`;
60
+ }
61
+ }
62
+ catch (error) {
63
+ console.debug('No valid configuration found in the webpage.', error);
64
+ }
65
+ export const coreStore = createStore((set, get) => ({
66
+ tab: 0.0,
67
+ getIntTab: () => Math.floor(get().tab),
68
+ setTab: (tab) => set((state) => ({ tab })),
69
+ configuration: initialConfiguration,
70
+ setConfiguration: (configuration) => {
71
+ console.log('Setting Datalayer configuration', configuration);
72
+ set(state => ({
73
+ configuration: {
74
+ ...state.configuration,
75
+ ...configuration
76
+ }
77
+ }));
78
+ },
79
+ version: '',
80
+ setVersion: version => {
81
+ if (version && !get().version) {
82
+ set(state => ({ version }));
83
+ }
84
+ },
85
+ loadConfigurationFromServer,
86
+ setLoadConfigurationFromServer: (loadConfigurationFromServer) => {
87
+ set(state => ({ loadConfigurationFromServer }));
88
+ },
89
+ }));
90
+ export function useCoreStore(selector) {
91
+ return useStore(coreStore, selector);
92
+ }
93
+ export default useCoreStore;
@@ -0,0 +1,11 @@
1
+ import { IDatasource } from '../../models';
2
+ export type IDatasourceState = {
3
+ datasources: IDatasource[];
4
+ };
5
+ export type DatasourceState = IDatasourceState & {
6
+ updateDatasources: (datasources: IDatasource[]) => void;
7
+ };
8
+ export declare const datasourceStore: import("zustand").StoreApi<DatasourceState>;
9
+ export declare function useDatasourceStore(): DatasourceState;
10
+ export declare function useDatasourceStore<T>(selector: (state: DatasourceState) => T): T;
11
+ export default useDatasourceStore;
@@ -0,0 +1,21 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ import { createStore } from 'zustand/vanilla';
11
+ import { useStore } from 'zustand';
12
+ export const datasourceStore = createStore((set, get) => ({
13
+ datasources: [],
14
+ updateDatasources: (datasources) => set((state) => ({
15
+ datasources
16
+ })),
17
+ }));
18
+ export function useDatasourceStore(selector) {
19
+ return useStore(datasourceStore, selector);
20
+ }
21
+ export default useDatasourceStore;
@@ -0,0 +1,10 @@
1
+ export interface IDocumentState {
2
+ documentSaveRequest?: Date;
3
+ }
4
+ export type DocumentState = IDocumentState & {
5
+ save: (documentSaveRequest: Date) => void;
6
+ };
7
+ export declare const documentStore: import("zustand").StoreApi<DocumentState>;
8
+ export declare function useDocumentStore(): DocumentState;
9
+ export declare function useDocumentStore<T>(selector: (state: DocumentState) => T): T;
10
+ export default useDocumentStore;
@@ -0,0 +1,19 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ import { createStore } from 'zustand/vanilla';
11
+ import { useStore } from 'zustand';
12
+ export const documentStore = createStore((set, get) => ({
13
+ documentSaveRequest: undefined,
14
+ save: (documentSaveRequest) => set((state) => ({ documentSaveRequest })),
15
+ }));
16
+ export function useDocumentStore(selector) {
17
+ return useStore(documentStore, selector);
18
+ }
19
+ export default useDocumentStore;
@@ -0,0 +1,10 @@
1
+ export type IGradeState = {
2
+ gradeRequest?: Date;
3
+ };
4
+ export type GradeState = IGradeState & {
5
+ grade: (gradeRequest: Date) => void;
6
+ };
7
+ export declare const gradeStore: import("zustand").StoreApi<GradeState>;
8
+ export declare function useGradeStore(): GradeState;
9
+ export declare function useGradeStore<T>(selector: (state: GradeState) => T): T;
10
+ export default useGradeStore;
@@ -0,0 +1,19 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /*
6
+ * Copyright (c) 2021-2024 Datalayer, Inc.
7
+ *
8
+ * Datalayer License
9
+ */
10
+ import { createStore } from 'zustand/vanilla';
11
+ import { useStore } from 'zustand';
12
+ export const gradeStore = createStore((set, get) => ({
13
+ gradeRequest: undefined,
14
+ grade: (gradeRequest) => set((state) => ({ gradeRequest })),
15
+ }));
16
+ export function useGradeStore(selector) {
17
+ return useStore(gradeStore, selector);
18
+ }
19
+ export default useGradeStore;
@@ -0,0 +1,75 @@
1
+ import { IUser, IIAMProviderName } from '../../models';
2
+ import type { ICredits, ICreditsReservation } from '../../models';
3
+ /**
4
+ * Limit to warn about low credits in milliseconds.
5
+ */
6
+ export declare const RESERVATION_WARNING_TIME_MS: number;
7
+ type IAMProviderAuthorizationURL = string;
8
+ export type IIAMState = {
9
+ /**
10
+ * User credits
11
+ */
12
+ credits?: ICredits & {
13
+ available: number;
14
+ };
15
+ /**
16
+ * User credits reservations
17
+ */
18
+ creditsReservations: ICreditsReservation[];
19
+ /**
20
+ * User token for the external infrastructure
21
+ */
22
+ externalToken?: string;
23
+ /**
24
+ * IAM server base URL.
25
+ */
26
+ iamRunUrl: string;
27
+ /**
28
+ * Mapping of IAM providers and the corresponding Authorization URL.
29
+ */
30
+ iamProvidersAuthorizationURL: Record<IIAMProviderName, IAMProviderAuthorizationURL> | {};
31
+ /**
32
+ * User authenticated to Datalayer.
33
+ */
34
+ user?: IUser;
35
+ /**
36
+ * Authentication token
37
+ */
38
+ token?: string;
39
+ /**
40
+ * IAM service version
41
+ */
42
+ version: string;
43
+ };
44
+ export type IAMState = IIAMState & {
45
+ addIAMProviderAuthorizationURL: (provider: IIAMProviderName, authorizationURL: IAMProviderAuthorizationURL) => void;
46
+ login: (token: string) => Promise<void>;
47
+ logout: () => void;
48
+ /**
49
+ * Refresh user credits. It also warn if any
50
+ * reservation is getting close to the end.
51
+ */
52
+ refreshCredits: () => Promise<void>;
53
+ checkIAMToken: (token: string) => Promise<void>;
54
+ setIAMProviderAccessToken: (provider: IIAMProviderName, accessToken?: string | null) => void;
55
+ getIAMProviderAccessToken: (user: IUser, provider: IIAMProviderName) => string | undefined;
56
+ refreshUser: () => Promise<void>;
57
+ refreshUserByTokenStored: () => Promise<void>;
58
+ refreshUserByToken: (token: string) => Promise<void>;
59
+ setExternalToken: (externalToken: string) => void;
60
+ setVersion: (version: string) => void;
61
+ /**
62
+ * Set the {@link token} and the {@link user}.
63
+ *
64
+ * The user detail will be automatically retrieve
65
+ * to avoid inconsistency.
66
+ *
67
+ * @param token User token
68
+ */
69
+ setLogin: (user: IUser, token: string) => void;
70
+ updateUser: (user: Partial<Omit<IUser, 'handle'>>) => void;
71
+ };
72
+ export declare const iamStore: import("zustand").StoreApi<IAMState>;
73
+ export declare function useIAMStore(): IAMState;
74
+ export declare function useIAMStore<T>(selector: (state: IAMState) => T): T;
75
+ export default useIAMStore;