@datalayer/core 1.0.25 → 1.1.41

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 (339) hide show
  1. package/README.md +14 -26
  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/base.d.ts +0 -3
  6. package/lib/client/base.js +0 -2
  7. package/lib/client/index.d.ts +10 -98
  8. package/lib/client/index.js +12 -21
  9. package/lib/components/avatars/UserAvatar.d.ts +16 -0
  10. package/lib/components/avatars/UserAvatar.js +47 -0
  11. package/lib/components/avatars/index.d.ts +1 -0
  12. package/lib/components/avatars/index.js +1 -0
  13. package/lib/components/billing/BillableAccountSelect.js +4 -0
  14. package/lib/components/billing/index.js +4 -0
  15. package/lib/components/context/index.d.ts +0 -1
  16. package/lib/components/context/index.js +0 -1
  17. package/lib/components/display/DisplayHandle.d.ts +12 -0
  18. package/lib/components/display/DisplayHandle.js +11 -0
  19. package/lib/components/display/LiveRelativeTime.js +4 -0
  20. package/lib/components/display/index.d.ts +1 -0
  21. package/lib/components/display/index.js +1 -0
  22. package/lib/components/flashes/index.d.ts +0 -1
  23. package/lib/components/flashes/index.js +0 -1
  24. package/lib/components/index.d.ts +0 -1
  25. package/lib/components/index.js +0 -1
  26. package/lib/components/principal/Principal.d.ts +7 -0
  27. package/lib/components/principal/Principal.js +153 -16
  28. package/lib/components/principal/PrincipalAvatar.d.ts +1 -1
  29. package/lib/components/principal/PrincipalAvatar.js +4 -28
  30. package/lib/components/principal/PrincipalBadge.js +4 -4
  31. package/lib/components/principal/PrincipalDetailsOverlay.d.ts +4 -2
  32. package/lib/components/principal/PrincipalDetailsOverlay.js +27 -7
  33. package/lib/components/principal/PrincipalSwitcherMenu.js +76 -39
  34. package/lib/components/progress/index.d.ts +0 -1
  35. package/lib/components/progress/index.js +0 -1
  36. package/lib/components/sharing/ShareAccessComponent.d.ts +3 -2
  37. package/lib/components/sharing/ShareAccessComponent.js +180 -133
  38. package/lib/components/sharing/SharingEditor.js +4 -0
  39. package/lib/components/snippets/index.d.ts +1 -1
  40. package/lib/components/snippets/index.js +1 -1
  41. package/lib/components/students/StudentResultCircle.d.ts +21 -0
  42. package/lib/components/students/StudentResultCircle.js +59 -0
  43. package/lib/components/students/index.d.ts +1 -1
  44. package/lib/components/students/index.js +1 -1
  45. package/lib/components/time/LiveRelativeTime.js +4 -0
  46. package/lib/components/time/index.js +4 -0
  47. package/lib/components/timeline/index.js +4 -0
  48. package/lib/components/tokens/index.d.ts +1 -1
  49. package/lib/components/tokens/index.js +1 -1
  50. package/lib/components/toolbars/index.d.ts +1 -3
  51. package/lib/components/toolbars/index.js +1 -3
  52. package/lib/hooks/cacheConverters.d.ts +21 -0
  53. package/lib/hooks/cacheConverters.js +110 -0
  54. package/lib/hooks/index.d.ts +0 -2
  55. package/lib/hooks/index.js +0 -2
  56. package/lib/hooks/useCache.d.ts +64 -35
  57. package/lib/hooks/useCache.js +407 -52
  58. package/lib/hooks/useDatalayer.js +3 -1
  59. package/lib/hooks/useIAM.js +1 -3
  60. package/lib/hooks/useLocationHandles.d.ts +3 -1
  61. package/lib/hooks/useLocationHandles.js +2 -1
  62. package/lib/hooks/usePrincipalStore.d.ts +2 -2
  63. package/lib/hooks/usePrincipalStore.js +97 -14
  64. package/lib/hooks/useSelectedPrincipal.js +1 -1
  65. package/lib/hooks/useUser.js +19 -2
  66. package/lib/index.d.ts +1 -6
  67. package/lib/index.js +1 -13
  68. package/lib/main.js +3 -3
  69. package/lib/mocks/index.js +1 -1
  70. package/lib/mocks/models/index.d.ts +0 -1
  71. package/lib/mocks/models/index.js +0 -1
  72. package/lib/models/Datasource.d.ts +2 -2
  73. package/lib/models/IAM.d.ts +1 -1
  74. package/lib/models/School.d.ts +12 -3
  75. package/lib/models/Secret.d.ts +2 -2
  76. package/lib/models/Student.d.ts +13 -3
  77. package/lib/models/Usage.d.ts +11 -1
  78. package/lib/models/UserDTO.d.ts +2 -2
  79. package/lib/models/index.d.ts +0 -30
  80. package/lib/models/index.js +0 -30
  81. package/lib/routes/index.d.ts +1 -0
  82. package/lib/routes/index.js +1 -0
  83. package/lib/routes/publicPaths.d.ts +23 -0
  84. package/lib/routes/publicPaths.js +74 -0
  85. package/lib/state/State.d.ts +0 -12
  86. package/lib/state/State.js +0 -12
  87. package/lib/state/substates/LayoutState.d.ts +12 -1
  88. package/lib/state/substates/index.d.ts +0 -7
  89. package/lib/state/substates/index.js +0 -7
  90. package/lib/utils/Handles.js +3 -1
  91. package/lib/utils/index.d.ts +0 -1
  92. package/lib/utils/index.js +0 -1
  93. package/lib/views/api-keys/APIKeys.js +12 -3
  94. package/lib/views/datasources/DatasourceDetail.d.ts +1 -1
  95. package/lib/views/datasources/DatasourceNew.d.ts +1 -1
  96. package/lib/views/datasources/Datasources.d.ts +1 -1
  97. package/lib/views/datasources/Datasources.js +12 -3
  98. package/lib/views/iam/SignInSimple.d.ts +37 -1
  99. package/lib/views/iam/SignInSimple.js +110 -12
  100. package/package.json +5 -3
  101. package/lib/App.css +0 -47
  102. package/lib/App.d.ts +0 -3
  103. package/lib/App.js +0 -21
  104. package/lib/api/runtimes/checkpoints.d.ts +0 -122
  105. package/lib/api/runtimes/checkpoints.js +0 -118
  106. package/lib/api/runtimes/environments.d.ts +0 -9
  107. package/lib/api/runtimes/environments.js +0 -29
  108. package/lib/api/runtimes/healthz.d.ts +0 -15
  109. package/lib/api/runtimes/healthz.js +0 -44
  110. package/lib/api/runtimes/index.d.ts +0 -12
  111. package/lib/api/runtimes/index.js +0 -16
  112. package/lib/api/runtimes/runtimes.d.ts +0 -138
  113. package/lib/api/runtimes/runtimes.js +0 -230
  114. package/lib/api/runtimes/snapshots.d.ts +0 -38
  115. package/lib/api/runtimes/snapshots.js +0 -82
  116. package/lib/api/scheduler/index.d.ts +0 -6
  117. package/lib/api/scheduler/index.js +0 -10
  118. package/lib/api/scheduler/schedules.d.ts +0 -85
  119. package/lib/api/scheduler/schedules.js +0 -78
  120. package/lib/api/spacer/documents.d.ts +0 -12
  121. package/lib/api/spacer/documents.js +0 -43
  122. package/lib/api/spacer/healthz.d.ts +0 -15
  123. package/lib/api/spacer/healthz.js +0 -44
  124. package/lib/api/spacer/index.d.ts +0 -15
  125. package/lib/api/spacer/index.js +0 -19
  126. package/lib/api/spacer/items.d.ts +0 -25
  127. package/lib/api/spacer/items.js +0 -55
  128. package/lib/api/spacer/lexicals.d.ts +0 -34
  129. package/lib/api/spacer/lexicals.js +0 -89
  130. package/lib/api/spacer/notebooks.d.ts +0 -34
  131. package/lib/api/spacer/notebooks.js +0 -89
  132. package/lib/api/spacer/spaces.d.ts +0 -84
  133. package/lib/api/spacer/spaces.js +0 -170
  134. package/lib/api/spacer/users.d.ts +0 -9
  135. package/lib/api/spacer/users.js +0 -29
  136. package/lib/client/mixins/RuntimesMixin.d.ts +0 -93
  137. package/lib/client/mixins/RuntimesMixin.js +0 -229
  138. package/lib/client/mixins/SpacerMixin.d.ts +0 -210
  139. package/lib/client/mixins/SpacerMixin.js +0 -615
  140. package/lib/client/utils/spacerUtils.d.ts +0 -18
  141. package/lib/client/utils/spacerUtils.js +0 -32
  142. package/lib/collaboration/DatalayerCollaboration.d.ts +0 -13
  143. package/lib/collaboration/DatalayerCollaboration.js +0 -28
  144. package/lib/collaboration/DatalayerCollaborationProvider.d.ts +0 -60
  145. package/lib/collaboration/DatalayerCollaborationProvider.js +0 -163
  146. package/lib/collaboration/index.d.ts +0 -2
  147. package/lib/collaboration/index.js +0 -6
  148. package/lib/components/context/SpaceSelect.d.ts +0 -2
  149. package/lib/components/context/SpaceSelect.js +0 -42
  150. package/lib/components/flashes/FlashDisclaimer.d.ts +0 -2
  151. package/lib/components/flashes/FlashDisclaimer.js +0 -17
  152. package/lib/components/icons/ArtifactIcon.d.ts +0 -10
  153. package/lib/components/icons/ArtifactIcon.js +0 -58
  154. package/lib/components/icons/index.d.ts +0 -1
  155. package/lib/components/icons/index.js +0 -5
  156. package/lib/components/nbgrader/NbGradesDetails.d.ts +0 -5
  157. package/lib/components/nbgrader/NbGradesDetails.js +0 -14
  158. package/lib/components/nbgrader/index.d.ts +0 -1
  159. package/lib/components/nbgrader/index.js +0 -5
  160. package/lib/components/progress/CreditsIndicator.d.ts +0 -33
  161. package/lib/components/progress/CreditsIndicator.js +0 -23
  162. package/lib/components/runtimes/RuntimeCellVariables.d.ts +0 -39
  163. package/lib/components/runtimes/RuntimeCellVariables.js +0 -172
  164. package/lib/components/runtimes/RuntimeCellVariablesDialog.d.ts +0 -37
  165. package/lib/components/runtimes/RuntimeCellVariablesDialog.js +0 -101
  166. package/lib/components/runtimes/RuntimeLauncherDialog.d.ts +0 -57
  167. package/lib/components/runtimes/RuntimeLauncherDialog.js +0 -275
  168. package/lib/components/runtimes/RuntimePickerBase.d.ts +0 -69
  169. package/lib/components/runtimes/RuntimePickerBase.js +0 -122
  170. package/lib/components/runtimes/RuntimePickerCell.d.ts +0 -34
  171. package/lib/components/runtimes/RuntimePickerCell.js +0 -104
  172. package/lib/components/runtimes/RuntimePickerNotebook.d.ts +0 -42
  173. package/lib/components/runtimes/RuntimePickerNotebook.js +0 -232
  174. package/lib/components/runtimes/RuntimeReservationControl.d.ts +0 -47
  175. package/lib/components/runtimes/RuntimeReservationControl.js +0 -42
  176. package/lib/components/runtimes/RuntimeSimplePicker.d.ts +0 -38
  177. package/lib/components/runtimes/RuntimeSimplePicker.js +0 -155
  178. package/lib/components/runtimes/RuntimeTransfer.d.ts +0 -16
  179. package/lib/components/runtimes/RuntimeTransfer.js +0 -5
  180. package/lib/components/runtimes/RuntimeUtils.d.ts +0 -17
  181. package/lib/components/runtimes/RuntimeUtils.js +0 -178
  182. package/lib/components/runtimes/RuntimeVariables.d.ts +0 -38
  183. package/lib/components/runtimes/RuntimeVariables.js +0 -75
  184. package/lib/components/runtimes/index.d.ts +0 -11
  185. package/lib/components/runtimes/index.js +0 -15
  186. package/lib/components/scheduler/ScheduleMenu.d.ts +0 -54
  187. package/lib/components/scheduler/ScheduleMenu.js +0 -154
  188. package/lib/components/scheduler/index.d.ts +0 -1
  189. package/lib/components/scheduler/index.js +0 -5
  190. package/lib/components/snapshots/SandboxSnapshotMenu.d.ts +0 -33
  191. package/lib/components/snapshots/SandboxSnapshotMenu.js +0 -169
  192. package/lib/components/snapshots/index.d.ts +0 -1
  193. package/lib/components/snapshots/index.js +0 -5
  194. package/lib/components/snippets/SnippetDialog.d.ts +0 -42
  195. package/lib/components/snippets/SnippetDialog.js +0 -42
  196. package/lib/components/students/StudentItemStatus.d.ts +0 -7
  197. package/lib/components/students/StudentItemStatus.js +0 -66
  198. package/lib/components/tokens/SpaceVariantToken.d.ts +0 -5
  199. package/lib/components/tokens/SpaceVariantToken.js +0 -23
  200. package/lib/components/toolbars/AssignmentEditorToolbar.d.ts +0 -4
  201. package/lib/components/toolbars/AssignmentEditorToolbar.js +0 -18
  202. package/lib/components/toolbars/DocumentEditorToolbar.d.ts +0 -2
  203. package/lib/components/toolbars/DocumentEditorToolbar.js +0 -12
  204. package/lib/components/toolbars/NotebookEditorToolbar.d.ts +0 -29
  205. package/lib/components/toolbars/NotebookEditorToolbar.js +0 -30
  206. package/lib/examples/CellExample.d.ts +0 -6
  207. package/lib/examples/CellExample.js +0 -20
  208. package/lib/examples/NotebookExample.d.ts +0 -6
  209. package/lib/examples/NotebookExample.js +0 -19
  210. package/lib/examples/lexical-theme.css +0 -436
  211. package/lib/examples/notebooks/IPyWidgetsExample.ipynb.json +0 -101
  212. package/lib/examples/notebooks/IPyWidgetsExampleWithState.ipynb.json +0 -112
  213. package/lib/examples/notebooks/Lite.ipynb.json +0 -128
  214. package/lib/examples/notebooks/Matplotlib.ipynb.json +0 -137
  215. package/lib/examples/notebooks/NotebookExample1.ipynb.json +0 -126
  216. package/lib/examples/notebooks/NotebookExample2.ipynb.json +0 -48
  217. package/lib/examples/notebooks/NotebookOutputs.ipynb.json +0 -49
  218. package/lib/examples/notebooks/NotebookToCExample.ipynb.json +0 -102
  219. package/lib/examples/notebooks/PyGWalker.ipynb.json +0 -55
  220. package/lib/hooks/useCellOutputshot.d.ts +0 -4
  221. package/lib/hooks/useCellOutputshot.js +0 -25
  222. package/lib/hooks/useProjects.d.ts +0 -628
  223. package/lib/hooks/useProjects.js +0 -190
  224. package/lib/hooks/useRuntimes.d.ts +0 -5
  225. package/lib/hooks/useRuntimes.js +0 -34
  226. package/lib/mocks/jupyter/index.js +0 -5
  227. package/lib/mocks/models/CourseMock.d.ts +0 -6
  228. package/lib/mocks/models/CourseMock.js +0 -29
  229. package/lib/mocks/models/SpaceMock.d.ts +0 -6
  230. package/lib/mocks/models/SpaceMock.js +0 -25
  231. package/lib/models/Assignment.d.ts +0 -7
  232. package/lib/models/Assignment.js +0 -5
  233. package/lib/models/Cell.d.ts +0 -8
  234. package/lib/models/Cell.js +0 -5
  235. package/lib/models/CodeBlock.d.ts +0 -10
  236. package/lib/models/CodeBlock.js +0 -5
  237. package/lib/models/CodeSandboxSnapshot.d.ts +0 -92
  238. package/lib/models/CodeSandboxSnapshot.js +0 -13
  239. package/lib/models/CodeSandboxSnapshotDTO.d.ts +0 -173
  240. package/lib/models/CodeSandboxSnapshotDTO.js +0 -139
  241. package/lib/models/CodefeedBlocks.d.ts +0 -7
  242. package/lib/models/CodefeedBlocks.js +0 -5
  243. package/lib/models/Content.d.ts +0 -5
  244. package/lib/models/Content.js +0 -5
  245. package/lib/models/Course.d.ts +0 -17
  246. package/lib/models/Course.js +0 -5
  247. package/lib/models/Dataset.d.ts +0 -16
  248. package/lib/models/Dataset.js +0 -5
  249. package/lib/models/Document.d.ts +0 -8
  250. package/lib/models/Document.js +0 -5
  251. package/lib/models/Environment.d.ts +0 -86
  252. package/lib/models/Environment.js +0 -5
  253. package/lib/models/EnvironmentDTO.d.ts +0 -125
  254. package/lib/models/EnvironmentDTO.js +0 -88
  255. package/lib/models/Exercise.d.ts +0 -16
  256. package/lib/models/Exercise.js +0 -5
  257. package/lib/models/Item.d.ts +0 -20
  258. package/lib/models/Item.js +0 -5
  259. package/lib/models/ItemDTO.d.ts +0 -74
  260. package/lib/models/ItemDTO.js +0 -186
  261. package/lib/models/ItemType.d.ts +0 -2
  262. package/lib/models/ItemType.js +0 -5
  263. package/lib/models/Lesson.d.ts +0 -5
  264. package/lib/models/Lesson.js +0 -5
  265. package/lib/models/LexicalDTO.d.ts +0 -155
  266. package/lib/models/LexicalDTO.js +0 -157
  267. package/lib/models/Library.d.ts +0 -10
  268. package/lib/models/Library.js +0 -5
  269. package/lib/models/Notebook.d.ts +0 -11
  270. package/lib/models/Notebook.js +0 -5
  271. package/lib/models/NotebookDTO.d.ts +0 -96
  272. package/lib/models/NotebookDTO.js +0 -153
  273. package/lib/models/Page.d.ts +0 -41
  274. package/lib/models/Page.js +0 -25
  275. package/lib/models/PageTag.d.ts +0 -19
  276. package/lib/models/PageTag.js +0 -94
  277. package/lib/models/ProjectDTO.d.ts +0 -89
  278. package/lib/models/ProjectDTO.js +0 -131
  279. package/lib/models/Runtime.d.ts +0 -123
  280. package/lib/models/Runtime.js +0 -18
  281. package/lib/models/RuntimeDTO.d.ts +0 -191
  282. package/lib/models/RuntimeDTO.js +0 -204
  283. package/lib/models/Space.d.ts +0 -35
  284. package/lib/models/Space.js +0 -66
  285. package/lib/models/SpaceDTO.d.ts +0 -334
  286. package/lib/models/SpaceDTO.js +0 -244
  287. package/lib/models/SpaceItem.d.ts +0 -10
  288. package/lib/models/SpaceItem.js +0 -5
  289. package/lib/models/SpaceMember.d.ts +0 -6
  290. package/lib/models/SpaceMember.js +0 -5
  291. package/lib/models/StudentItem.d.ts +0 -21
  292. package/lib/models/StudentItem.js +0 -5
  293. package/lib/services/DatalayerServiceManager.d.ts +0 -22
  294. package/lib/services/DatalayerServiceManager.js +0 -69
  295. package/lib/services/index.d.ts +0 -4
  296. package/lib/services/index.js +0 -7
  297. package/lib/services/reconnectToRuntime.d.ts +0 -32
  298. package/lib/services/reconnectToRuntime.js +0 -59
  299. package/lib/state/substates/CellState.d.ts +0 -12
  300. package/lib/state/substates/CellState.js +0 -22
  301. package/lib/state/substates/DocumentState.d.ts +0 -10
  302. package/lib/state/substates/DocumentState.js +0 -14
  303. package/lib/state/substates/GradeState.d.ts +0 -10
  304. package/lib/state/substates/GradeState.js +0 -14
  305. package/lib/state/substates/JupyterLabState.d.ts +0 -16
  306. package/lib/state/substates/JupyterLabState.js +0 -17
  307. package/lib/state/substates/NbformatState.d.ts +0 -13
  308. package/lib/state/substates/NbformatState.js +0 -16
  309. package/lib/state/substates/RuntimesState.d.ts +0 -79
  310. package/lib/state/substates/RuntimesState.js +0 -180
  311. package/lib/state/substates/SpaceState.d.ts +0 -11
  312. package/lib/state/substates/SpaceState.js +0 -16
  313. package/lib/stateful/index.d.ts +0 -2
  314. package/lib/stateful/index.js +0 -6
  315. package/lib/stateful/jupyter/exec/Python.d.ts +0 -5
  316. package/lib/stateful/jupyter/exec/Python.js +0 -100
  317. package/lib/stateful/jupyter/exec/Snippets.d.ts +0 -105
  318. package/lib/stateful/jupyter/exec/Snippets.js +0 -101
  319. package/lib/stateful/jupyter/exec/index.d.ts +0 -2
  320. package/lib/stateful/jupyter/exec/index.js +0 -6
  321. package/lib/stateful/jupyter/index.d.ts +0 -2
  322. package/lib/stateful/jupyter/index.js +0 -6
  323. package/lib/stateful/jupyter/kernelsHandler.d.ts +0 -8
  324. package/lib/stateful/jupyter/kernelsHandler.js +0 -39
  325. package/lib/stateful/runtimes/actions.d.ts +0 -102
  326. package/lib/stateful/runtimes/actions.js +0 -249
  327. package/lib/stateful/runtimes/apis.d.ts +0 -273
  328. package/lib/stateful/runtimes/apis.js +0 -5
  329. package/lib/stateful/runtimes/index.d.ts +0 -5
  330. package/lib/stateful/runtimes/index.js +0 -9
  331. package/lib/stateful/runtimes/settings.d.ts +0 -15
  332. package/lib/stateful/runtimes/settings.js +0 -31
  333. package/lib/stateful/runtimes/snapshots.d.ts +0 -25
  334. package/lib/stateful/runtimes/snapshots.js +0 -150
  335. package/lib/stateful/runtimes/utils.d.ts +0 -7
  336. package/lib/stateful/runtimes/utils.js +0 -14
  337. package/lib/utils/Cells.d.ts +0 -2
  338. package/lib/utils/Cells.js +0 -28
  339. /package/lib/{mocks/jupyter/index.d.ts → cli-login.d.ts} +0 -0
@@ -32,28 +32,17 @@
32
32
  *
33
33
  * @module models
34
34
  */
35
- export * from './Assignment.js';
36
35
  export * from './Base.js';
37
- export * from './Cell.js';
38
- export * from './CodeBlock.js';
39
- export * from './CodefeedBlocks.js';
40
36
  export * from './Common.js';
41
37
  export * from './Contact.js';
42
38
  export * from './ContactEvent.js';
43
39
  export * from './ContactIAMProvider.js';
44
40
  export * from './ContactTags.js';
45
- export * from './Content.js';
46
- export * from './Course.js';
47
41
  export * from './Credits.js';
48
42
  export * from './CreditsDTO.js';
49
- export * from './Dataset.js';
50
43
  export * from './Datasource.js';
51
44
  export * from './Dean.js';
52
- export * from './Document.js';
53
- export * from './Environment.js';
54
- export * from './EnvironmentDTO.js';
55
45
  export * from './Errors.js';
56
- export * from './Exercise.js';
57
46
  export * from './GrowthKPI.js';
58
47
  export * from './IAM.js';
59
48
  export * from './IAMProviderLinked.js';
@@ -64,38 +53,19 @@ export * from './IAMToken.js';
64
53
  export * from './Inbound.js';
65
54
  export * from './Instructor.js';
66
55
  export * from './Invite.js';
67
- export * from './Item.js';
68
- export * from './ItemDTO.js';
69
- export * from './ItemType.js';
70
56
  export * from './LandingRoles.js';
71
- export * from './Lesson.js';
72
- export * from './LexicalDTO.js';
73
- export * from './Library.js';
74
57
  export * from './Member.js';
75
- export * from './Notebook.js';
76
- export * from './NotebookDTO.js';
77
58
  export * from './Organization.js';
78
59
  export * from './OrganizationMember.js';
79
60
  export * from './Outbound.js';
80
- export * from './Page.js';
81
- export * from './PageTag.js';
82
61
  export * from './Profile.js';
83
62
  export * from './Role.js';
84
63
  export * from './RolesOrganization.js';
85
64
  export * from './RolesPlatform.js';
86
65
  export * from './RolesTeam.js';
87
- export * from './Runtime.js';
88
- export * from './RuntimeDTO.js';
89
- export * from './CodeSandboxSnapshot.js';
90
- export * from './CodeSandboxSnapshotDTO.js';
91
66
  export * from './School.js';
92
67
  export * from './Secret.js';
93
- export * from './Space.js';
94
- export * from './SpaceDTO.js';
95
- export * from './SpaceItem.js';
96
- export * from './SpaceMember.js';
97
68
  export * from './Student.js';
98
- export * from './StudentItem.js';
99
69
  export * from './Survey.js';
100
70
  export * from './Team.js';
101
71
  export * from './TeamMember.js';
@@ -1 +1,2 @@
1
1
  export * from './Routes';
2
+ export * from './publicPaths';
@@ -3,3 +3,4 @@
3
3
  * Distributed under the terms of the Modified BSD License.
4
4
  */
5
5
  export * from './Routes.js';
6
+ export * from './publicPaths.js';
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Canonical, single source of truth for the public route prefixes that
3
+ * anonymous (logged-out) users are allowed to view.
4
+ *
5
+ * This list is shared across packages so the various auth gates stay in sync:
6
+ * - `useUser` (core) must NOT force a navigation to the login page on these.
7
+ * - The application router uses it to decide whether a route requires auth.
8
+ *
9
+ * Keep the entries as normalized prefixes (lowercase, no trailing slash).
10
+ */
11
+ export declare const PUBLIC_PATH_PREFIXES: readonly string[];
12
+ /**
13
+ * Normalize a pathname for prefix matching: strip the query string and hash,
14
+ * trim surrounding whitespace, lowercase, and remove any trailing slash.
15
+ * Always returns a leading-slash path (defaults to '/').
16
+ */
17
+ export declare const normalizePathname: (pathname: string) => string;
18
+ /**
19
+ * Whether the given pathname is under one of the public path prefixes and is
20
+ * therefore viewable by anonymous users without an authentication redirect.
21
+ */
22
+ export declare const isPublicPath: (pathname: string) => boolean;
23
+ export default isPublicPath;
@@ -0,0 +1,74 @@
1
+ /*
2
+ * Copyright (c) 2023-2025 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /**
6
+ * Canonical, single source of truth for the public route prefixes that
7
+ * anonymous (logged-out) users are allowed to view.
8
+ *
9
+ * This list is shared across packages so the various auth gates stay in sync:
10
+ * - `useUser` (core) must NOT force a navigation to the login page on these.
11
+ * - The application router uses it to decide whether a route requires auth.
12
+ *
13
+ * Keep the entries as normalized prefixes (lowercase, no trailing slash).
14
+ */
15
+ export const PUBLIC_PATH_PREFIXES = [
16
+ '/about',
17
+ '/agents',
18
+ '/agentspecs',
19
+ '/blog',
20
+ '/careers',
21
+ '/community',
22
+ '/compare',
23
+ '/connect',
24
+ '/contact',
25
+ '/dataliens',
26
+ '/docs',
27
+ '/events',
28
+ '/features',
29
+ '/integrations',
30
+ '/join/confirm/user',
31
+ '/library',
32
+ '/outbounds/contacts/unsubscribe',
33
+ '/outbounds/invites/pages',
34
+ '/outbounds/invites/unsubscribe',
35
+ '/outbounds/users/unsubscribe',
36
+ '/partners',
37
+ '/password',
38
+ '/pricing',
39
+ '/privacy',
40
+ '/public',
41
+ '/releases',
42
+ '/reports',
43
+ '/research',
44
+ '/search',
45
+ '/settings/agentspecs',
46
+ '/signup/confirm/user',
47
+ '/support',
48
+ '/team',
49
+ '/terms',
50
+ '/testimonials',
51
+ '/trust',
52
+ '/tutorials',
53
+ '/usecases',
54
+ '/use-cases',
55
+ ];
56
+ /**
57
+ * Normalize a pathname for prefix matching: strip the query string and hash,
58
+ * trim surrounding whitespace, lowercase, and remove any trailing slash.
59
+ * Always returns a leading-slash path (defaults to '/').
60
+ */
61
+ export const normalizePathname = (pathname) => {
62
+ const path = (pathname || '').split('?')[0]?.split('#')[0] || '/';
63
+ const normalized = path.trim().toLowerCase().replace(/\/+$/, '');
64
+ return normalized || '/';
65
+ };
66
+ /**
67
+ * Whether the given pathname is under one of the public path prefixes and is
68
+ * therefore viewable by anonymous users without an authentication redirect.
69
+ */
70
+ export const isPublicPath = (pathname) => {
71
+ const normalized = normalizePathname(pathname);
72
+ return PUBLIC_PATH_PREFIXES.some(prefix => normalized === prefix || normalized.startsWith(`${prefix}/`));
73
+ };
74
+ export default isPublicPath;
@@ -1,13 +1,7 @@
1
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
2
  import { iamStore } from './substates/IAMState';
6
- import { runtimesStore } from './substates/RuntimesState';
7
3
  import { layoutStore } from './substates/LayoutState';
8
- import { nbformatStore } from './substates/NbformatState';
9
4
  import { organizationStore } from './substates/OrganizationState';
10
- import { spaceStore } from './substates/SpaceState';
11
5
  import { surveysStore } from './substates/SurveysState';
12
6
  import { teamStore } from './substates/TeamState';
13
7
  export type DatalayerRunState = {
@@ -15,15 +9,9 @@ export type DatalayerRunState = {
15
9
  setVersion: (version: string) => void;
16
10
  isDev: boolean;
17
11
  core: typeof coreStore.getState;
18
- cell: typeof cellStore.getState;
19
- document: typeof documentStore.getState;
20
- grade: typeof gradeStore.getState;
21
12
  iam: typeof iamStore.getState;
22
- runtimes: typeof runtimesStore.getState;
23
13
  layout: typeof layoutStore.getState;
24
- nbformat: typeof nbformatStore.getState;
25
14
  organization: typeof organizationStore.getState;
26
- space: typeof spaceStore.getState;
27
15
  success: typeof surveysStore.getState;
28
16
  team: typeof teamStore.getState;
29
17
  };
@@ -5,15 +5,9 @@
5
5
  import { createStore } from 'zustand/vanilla';
6
6
  import { useStore } from 'zustand';
7
7
  import { coreStore } from './substates/CoreState.js';
8
- import { cellStore } from './substates/CellState.js';
9
- import { documentStore } from './substates/DocumentState.js';
10
- import { gradeStore } from './substates/GradeState.js';
11
8
  import { iamStore } from './substates/IAMState.js';
12
- import { runtimesStore } from './substates/RuntimesState.js';
13
9
  import { layoutStore } from './substates/LayoutState.js';
14
- import { nbformatStore } from './substates/NbformatState.js';
15
10
  import { organizationStore } from './substates/OrganizationState.js';
16
- import { spaceStore } from './substates/SpaceState.js';
17
11
  import { surveysStore } from './substates/SurveysState.js';
18
12
  import { teamStore } from './substates/TeamState.js';
19
13
  import { isDevDeployment } from '../utils/index.js';
@@ -26,15 +20,9 @@ export const runStore = createStore((set, get) => ({
26
20
  },
27
21
  isDev: isDevDeployment(),
28
22
  core: coreStore.getState,
29
- cell: cellStore.getState,
30
- document: documentStore.getState,
31
- grade: gradeStore.getState,
32
23
  iam: iamStore.getState,
33
- runtimes: runtimesStore.getState,
34
24
  layout: layoutStore.getState,
35
- nbformat: nbformatStore.getState,
36
25
  organization: organizationStore.getState,
37
- space: spaceStore.getState,
38
26
  success: surveysStore.getState,
39
27
  team: teamStore.getState,
40
28
  }));
@@ -1,5 +1,16 @@
1
1
  import { ReactPortal } from 'react';
2
- import { IAnyOrganization, IAnySpace, IAnyTeam, ISpaceItem } from '../../models';
2
+ import { IAnyOrganization, IAnyTeam } from '../../models';
3
+ /**
4
+ * Structural placeholder for a space in the layout state. The concrete space
5
+ * models live in the runtime/content package (`@datalayer/agent-runtimes`);
6
+ * the core layout store keeps them loosely typed to avoid depending on the
7
+ * content models.
8
+ */
9
+ type IAnySpace = Record<string, any>;
10
+ /**
11
+ * Structural placeholder for a space item in the layout state. See IAnySpace.
12
+ */
13
+ type ISpaceItem = Record<string, any>;
3
14
  export type BannerDisplayVariant = 'danger' | 'info' | 'success' | 'warning';
4
15
  export type LeftSidebarVariant = 'codefeed' | 'course' | 'empty' | 'guess-account' | 'guess-space' | 'guess-spaces' | 'organization' | 'organization-space' | 'organization-spaces' | 'organizations' | 'public' | 'unchanged' | 'user' | 'user-space' | 'user-spaces';
5
16
  export type BackdropDisplay = {
@@ -1,14 +1,7 @@
1
- export * from './CellState';
2
1
  export * from './CoreState';
3
2
  export * from './DatasourceState';
4
- export * from './DocumentState';
5
- export * from './GradeState';
6
3
  export * from './IAMState';
7
- export * from './JupyterLabState';
8
4
  export * from './LayoutState';
9
- export * from './NbformatState';
10
5
  export * from './OrganizationState';
11
- export * from './RuntimesState';
12
- export * from './SpaceState';
13
6
  export * from './SurveysState';
14
7
  export * from './TeamState';
@@ -2,17 +2,10 @@
2
2
  * Copyright (c) 2023-2025 Datalayer, Inc.
3
3
  * Distributed under the terms of the Modified BSD License.
4
4
  */
5
- export * from './CellState.js';
6
5
  export * from './CoreState.js';
7
6
  export * from './DatasourceState.js';
8
- export * from './DocumentState.js';
9
- export * from './GradeState.js';
10
7
  export * from './IAMState.js';
11
- export * from './JupyterLabState.js';
12
8
  export * from './LayoutState.js';
13
- export * from './NbformatState.js';
14
9
  export * from './OrganizationState.js';
15
- export * from './RuntimesState.js';
16
- export * from './SpaceState.js';
17
10
  export * from './SurveysState.js';
18
11
  export * from './TeamState.js';
@@ -22,7 +22,9 @@ export function formatFriendlyHandle(handle) {
22
22
  ? 'GitHub'
23
23
  : provider === 'google'
24
24
  ? 'Google'
25
- : providerRaw || 'External';
25
+ : provider === 'linkedin'
26
+ ? 'LinkedIn'
27
+ : providerRaw || 'External';
26
28
  const identifier = restParts.join(':').trim();
27
29
  if (!identifier) {
28
30
  return providerLabel;
@@ -3,7 +3,6 @@ export * from './Avatar';
3
3
  export * from './Browser';
4
4
  export * from './cli';
5
5
  export * from './Cookie';
6
- export * from './Cells';
7
6
  export * from './Date';
8
7
  export * from './Download';
9
8
  export * from './DownloadFile';
@@ -7,7 +7,6 @@ export * from './Avatar.js';
7
7
  export * from './Browser.js';
8
8
  export * from './cli/index.js';
9
9
  export * from './Cookie.js';
10
- export * from './Cells.js';
11
10
  export * from './Date.js';
12
11
  export * from './Download.js';
13
12
  export * from './DownloadFile.js';
@@ -1,10 +1,10 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  /*
3
3
  * Copyright (c) 2023-2025 Datalayer, Inc.
4
4
  * Distributed under the terms of the Modified BSD License.
5
5
  */
6
6
  import { useState, useEffect, useRef } from 'react';
7
- import { PageLayout, Button, IconButton, TextInput, Text, Label, RelativeTime, } from '@primer/react';
7
+ import { PageLayout, Button, IconButton, Spinner, TextInput, Text, Label, RelativeTime, } from '@primer/react';
8
8
  import { Blankslate, Dialog, PageHeader, Table, DataTable, } from '@primer/react/experimental';
9
9
  import { Box } from '@datalayer/primer-addons';
10
10
  import { EditIcon } from '@datalayer/icons-react';
@@ -20,6 +20,10 @@ const APIKeysTable = ({ apiKeysListRoute, showTitle = true, }) => {
20
20
  const [deletingAPIKey, setDeletingAPIKey] = useState(null);
21
21
  const [deleteNameConfirm, setDeleteNameConfirm] = useState('');
22
22
  const returnFocusRef = useRef(null);
23
+ const showInitialSpinner = apiKeys.length === 0
24
+ && (getAPIKeysQuery.isLoading
25
+ || getAPIKeysQuery.isFetching
26
+ || !Array.isArray(getAPIKeysQuery.data));
23
27
  useEffect(() => {
24
28
  if (getAPIKeysQuery.data) {
25
29
  const normalized = getAPIKeysQuery.data.filter((apiKey) => Boolean(apiKey));
@@ -57,7 +61,12 @@ const APIKeysTable = ({ apiKeysListRoute, showTitle = true, }) => {
57
61
  },
58
62
  });
59
63
  };
60
- return apiKeys.length === 0 ? (_jsxs(Blankslate, { border: true, spacious: true, children: [showTitle && _jsx(Blankslate.Heading, { children: "API Keys" }), _jsx(Blankslate.Description, { children: _jsx(Text, { sx: { textAlign: 'center' }, children: "No API Keys found." }) })] })) : (_jsxs(_Fragment, { children: [_jsxs(Table.Container, { children: [showTitle && (_jsxs(_Fragment, { children: [_jsx(Table.Title, { as: "h2", id: "api-keys", children: "API Keys" }), _jsx(Table.Subtitle, { as: "p", id: "api-keys-subtitle", children: "Your API keys." })] })), _jsx(DataTable, { "aria-labelledby": "api-keys", "aria-describedby": "api-keys-subtitle", data: apiKeys, columns: [
64
+ return apiKeys.length === 0 ? (_jsx(Blankslate, { border: true, spacious: true, children: showInitialSpinner ? (_jsx(Box, { sx: {
65
+ display: 'flex',
66
+ alignItems: 'center',
67
+ justifyContent: 'center',
68
+ minHeight: '40px',
69
+ }, children: _jsx(Spinner, {}) })) : (_jsxs(_Fragment, { children: [showTitle && _jsx(Blankslate.Heading, { children: "API Keys" }), _jsx(Blankslate.Description, { children: _jsx(Text, { sx: { textAlign: 'center' }, children: "No API Keys found." }) })] })) })) : (_jsxs(_Fragment, { children: [_jsxs(Table.Container, { children: [showTitle && (_jsxs(_Fragment, { children: [_jsx(Table.Title, { as: "h2", id: "api-keys", children: "API Keys" }), _jsx(Table.Subtitle, { as: "p", id: "api-keys-subtitle", children: "Your API keys." })] })), _jsx(DataTable, { "aria-labelledby": "api-keys", "aria-describedby": "api-keys-subtitle", data: apiKeys, columns: [
61
70
  {
62
71
  header: 'Type',
63
72
  field: 'variant',
@@ -2,7 +2,7 @@ export type DatasourceDetailProps = {
2
2
  /** Optional principal uid used to scope datasource reads/updates. */
3
3
  principalUid?: string;
4
4
  /** Optional principal kind used to scope datasource reads/updates. */
5
- principalKind?: 'user' | 'organization' | 'team';
5
+ principalKind?: 'personal' | 'organization' | 'team';
6
6
  };
7
7
  export declare const DatasourceDetail: ({ principalUid, principalKind, }?: DatasourceDetailProps) => import("react/jsx-runtime").JSX.Element;
8
8
  export default DatasourceDetail;
@@ -7,7 +7,7 @@ export type DatasourceNewProps = {
7
7
  /** Optional principal uid used to scope datasource creation. */
8
8
  principalUid?: string;
9
9
  /** Optional principal kind used to scope datasource creation. */
10
- principalKind?: 'user' | 'organization' | 'team';
10
+ principalKind?: 'personal' | 'organization' | 'team';
11
11
  /** Optional contextual principal summary rendered below the page intro. */
12
12
  accountPrincipal?: ReactNode;
13
13
  };
@@ -6,7 +6,7 @@ export type DatasourcesProps = {
6
6
  /** Optional principal uid used to scope datasource reads. */
7
7
  principalUid?: string;
8
8
  /** Optional principal kind used to scope datasource reads. */
9
- principalKind?: 'user' | 'organization' | 'team';
9
+ principalKind?: 'personal' | 'organization' | 'team';
10
10
  };
11
11
  export declare const Datasources: ({ newDatasourceRoute, datasourcesListRoute, principalUid, principalKind, }?: DatasourcesProps) => import("react/jsx-runtime").JSX.Element;
12
12
  export default Datasources;
@@ -1,10 +1,10 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  /*
3
3
  * Copyright (c) 2023-2025 Datalayer, Inc.
4
4
  * Distributed under the terms of the Modified BSD License.
5
5
  */
6
6
  import { useState, useEffect } from 'react';
7
- import { PageLayout, Button, IconButton, Text, Label, Heading, } from '@primer/react';
7
+ import { PageLayout, Button, IconButton, Spinner, Text, Label, Heading, } from '@primer/react';
8
8
  import { Blankslate, Table, DataTable } from '@primer/react/experimental';
9
9
  import { DatabaseIcon } from '@primer/octicons-react';
10
10
  import { Box } from '@datalayer/primer-addons';
@@ -15,12 +15,21 @@ const DatasourcesTable = ({ datasourcesListRoute, principalUid, principalKind, }
15
15
  const datasourcesQuery = useDatasources({ principalUid, principalKind });
16
16
  const navigate = useNavigate();
17
17
  const [datasources, setDatasources] = useState([]);
18
+ const showInitialSpinner = datasources.length === 0
19
+ && (datasourcesQuery.isLoading
20
+ || datasourcesQuery.isFetching
21
+ || !Array.isArray(datasourcesQuery.data));
18
22
  useEffect(() => {
19
23
  if (datasourcesQuery.data) {
20
24
  setDatasources(datasourcesQuery.data || []);
21
25
  }
22
26
  }, [datasourcesQuery.data]);
23
- return datasources.length === 0 ? (_jsxs(Blankslate, { border: true, spacious: true, children: [_jsx(Blankslate.Heading, { children: "Datasources" }), _jsx(Blankslate.Description, { children: _jsx(Text, { sx: { textAlign: 'center' }, children: "No Datasources found." }) })] })) : (_jsx(Table.Container, { children: _jsx(DataTable, { "aria-labelledby": "teams", "aria-describedby": "teams-subtitle", data: datasources, columns: [
27
+ return datasources.length === 0 ? (_jsx(Blankslate, { border: true, spacious: true, children: showInitialSpinner ? (_jsx(Box, { sx: {
28
+ display: 'flex',
29
+ alignItems: 'center',
30
+ justifyContent: 'center',
31
+ minHeight: '40px',
32
+ }, children: _jsx(Spinner, {}) })) : (_jsxs(_Fragment, { children: [_jsx(Blankslate.Heading, { children: "Datasources" }), _jsx(Blankslate.Description, { children: _jsx(Text, { sx: { textAlign: 'center' }, children: "No Datasources found." }) })] })) })) : (_jsx(Table.Container, { children: _jsx(DataTable, { "aria-labelledby": "teams", "aria-describedby": "teams-subtitle", data: datasources, columns: [
24
33
  // @ts-ignore
25
34
  {
26
35
  header: 'Type',
@@ -5,7 +5,7 @@
5
5
  * `{ handle, password }`, then calls `onSignIn(token, handle)` on
6
6
  * success so the caller can persist credentials as needed.
7
7
  *
8
- * @module views/signin
8
+ * @module views/iam
9
9
  */
10
10
  import React from 'react';
11
11
  export interface SignInSimpleProps {
@@ -25,19 +25,55 @@ export interface SignInSimpleProps {
25
25
  * `{ success: boolean; token?: string; message?: string }`.
26
26
  */
27
27
  loginUrl?: string;
28
+ /**
29
+ * Optional product/app name shown as heading.
30
+ */
31
+ name?: string;
28
32
  /**
29
33
  * Optional heading text. Defaults to `"Datalayer OTEL"`.
34
+ * @deprecated Use `name`.
30
35
  */
31
36
  title?: string;
32
37
  /**
33
38
  * Optional subtitle / description.
34
39
  */
35
40
  description?: string;
41
+ /**
42
+ * Optional icon element rendered next to the heading.
43
+ */
44
+ icon?: React.ReactNode;
36
45
  /**
37
46
  * Leading icon element rendered next to the title.
38
47
  * Defaults to `<TelescopeIcon size={24} />`.
48
+ * @deprecated Use `icon`.
39
49
  */
40
50
  leadingIcon?: React.ReactNode;
51
+ /**
52
+ * Show GitHub OAuth sign-in button.
53
+ */
54
+ github?: boolean;
55
+ /**
56
+ * Show Google OAuth sign-in button.
57
+ */
58
+ google?: boolean;
59
+ /**
60
+ * Show LinkedIn OAuth sign-in button.
61
+ */
62
+ linkedin?: boolean;
63
+ /**
64
+ * Show API key sign-in button.
65
+ */
66
+ apiKey?: boolean;
67
+ /**
68
+ * Show sign up button.
69
+ */
70
+ signUp?: boolean;
71
+ /**
72
+ * Optional target route to navigate to after social sign-in callback.
73
+ * - `undefined` keeps current behavior (use current route when not `/`).
74
+ * - `null`/empty disables forwarding any callback navigation target.
75
+ */
76
+ socialSignInNavigationTarget?: string | null;
41
77
  }
42
78
  export declare const SignInSimple: React.FC<SignInSimpleProps>;
43
79
  export default SignInSimple;