@datalayer/core 1.1.60 → 1.2.10
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.
- package/README.md +41 -18
- package/lib/api/DatalayerApi.d.ts +42 -1
- package/lib/api/DatalayerApi.js +90 -3
- package/lib/api/constants.d.ts +19 -1
- package/lib/api/constants.js +19 -1
- package/lib/api/contents/attachments.d.ts +9 -0
- package/lib/api/contents/attachments.js +39 -0
- package/lib/api/contents/bridges.d.ts +22 -0
- package/lib/api/contents/bridges.js +79 -0
- package/lib/api/contents/capabilities.d.ts +11 -0
- package/lib/api/contents/capabilities.js +21 -0
- package/lib/api/contents/cloudStorage.d.ts +31 -0
- package/lib/api/contents/cloudStorage.js +89 -0
- package/lib/api/contents/dataservers.d.ts +37 -0
- package/lib/api/contents/dataservers.js +121 -0
- package/lib/api/contents/datasets.d.ts +63 -0
- package/lib/api/contents/datasets.js +82 -0
- package/lib/api/contents/datasources.d.ts +70 -0
- package/lib/api/contents/datasources.js +149 -0
- package/lib/api/contents/generated.d.ts +1070 -0
- package/lib/api/contents/index.d.ts +16 -0
- package/lib/api/contents/index.js +20 -0
- package/lib/api/contents/mcp.d.ts +46 -0
- package/lib/api/contents/mcp.js +157 -0
- package/lib/api/contents/objects.d.ts +31 -0
- package/lib/api/contents/objects.js +88 -0
- package/lib/api/contents/operations.d.ts +3 -0
- package/lib/api/contents/operations.js +19 -0
- package/lib/api/contents/runtimeMounts.d.ts +40 -0
- package/lib/api/contents/runtimeMounts.js +59 -0
- package/lib/api/contents/sandboxUid.d.ts +21 -0
- package/lib/api/contents/sandboxUid.js +27 -0
- package/lib/api/contents/sources.d.ts +19 -0
- package/lib/api/contents/sources.js +119 -0
- package/lib/api/contents/sync.d.ts +18 -0
- package/lib/api/contents/sync.js +69 -0
- package/lib/api/contents/transfers.d.ts +38 -0
- package/lib/api/contents/transfers.js +123 -0
- package/lib/api/evals/client.d.ts +402 -0
- package/lib/api/evals/client.js +359 -0
- package/lib/api/evals/index.d.ts +10 -0
- package/lib/api/evals/index.js +18 -0
- package/lib/api/evals/request.d.ts +43 -0
- package/lib/api/evals/request.js +67 -0
- package/lib/api/evals/status.d.ts +27 -0
- package/lib/api/evals/status.js +122 -0
- package/lib/api/evals/types.d.ts +1335 -0
- package/lib/api/evals/types.js +5 -0
- package/lib/api/iam/connectedAgents.d.ts +68 -0
- package/lib/api/iam/connectedAgents.js +87 -0
- package/lib/api/iam/identityProviders.d.ts +76 -0
- package/lib/api/iam/identityProviders.js +187 -0
- package/lib/api/iam/index.d.ts +3 -1
- package/lib/api/iam/index.js +3 -1
- package/lib/api/iam/mcpAlertRules.d.ts +51 -0
- package/lib/api/iam/mcpAlertRules.js +198 -0
- package/lib/api/iam/mcpAuditSettings.d.ts +46 -0
- package/lib/api/iam/mcpAuditSettings.js +120 -0
- package/lib/api/iam/mcpPolicy.d.ts +181 -0
- package/lib/api/iam/mcpPolicy.js +168 -0
- package/lib/api/iam/organizationTeams.d.ts +13 -0
- package/lib/api/iam/organizationTeams.js +43 -0
- package/lib/api/iam/profile.d.ts +17 -1
- package/lib/api/iam/profile.js +27 -0
- package/lib/api/iam/scimTokens.d.ts +79 -0
- package/lib/api/iam/scimTokens.js +141 -0
- package/lib/api/iam/secrets.js +9 -21
- package/lib/api/iam/serviceAgents.d.ts +68 -0
- package/lib/api/iam/serviceAgents.js +119 -0
- package/lib/api/iam/trials.d.ts +38 -0
- package/lib/api/iam/trials.js +66 -0
- package/lib/api/index.d.ts +8 -1
- package/lib/api/index.js +7 -1
- package/lib/api/mcp/activity.d.ts +37 -0
- package/lib/api/mcp/activity.js +26 -0
- package/lib/api/mcp/alerts.d.ts +25 -0
- package/lib/api/mcp/alerts.js +51 -0
- package/lib/api/mcp/audit.d.ts +29 -0
- package/lib/api/mcp/audit.js +55 -0
- package/lib/api/mcp/bindings.d.ts +18 -0
- package/lib/api/mcp/bindings.js +42 -0
- package/lib/api/mcp/forwarding.d.ts +25 -0
- package/lib/api/mcp/forwarding.js +46 -0
- package/lib/api/mcp/gateway.d.ts +16 -0
- package/lib/api/mcp/gateway.js +70 -0
- package/lib/api/mcp/generated.d.ts +22 -0
- package/lib/api/mcp/generated.js +213 -0
- package/lib/api/mcp/index.d.ts +17 -0
- package/lib/api/mcp/index.js +25 -0
- package/lib/api/mcp/observability.d.ts +141 -0
- package/lib/api/mcp/observability.js +267 -0
- package/lib/api/mcp/operations.d.ts +83 -0
- package/lib/api/mcp/operations.js +50 -0
- package/lib/api/mcp/organizations.d.ts +102 -0
- package/lib/api/mcp/organizations.js +46 -0
- package/lib/api/mcp/policy.d.ts +9 -0
- package/lib/api/mcp/policy.js +23 -0
- package/lib/api/mcp/tasks.d.ts +49 -0
- package/lib/api/mcp/tasks.js +147 -0
- package/lib/api/orchestration/client.d.ts +53 -0
- package/lib/api/orchestration/client.js +105 -0
- package/lib/api/orchestration/events.d.ts +88 -0
- package/lib/api/orchestration/events.js +245 -0
- package/lib/api/orchestration/generated.d.ts +693 -0
- package/lib/api/orchestration/generated.js +687 -0
- package/lib/api/orchestration/index.d.ts +30 -0
- package/lib/api/orchestration/index.js +34 -0
- package/lib/api/orchestration/lifecycle.d.ts +39 -0
- package/lib/api/orchestration/lifecycle.js +57 -0
- package/lib/api/orchestration/measures.d.ts +55 -0
- package/lib/api/orchestration/measures.js +99 -0
- package/lib/api/otel/dashboards.d.ts +56 -0
- package/lib/api/otel/dashboards.js +50 -0
- package/lib/api/otel/index.d.ts +1 -0
- package/lib/api/otel/index.js +1 -0
- package/lib/api/otel/metrics.d.ts +16 -0
- package/lib/api/otel/metrics.js +15 -0
- package/lib/api/scheduler/client.d.ts +32 -0
- package/lib/api/scheduler/client.js +42 -0
- package/lib/api/scheduler/index.d.ts +8 -0
- package/lib/api/scheduler/index.js +16 -0
- package/lib/api/scheduler/request.d.ts +28 -0
- package/lib/api/scheduler/request.js +50 -0
- package/lib/api/scheduler/types.d.ts +88 -0
- package/lib/api/scheduler/types.js +5 -0
- package/lib/api/spacer/comments.d.ts +97 -0
- package/lib/api/spacer/comments.js +45 -0
- package/lib/api/spacer/index.d.ts +9 -0
- package/lib/api/spacer/index.js +17 -0
- package/lib/api/spacer/notebooks.d.ts +33 -0
- package/lib/api/spacer/notebooks.js +39 -0
- package/lib/api/spacer/request.d.ts +25 -0
- package/lib/api/spacer/request.js +46 -0
- package/lib/api/spacer/spaces.d.ts +68 -0
- package/lib/api/spacer/spaces.js +45 -0
- package/lib/api/utils/validation.d.ts +4 -4
- package/lib/api/utils/validation.js +10 -7
- package/lib/client/auth/index.js +0 -5
- package/lib/client/auth/storage.js +0 -5
- package/lib/client/auth/strategies.js +0 -5
- package/lib/client/base.d.ts +6 -0
- package/lib/client/base.js +8 -0
- package/lib/client/constants.d.ts +1 -0
- package/lib/client/constants.js +1 -0
- package/lib/client/index.d.ts +0 -10
- package/lib/client/index.js +2 -2
- package/lib/client/mixins/ContentsMixin.d.ts +71 -0
- package/lib/client/mixins/ContentsMixin.js +157 -0
- package/lib/client/mixins/IAMMixin.d.ts +0 -31
- package/lib/client/mixins/IAMMixin.js +0 -58
- package/lib/components/animation/AnimatedText.d.ts +2 -44
- package/lib/components/animation/AnimatedText.js +6 -126
- package/lib/components/anonymous/AnonymousKeyExpired.d.ts +56 -0
- package/lib/components/anonymous/AnonymousKeyExpired.js +96 -0
- package/lib/components/anonymous/AnonymousKeyTimer.d.ts +63 -0
- package/lib/components/anonymous/AnonymousKeyTimer.js +140 -0
- package/lib/components/anonymous/index.d.ts +7 -0
- package/lib/components/anonymous/index.js +15 -0
- package/lib/components/auth/SigInAPIKey.d.ts +1 -0
- package/lib/components/auth/SigInAPIKey.js +0 -6
- package/lib/components/auth/SignIn.d.ts +1 -0
- package/lib/components/auth/SignIn.js +0 -4
- package/lib/components/auth/SignIn.stories.d.ts +2 -2
- package/lib/components/avatars/BoringAvatar.d.ts +1 -1
- package/lib/components/avatars/BoringAvatar.stories.d.ts +1 -1
- package/lib/components/avatars/DLAvatar.d.ts +1 -1
- package/lib/components/avatars/DLAvatar.js +0 -4
- package/lib/components/avatars/UserAvatar.d.ts +16 -1
- package/lib/components/avatars/UserAvatar.js +15 -13
- package/lib/components/avatars/UserProfileAvatar.d.ts +1 -1
- package/lib/components/banners/NoAutomationBanner.d.ts +1 -1
- package/lib/components/billing/BillingEntitySelect.d.ts +16 -0
- package/lib/components/billing/BillingEntitySelect.js +49 -27
- package/lib/components/billing/eligibility.d.ts +22 -0
- package/lib/components/billing/eligibility.js +27 -0
- package/lib/components/billing/index.d.ts +1 -0
- package/lib/components/billing/index.js +1 -4
- package/lib/components/buttons/DownloadCSVButton.d.ts +1 -1
- package/lib/components/buttons/DownloadJsonButton.d.ts +1 -1
- package/lib/components/buttons/LongActionButton.d.ts +1 -0
- package/lib/components/buttons/LongActionButton.js +0 -4
- package/lib/components/buttons/UploadButton.d.ts +1 -0
- package/lib/components/buttons/UploadButton.js +0 -4
- package/lib/components/checkout/StripeCheckout.d.ts +1 -1
- package/lib/components/collaboration/LiveEditorCollaborators.d.ts +36 -0
- package/lib/components/collaboration/LiveEditorCollaborators.js +88 -53
- package/lib/components/collaboration/index.js +0 -4
- package/lib/components/confetti/ConfettiSuccess.d.ts +1 -1
- package/lib/components/contents/ContentSourceCard.d.ts +8 -0
- package/lib/components/contents/ContentSourceCard.js +23 -0
- package/lib/components/contents/HomeFolderObjectsBrowser.d.ts +10 -0
- package/lib/components/contents/HomeFolderObjectsBrowser.js +148 -0
- package/lib/components/contents/index.d.ts +2 -0
- package/lib/components/contents/index.js +6 -0
- package/lib/components/context/OrganizationSelect.d.ts +1 -1
- package/lib/components/display/AvatarSkeleton.d.ts +1 -1
- package/lib/components/display/BusyDots.d.ts +1 -1
- package/lib/components/display/CenteredSpinner.d.ts +1 -1
- package/lib/components/display/CodePreview.d.ts +1 -1
- package/lib/components/display/DatalayerBox.d.ts +7 -3
- package/lib/components/display/DatalayerBox.js +7 -7
- package/lib/components/display/HorizontalCenter.d.ts +1 -1
- package/lib/components/display/JupyterDialog.d.ts +1 -0
- package/lib/components/display/JupyterDialog.js +1 -7
- package/lib/components/display/Markdown.d.ts +1 -0
- package/lib/components/display/NavLink.js +3 -2
- package/lib/components/display/NotebookSkeleton.d.ts +1 -1
- package/lib/components/display/Placeholder.d.ts +1 -1
- package/lib/components/display/ToTopBranded.d.ts +1 -1
- package/lib/components/echarts/EChartsReact.d.ts +1 -1
- package/lib/components/flashes/FlashClosable.d.ts +1 -0
- package/lib/components/flashes/FlashClosable.js +0 -4
- package/lib/components/flashes/FlashGuest.d.ts +1 -1
- package/lib/components/flashes/FlashSurveys.d.ts +1 -1
- package/lib/components/flashes/FlashUnauthorized.d.ts +1 -0
- package/lib/components/flashes/FlashUnauthorized.js +0 -6
- package/lib/components/flashes/surveys/Survey2025_1.d.ts +1 -1
- package/lib/components/iam/ExternalTokenSilentLogin.d.ts +1 -1
- package/lib/components/index.d.ts +2 -0
- package/lib/components/index.js +2 -0
- package/lib/components/labels/StatusLabels.d.ts +2 -9
- package/lib/components/labels/StatusLabels.js +2 -26
- package/lib/components/labels/VisibilityLabel.d.ts +1 -1
- package/lib/components/landings/StepBlock.d.ts +1 -1
- package/lib/components/mcp/ClientBadge.d.ts +41 -0
- package/lib/components/mcp/ClientBadge.js +33 -0
- package/lib/components/mcp/McpErrorBlankslate.d.ts +21 -0
- package/lib/components/mcp/McpErrorBlankslate.js +17 -0
- package/lib/components/mcp/ScopeList.d.ts +28 -0
- package/lib/components/mcp/ScopeList.js +14 -0
- package/lib/components/mcp/index.d.ts +10 -0
- package/lib/components/mcp/index.js +18 -0
- package/lib/components/navbar/NavigationVisbilityObserver.d.ts +2 -1
- package/lib/components/navbar/SubdomainNavBar.d.ts +10 -5
- package/lib/components/navbar/SubdomainNavBar.js +2 -1
- package/lib/components/notebooks/JupyterNotebook.d.ts +1 -1
- package/lib/components/notebooks/JupyterNotebookToolbar.d.ts +1 -1
- package/lib/components/principal/PrincipalAppearance.d.ts +22 -42
- package/lib/components/principal/PrincipalAppearance.js +232 -182
- package/lib/components/principal/PrincipalAvatar.d.ts +9 -1
- package/lib/components/principal/PrincipalAvatar.js +18 -10
- package/lib/components/principal/PrincipalBadge.d.ts +1 -1
- package/lib/components/principal/PrincipalBanner.d.ts +1 -1
- package/lib/components/principal/PrincipalDetailsOverlay.d.ts +38 -1
- package/lib/components/principal/PrincipalDetailsOverlay.js +64 -33
- package/lib/components/principal/PrincipalHoverCard.d.ts +31 -0
- package/lib/components/principal/PrincipalHoverCard.js +52 -0
- package/lib/components/principal/PrincipalSwitcherMenu.d.ts +1 -0
- package/lib/components/principal/PrincipalSwitcherMenu.js +5 -14
- package/lib/components/principal/index.d.ts +2 -1
- package/lib/components/principal/index.js +2 -1
- package/lib/components/progress/ConsumptionBar.d.ts +1 -0
- package/lib/components/progress/ConsumptionBar.js +0 -4
- package/lib/components/progress/ProgressRing.d.ts +1 -0
- package/lib/components/progress/SpinnerBar.d.ts +1 -1
- package/lib/components/progress/Timer.d.ts +1 -0
- package/lib/components/progress/Timer.js +0 -4
- package/lib/components/screencapture/Screencapture.js +46 -3
- package/lib/components/screencapture/ScreencaptureButton.d.ts +1 -1
- package/lib/components/sharing/ShareAccessComponent.d.ts +58 -3
- package/lib/components/sharing/ShareAccessComponent.js +143 -98
- package/lib/components/sharing/SharingEditor.d.ts +21 -0
- package/lib/components/sharing/SharingEditor.js +9 -28
- package/lib/components/sharing/index.d.ts +1 -0
- package/lib/components/sharing/index.js +1 -0
- package/lib/components/sharing/sandboxSharing.d.ts +26 -0
- package/lib/components/sharing/sandboxSharing.js +41 -0
- package/lib/components/spaces/SpaceDetailsOverlay.d.ts +39 -0
- package/lib/components/spaces/SpaceDetailsOverlay.js +80 -0
- package/lib/components/spaces/SpaceDisplay.d.ts +38 -0
- package/lib/components/spaces/SpaceDisplay.js +92 -0
- package/lib/components/spaces/index.d.ts +4 -0
- package/lib/components/spaces/index.js +7 -0
- package/lib/components/spaces/spaceDisplayModel.d.ts +93 -0
- package/lib/components/spaces/spaceDisplayModel.js +170 -0
- package/lib/components/sparklines/Sparklines.js +3 -4
- package/lib/components/sparklines/index.js +0 -4
- package/lib/components/storage/ContentsBrowser.d.ts +25 -1
- package/lib/components/storage/ContentsBrowser.js +145 -52
- package/lib/components/storage/ContentsBrowserMock.d.ts +3 -0
- package/lib/components/storage/ContentsBrowserMock.js +75 -0
- package/lib/components/storage/ContentsItems.d.ts +2 -1
- package/lib/components/storage/ContentsItems.js +0 -4
- package/lib/components/storage/ContentsTable.d.ts +50 -0
- package/lib/components/storage/ContentsTable.js +134 -0
- package/lib/components/storage/HomeFolderDrive.d.ts +71 -0
- package/lib/components/storage/HomeFolderDrive.js +248 -0
- package/lib/components/storage/index.d.ts +2 -0
- package/lib/components/storage/index.js +2 -0
- package/lib/components/students/StudentItemStatus.d.ts +1 -1
- package/lib/components/students/StudentResultCircle.d.ts +1 -1
- package/lib/components/subnav/SubNav.d.ts +5 -5
- package/lib/components/subnav/SubNav.js +11 -9
- package/lib/components/tables/DataTable.d.ts +1 -1
- package/lib/components/text-reveal/TextRevealAnimation.d.ts +2 -2
- package/lib/components/text-reveal/useTextRevealAnimationLines.d.ts +1 -1
- package/lib/components/time/LiveRelativeTime.d.ts +1 -0
- package/lib/components/time/LiveRelativeTime.js +0 -8
- package/lib/components/time/index.js +0 -4
- package/lib/components/timeline/Timeline.d.ts +1 -1
- package/lib/components/timeline/index.js +0 -4
- package/lib/components/users/PeerIndicator.d.ts +1 -0
- package/lib/components/users/PeerIndicator.js +0 -4
- package/lib/config/Configuration.d.ts +15 -17
- package/lib/config/Configuration.js +7 -0
- package/lib/hooks/cacheConverters.d.ts +0 -7
- package/lib/hooks/cacheConverters.js +0 -25
- package/lib/hooks/index.d.ts +3 -0
- package/lib/hooks/index.js +3 -0
- package/lib/hooks/layouts/LayoutBackdrop.d.ts +1 -1
- package/lib/hooks/layouts/LayoutScreencapture.d.ts +1 -1
- package/lib/hooks/useBackdrop.d.ts +1 -1
- package/lib/hooks/useBackdropJupyterLab.d.ts +3 -2
- package/lib/hooks/useBackdropJupyterLab.js +0 -4
- package/lib/hooks/useBillingEntityStore.js +3 -0
- package/lib/hooks/useCache.d.ts +478 -130
- package/lib/hooks/useCache.js +1580 -676
- package/lib/hooks/useContainsFocus.d.ts +1 -1
- package/lib/hooks/useContents.d.ts +334 -0
- package/lib/hooks/useContents.js +1033 -0
- package/lib/hooks/useFocusTrap.d.ts +4 -4
- package/lib/hooks/useFocusTrap.js +1 -1
- package/lib/hooks/useMcp.d.ts +315 -0
- package/lib/hooks/useMcp.js +891 -0
- package/lib/hooks/useMobile.js +0 -5
- package/lib/hooks/useNavigate.d.ts +41 -3
- package/lib/hooks/useNavigate.js +106 -52
- package/lib/hooks/usePrincipalCacheStore.js +3 -0
- package/lib/hooks/usePrincipalStore.js +3 -0
- package/lib/hooks/useProjectStore.d.ts +3 -3
- package/lib/hooks/useProjectStore.js +4 -4
- package/lib/hooks/useRef.d.ts +1 -1
- package/lib/hooks/useRef.js +3 -0
- package/lib/hooks/useScreencapture.d.ts +2 -1
- package/lib/hooks/useScreencapture.js +0 -4
- package/lib/hooks/useSpaceCacheStore.d.ts +50 -0
- package/lib/hooks/useSpaceCacheStore.js +85 -0
- package/lib/hooks/useToast.js +0 -4
- package/lib/hooks/useVisibilityObserver.d.ts +1 -1
- package/lib/index.d.ts +4 -1
- package/lib/index.js +3 -1
- package/lib/mocks/components/FlashMock.d.ts +1 -1
- package/lib/mocks/views/ActionMenuMock.d.ts +1 -1
- package/lib/mocks/views/ChartMock.d.ts +1 -1
- package/lib/mocks/views/DashboardMock.d.ts +1 -1
- package/lib/mocks/views/FormMock.d.ts +1 -1
- package/lib/mocks/views/TableMock.d.ts +1 -1
- package/lib/mocks/views/WipMock.d.ts +1 -1
- package/lib/models/Credits.d.ts +16 -0
- package/lib/models/Credits.js +22 -0
- package/lib/models/CreditsDTO.d.ts +6 -5
- package/lib/models/CreditsDTO.js +7 -5
- package/lib/models/McpAuditEvent.d.ts +52 -0
- package/lib/models/McpAuditEvent.js +5 -0
- package/lib/models/McpBinding.d.ts +57 -0
- package/lib/models/McpBinding.js +5 -0
- package/lib/models/McpPolicy.d.ts +77 -0
- package/lib/models/McpPolicy.js +5 -0
- package/lib/models/McpTask.d.ts +94 -0
- package/lib/models/McpTask.js +7 -0
- package/lib/models/Organization.d.ts +69 -0
- package/lib/models/Organization.js +96 -0
- package/lib/models/Secret.d.ts +1 -2
- package/lib/models/Secret.js +2 -18
- package/lib/models/StartedBy.d.ts +91 -0
- package/lib/models/StartedBy.js +117 -0
- package/lib/models/Team.d.ts +2 -0
- package/lib/models/Team.js +2 -0
- package/lib/models/User.d.ts +4 -0
- package/lib/models/User.js +3 -0
- package/lib/models/UserDTO.js +4 -2
- package/lib/models/UserSettings.d.ts +13 -0
- package/lib/models/UserSettings.js +9 -0
- package/lib/models/contents/__fixtures__/solr-codec.json +57 -0
- package/lib/models/contents/__fixtures__/v1-contracts.json +194 -0
- package/lib/models/contents/fieldCase.d.ts +8 -0
- package/lib/models/contents/fieldCase.js +37 -0
- package/lib/models/contents/index.d.ts +2 -0
- package/lib/models/contents/index.js +6 -0
- package/lib/models/contents/permissions.d.ts +16 -0
- package/lib/models/contents/permissions.js +34 -0
- package/lib/models/index.d.ts +5 -1
- package/lib/models/index.js +5 -1
- package/lib/navigation/components.js +2 -3
- package/lib/routes/publicPaths.js +4 -0
- package/lib/state/index.d.ts +1 -0
- package/lib/state/index.js +1 -0
- package/lib/state/sessionEnd.d.ts +55 -0
- package/lib/state/sessionEnd.js +162 -0
- package/lib/state/substates/CoreState.d.ts +15 -7
- package/lib/state/substates/CoreState.js +21 -17
- package/lib/state/substates/IAMState.d.ts +1 -1
- package/lib/state/substates/IAMState.js +12 -5
- package/lib/state/substates/LayoutState.js +12 -0
- package/lib/state/substates/ProfileState.d.ts +1 -0
- package/lib/state/substates/ProfileState.js +1 -4
- package/lib/state/substates/index.d.ts +0 -1
- package/lib/state/substates/index.js +0 -1
- package/lib/utils/Jwt.d.ts +26 -0
- package/lib/utils/Jwt.js +37 -0
- package/lib/utils/Lazy.d.ts +20 -0
- package/lib/utils/Lazy.js +32 -6
- package/lib/utils/Screencapture.js +3 -0
- package/lib/utils/WithSuspense.d.ts +11 -1
- package/lib/utils/WithSuspense.js +11 -1
- package/lib/views/api-keys/APIKeyEdit.d.ts +1 -1
- package/lib/views/api-keys/APIKeyNew.d.ts +1 -1
- package/lib/views/api-keys/APIKeys.d.ts +1 -1
- package/lib/views/api-keys/APIKeys.js +30 -4
- package/lib/views/api-keys/APIKeysStandalone.d.ts +5 -1
- package/lib/views/api-keys/APIKeysStandalone.js +2 -2
- package/lib/views/datasources/DatasourceDetail.d.ts +12 -5
- package/lib/views/datasources/DatasourceDetail.js +80 -110
- package/lib/views/datasources/DatasourceNew.d.ts +14 -8
- package/lib/views/datasources/DatasourceNew.js +129 -118
- package/lib/views/datasources/Datasources.d.ts +39 -7
- package/lib/views/datasources/Datasources.js +95 -40
- package/lib/views/datasources/DatasourcesMock.d.ts +3 -0
- package/lib/views/datasources/DatasourcesMock.js +57 -0
- package/lib/views/iam/SignInSimple.d.ts +12 -0
- package/lib/views/iam/SignInSimple.js +4 -4
- package/lib/views/index.d.ts +1 -0
- package/lib/views/index.js +1 -0
- package/lib/views/mcp/AdmittedClients.d.ts +44 -0
- package/lib/views/mcp/AdmittedClients.js +59 -0
- package/lib/views/mcp/AlertDestinations.d.ts +34 -0
- package/lib/views/mcp/AlertDestinations.js +75 -0
- package/lib/views/mcp/AlertRules.d.ts +32 -0
- package/lib/views/mcp/AlertRules.js +245 -0
- package/lib/views/mcp/ApprovalQueue.d.ts +66 -0
- package/lib/views/mcp/ApprovalQueue.js +95 -0
- package/lib/views/mcp/AuditLog.d.ts +42 -0
- package/lib/views/mcp/AuditLog.js +144 -0
- package/lib/views/mcp/ConnectedAgents.d.ts +34 -0
- package/lib/views/mcp/ConnectedAgents.js +135 -0
- package/lib/views/mcp/EnterpriseConsole.d.ts +74 -0
- package/lib/views/mcp/EnterpriseConsole.js +195 -0
- package/lib/views/mcp/IdentityProviders.d.ts +33 -0
- package/lib/views/mcp/IdentityProviders.js +299 -0
- package/lib/views/mcp/McpDashboard.d.ts +50 -0
- package/lib/views/mcp/McpDashboard.js +430 -0
- package/lib/views/mcp/McpHome.d.ts +92 -0
- package/lib/views/mcp/McpHome.js +153 -0
- package/lib/views/mcp/McpObservability.d.ts +79 -0
- package/lib/views/mcp/McpObservability.js +236 -0
- package/lib/views/mcp/NotebookRuns.d.ts +39 -0
- package/lib/views/mcp/NotebookRuns.js +44 -0
- package/lib/views/mcp/OrganizationPolicy.d.ts +45 -0
- package/lib/views/mcp/OrganizationPolicy.js +108 -0
- package/lib/views/mcp/OrganizationUsage.d.ts +69 -0
- package/lib/views/mcp/OrganizationUsage.js +113 -0
- package/lib/views/mcp/PersonalPolicy.d.ts +54 -0
- package/lib/views/mcp/PersonalPolicy.js +126 -0
- package/lib/views/mcp/Policies.d.ts +53 -0
- package/lib/views/mcp/Policies.js +210 -0
- package/lib/views/mcp/PolicyForm.d.ts +83 -0
- package/lib/views/mcp/PolicyForm.js +113 -0
- package/lib/views/mcp/PolicyHistory.d.ts +58 -0
- package/lib/views/mcp/PolicyHistory.js +75 -0
- package/lib/views/mcp/RunDetail.d.ts +87 -0
- package/lib/views/mcp/RunDetail.js +186 -0
- package/lib/views/mcp/ScimProvisioning.d.ts +54 -0
- package/lib/views/mcp/ScimProvisioning.js +173 -0
- package/lib/views/mcp/ServiceAgents.d.ts +46 -0
- package/lib/views/mcp/ServiceAgents.js +194 -0
- package/lib/views/mcp/TeamPolicies.d.ts +33 -0
- package/lib/views/mcp/TeamPolicies.js +159 -0
- package/lib/views/mcp/ToolAccess.d.ts +60 -0
- package/lib/views/mcp/ToolAccess.js +101 -0
- package/lib/views/mcp/TraceTimeline.d.ts +81 -0
- package/lib/views/mcp/TraceTimeline.js +132 -0
- package/lib/views/mcp/format.d.ts +25 -0
- package/lib/views/mcp/format.js +77 -0
- package/lib/views/mcp/index.d.ts +34 -0
- package/lib/views/mcp/index.js +42 -0
- package/lib/views/mcp/types.d.ts +66 -0
- package/lib/views/mcp/types.js +5 -0
- package/lib/views/otel/simpleAuthStore.js +3 -0
- package/lib/views/secrets/SecretEdit.d.ts +5 -1
- package/lib/views/secrets/SecretEdit.js +5 -4
- package/lib/views/secrets/SecretNew.d.ts +11 -1
- package/lib/views/secrets/SecretNew.js +7 -3
- package/lib/views/secrets/Secrets.d.ts +12 -1
- package/lib/views/secrets/Secrets.js +2 -2
- package/package.json +269 -260
- package/scripts/generate-contents-types.py +169 -0
- package/scripts/generate-mcp-types.py +233 -0
- package/scripts/generate-orchestration-types.py +920 -0
- package/lib/api/iam/datasources.d.ts +0 -86
- package/lib/api/iam/datasources.js +0 -185
- package/lib/components/toolbars/index.d.ts +0 -1
- package/lib/models/Datasource.d.ts +0 -181
- package/lib/models/Datasource.js +0 -154
- package/lib/state/substates/DatasourceState.d.ts +0 -11
- package/lib/state/substates/DatasourceState.js +0 -16
- /package/lib/{components/toolbars/index.js → api/contents/generated.js} +0 -0
package/lib/models/Secret.js
CHANGED
|
@@ -55,22 +55,6 @@ export class SecretDTO {
|
|
|
55
55
|
throw new Error(`Secret ${this._data.name_s} has been deleted and no longer exists`);
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
_decodeValue(encodedValue) {
|
|
59
|
-
try {
|
|
60
|
-
if (typeof Buffer !== 'undefined') {
|
|
61
|
-
// Node.js environment
|
|
62
|
-
return Buffer.from(encodedValue, 'base64').toString();
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
// Browser environment
|
|
66
|
-
return atob(encodedValue);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
catch (error) {
|
|
70
|
-
console.error('Failed to decode secret value:', error);
|
|
71
|
-
return encodedValue; // Return as-is if decode fails
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
58
|
// ========================================================================
|
|
75
59
|
// Properties
|
|
76
60
|
// ========================================================================
|
|
@@ -90,10 +74,10 @@ export class SecretDTO {
|
|
|
90
74
|
this._checkDeleted();
|
|
91
75
|
return this._data.description_t;
|
|
92
76
|
}
|
|
93
|
-
/**
|
|
77
|
+
/** The value as its owner wrote it (PLAN_ENVS.md E3-05). */
|
|
94
78
|
get value() {
|
|
95
79
|
this._checkDeleted();
|
|
96
|
-
return this.
|
|
80
|
+
return this._data.value_s;
|
|
97
81
|
}
|
|
98
82
|
// ========================================================================
|
|
99
83
|
// Action Methods
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Who started a runtime: a person, one of their agents, or a service agent.
|
|
3
|
+
*
|
|
4
|
+
* The reservation has carried this since agents could make one — IAM writes
|
|
5
|
+
* `client_id_s` and `agent_uid_s` onto the usage record's metadata, and
|
|
6
|
+
* `useUsages` already hands the whole map to the views. Nothing displayed
|
|
7
|
+
* it, so a person looking at their running runtimes could not tell which of
|
|
8
|
+
* them they had started and which an agent had, on a platform whose premise
|
|
9
|
+
* is that agents start things on your behalf.
|
|
10
|
+
*
|
|
11
|
+
* The distinction that matters is **agent versus service agent**, not
|
|
12
|
+
* "automated versus not". A delegated agent runs as you, spends your
|
|
13
|
+
* credits, and stops when you disconnect it. A service agent is the
|
|
14
|
+
* organization's own principal with its own key: it keeps running when the
|
|
15
|
+
* person who set it up leaves, and it is the row somebody has to go and turn
|
|
16
|
+
* off. Told apart, one is "I did that yesterday" and the other is "who owns
|
|
17
|
+
* this".
|
|
18
|
+
*
|
|
19
|
+
* @module models/StartedBy
|
|
20
|
+
*/
|
|
21
|
+
/** The Solr field names IAM writes the dimensions on. */
|
|
22
|
+
export declare const CLIENT_ID_KEY = "client_id_s";
|
|
23
|
+
export declare const AGENT_UID_KEY = "agent_uid_s";
|
|
24
|
+
export type StartedByKind = 'person' | 'agent' | 'service-agent';
|
|
25
|
+
export interface StartedBy {
|
|
26
|
+
kind: StartedByKind;
|
|
27
|
+
/** What to show in a cell: a client id, an agent uid, or "You". */
|
|
28
|
+
label: string;
|
|
29
|
+
/** The MCP client it connected as, where there is one. */
|
|
30
|
+
clientId: string;
|
|
31
|
+
/** The service agent's uid, where it is one. */
|
|
32
|
+
agentUid: string;
|
|
33
|
+
}
|
|
34
|
+
/** Metadata as `useUsages` builds it, or as a plain object. */
|
|
35
|
+
export type UsageMetadata = Map<string, unknown> | Record<string, unknown> | null | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* Who started this reservation.
|
|
38
|
+
*
|
|
39
|
+
* `agent_uid_s` decides before `client_id_s`, because a service agent
|
|
40
|
+
* reaching Runtimes through the MCP gateway carries **the gateway's** client
|
|
41
|
+
* id: read the other way round, every one of an organization's pipelines
|
|
42
|
+
* would show as the same agent.
|
|
43
|
+
*
|
|
44
|
+
* A record with neither dimension is a person's own work. It is *not* an
|
|
45
|
+
* agent whose name we failed to read, and saying "unknown" would suggest it
|
|
46
|
+
* was — so the answer is the reader themselves.
|
|
47
|
+
*/
|
|
48
|
+
export declare const startedBy: (metadata: UsageMetadata) => StartedBy;
|
|
49
|
+
/**
|
|
50
|
+
* The words a search box matches on for this row.
|
|
51
|
+
*
|
|
52
|
+
* "agent" matches every agent-started runtime, the client id matches one
|
|
53
|
+
* client, and "you" matches your own — so the filter the plan asks for is the
|
|
54
|
+
* search box that is already there rather than a second control beside it.
|
|
55
|
+
*/
|
|
56
|
+
export declare const startedBySearchTerms: (metadata: UsageMetadata) => string;
|
|
57
|
+
/** The choices a "started by" filter offers, `all` included. */
|
|
58
|
+
export type StarterFilter = 'all' | StartedByKind;
|
|
59
|
+
/** Those choices in the order they are drawn, with the words for each. */
|
|
60
|
+
export declare const STARTER_FILTERS: {
|
|
61
|
+
id: StarterFilter;
|
|
62
|
+
label: string;
|
|
63
|
+
}[];
|
|
64
|
+
/** Enough of a usage record to say who started the resource it is for. */
|
|
65
|
+
export interface StarterUsage {
|
|
66
|
+
/** The resource this reservation is for — a runtime's uid. */
|
|
67
|
+
id: string;
|
|
68
|
+
metadata: UsageMetadata;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Who started the resource a uid names, from the reservations in hand.
|
|
72
|
+
*
|
|
73
|
+
* `undefined` when no reservation for it has been read — which is a
|
|
74
|
+
* different answer from "a person did". `startedBy` reads a record with
|
|
75
|
+
* neither dimension as the reader's own work, and that is right *for a
|
|
76
|
+
* record*: the dimensions are written when the reservation is made, so their
|
|
77
|
+
* absence is meaningful. Their absence from a row that does not exist is
|
|
78
|
+
* not. Saying "You" while the reservations are still loading would put the
|
|
79
|
+
* reader's name on a runtime one of their agents started, in the one view
|
|
80
|
+
* built to tell those apart.
|
|
81
|
+
*/
|
|
82
|
+
export declare const startedByResource: (resourceUid: string, usages: readonly StarterUsage[] | null | undefined) => StartedBy | undefined;
|
|
83
|
+
/**
|
|
84
|
+
* Whether a row survives the filter.
|
|
85
|
+
*
|
|
86
|
+
* A row nobody could classify passes only `all`. Narrowing to "Your agents"
|
|
87
|
+
* and being shown rows that might be anything is not a narrower answer —
|
|
88
|
+
* it is the same answer with a claim attached.
|
|
89
|
+
*/
|
|
90
|
+
export declare const matchesStarter: (who: StartedBy | undefined, filter: StarterFilter) => boolean;
|
|
91
|
+
export default startedBy;
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2023-2025 Datalayer, Inc.
|
|
3
|
+
* Distributed under the terms of the Modified BSD License.
|
|
4
|
+
*/
|
|
5
|
+
/*
|
|
6
|
+
* Copyright (c) 2023-2026 Datalayer, Inc.
|
|
7
|
+
* Distributed under the terms of the Modified BSD License.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Who started a runtime: a person, one of their agents, or a service agent.
|
|
11
|
+
*
|
|
12
|
+
* The reservation has carried this since agents could make one — IAM writes
|
|
13
|
+
* `client_id_s` and `agent_uid_s` onto the usage record's metadata, and
|
|
14
|
+
* `useUsages` already hands the whole map to the views. Nothing displayed
|
|
15
|
+
* it, so a person looking at their running runtimes could not tell which of
|
|
16
|
+
* them they had started and which an agent had, on a platform whose premise
|
|
17
|
+
* is that agents start things on your behalf.
|
|
18
|
+
*
|
|
19
|
+
* The distinction that matters is **agent versus service agent**, not
|
|
20
|
+
* "automated versus not". A delegated agent runs as you, spends your
|
|
21
|
+
* credits, and stops when you disconnect it. A service agent is the
|
|
22
|
+
* organization's own principal with its own key: it keeps running when the
|
|
23
|
+
* person who set it up leaves, and it is the row somebody has to go and turn
|
|
24
|
+
* off. Told apart, one is "I did that yesterday" and the other is "who owns
|
|
25
|
+
* this".
|
|
26
|
+
*
|
|
27
|
+
* @module models/StartedBy
|
|
28
|
+
*/
|
|
29
|
+
/** The Solr field names IAM writes the dimensions on. */
|
|
30
|
+
export const CLIENT_ID_KEY = 'client_id_s';
|
|
31
|
+
export const AGENT_UID_KEY = 'agent_uid_s';
|
|
32
|
+
const read = (metadata, key) => {
|
|
33
|
+
if (!metadata) {
|
|
34
|
+
return '';
|
|
35
|
+
}
|
|
36
|
+
const value = metadata instanceof Map
|
|
37
|
+
? metadata.get(key)
|
|
38
|
+
: metadata[key];
|
|
39
|
+
return typeof value === 'string' ? value.trim() : '';
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Who started this reservation.
|
|
43
|
+
*
|
|
44
|
+
* `agent_uid_s` decides before `client_id_s`, because a service agent
|
|
45
|
+
* reaching Runtimes through the MCP gateway carries **the gateway's** client
|
|
46
|
+
* id: read the other way round, every one of an organization's pipelines
|
|
47
|
+
* would show as the same agent.
|
|
48
|
+
*
|
|
49
|
+
* A record with neither dimension is a person's own work. It is *not* an
|
|
50
|
+
* agent whose name we failed to read, and saying "unknown" would suggest it
|
|
51
|
+
* was — so the answer is the reader themselves.
|
|
52
|
+
*/
|
|
53
|
+
export const startedBy = (metadata) => {
|
|
54
|
+
const agentUid = read(metadata, AGENT_UID_KEY);
|
|
55
|
+
const clientId = read(metadata, CLIENT_ID_KEY);
|
|
56
|
+
if (agentUid) {
|
|
57
|
+
return { kind: 'service-agent', label: agentUid, clientId, agentUid };
|
|
58
|
+
}
|
|
59
|
+
if (clientId) {
|
|
60
|
+
return { kind: 'agent', label: clientId, clientId, agentUid: '' };
|
|
61
|
+
}
|
|
62
|
+
return { kind: 'person', label: 'You', clientId: '', agentUid: '' };
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* The words a search box matches on for this row.
|
|
66
|
+
*
|
|
67
|
+
* "agent" matches every agent-started runtime, the client id matches one
|
|
68
|
+
* client, and "you" matches your own — so the filter the plan asks for is the
|
|
69
|
+
* search box that is already there rather than a second control beside it.
|
|
70
|
+
*/
|
|
71
|
+
export const startedBySearchTerms = (metadata) => {
|
|
72
|
+
const who = startedBy(metadata);
|
|
73
|
+
if (who.kind === 'person') {
|
|
74
|
+
return 'you person';
|
|
75
|
+
}
|
|
76
|
+
if (who.kind === 'service-agent') {
|
|
77
|
+
return `agent service-agent ${who.agentUid} ${who.clientId}`.trim();
|
|
78
|
+
}
|
|
79
|
+
return `agent ${who.clientId}`;
|
|
80
|
+
};
|
|
81
|
+
/** Those choices in the order they are drawn, with the words for each. */
|
|
82
|
+
export const STARTER_FILTERS = [
|
|
83
|
+
{ id: 'all', label: 'Anyone' },
|
|
84
|
+
{ id: 'person', label: 'You' },
|
|
85
|
+
{ id: 'agent', label: 'Your agents' },
|
|
86
|
+
{ id: 'service-agent', label: 'Service agents' },
|
|
87
|
+
];
|
|
88
|
+
/**
|
|
89
|
+
* Who started the resource a uid names, from the reservations in hand.
|
|
90
|
+
*
|
|
91
|
+
* `undefined` when no reservation for it has been read — which is a
|
|
92
|
+
* different answer from "a person did". `startedBy` reads a record with
|
|
93
|
+
* neither dimension as the reader's own work, and that is right *for a
|
|
94
|
+
* record*: the dimensions are written when the reservation is made, so their
|
|
95
|
+
* absence is meaningful. Their absence from a row that does not exist is
|
|
96
|
+
* not. Saying "You" while the reservations are still loading would put the
|
|
97
|
+
* reader's name on a runtime one of their agents started, in the one view
|
|
98
|
+
* built to tell those apart.
|
|
99
|
+
*/
|
|
100
|
+
export const startedByResource = (resourceUid, usages) => {
|
|
101
|
+
const usage = (usages ?? []).find(entry => entry.id === resourceUid);
|
|
102
|
+
return usage ? startedBy(usage.metadata) : undefined;
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* Whether a row survives the filter.
|
|
106
|
+
*
|
|
107
|
+
* A row nobody could classify passes only `all`. Narrowing to "Your agents"
|
|
108
|
+
* and being shown rows that might be anything is not a narrower answer —
|
|
109
|
+
* it is the same answer with a claim attached.
|
|
110
|
+
*/
|
|
111
|
+
export const matchesStarter = (who, filter) => {
|
|
112
|
+
if (filter === 'all') {
|
|
113
|
+
return true;
|
|
114
|
+
}
|
|
115
|
+
return who?.kind === filter;
|
|
116
|
+
};
|
|
117
|
+
export default startedBy;
|
package/lib/models/Team.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ export type IBaseTeam = {
|
|
|
11
11
|
avatarIcon?: string;
|
|
12
12
|
banner?: string;
|
|
13
13
|
public: boolean;
|
|
14
|
+
/** The origin of its organization, inherited at creation; absent for a native one. */
|
|
15
|
+
origin?: string;
|
|
14
16
|
creationDate: Date;
|
|
15
17
|
lastUpdateDate?: Date;
|
|
16
18
|
lastPublicationDate?: Date;
|
package/lib/models/Team.js
CHANGED
|
@@ -21,6 +21,8 @@ export function asTeam(t, organizationId) {
|
|
|
21
21
|
avatarIcon: t.avatar_icon_s ?? t.avatarIcon,
|
|
22
22
|
banner: t.banner_s ?? t.banner,
|
|
23
23
|
public: t.public_b,
|
|
24
|
+
// Inherited from the organization at creation; absent for a native one.
|
|
25
|
+
origin: t.origin_s ?? t.origin ?? undefined,
|
|
24
26
|
members,
|
|
25
27
|
organization: {
|
|
26
28
|
id: organizationId,
|
package/lib/models/User.d.ts
CHANGED
|
@@ -27,6 +27,8 @@ export declare class User implements IUser {
|
|
|
27
27
|
avatarUrl?: string;
|
|
28
28
|
avatarIcon?: string;
|
|
29
29
|
banner?: string;
|
|
30
|
+
/** Whether this account publishes what it orbits, on its public profile. */
|
|
31
|
+
showOrbits?: boolean;
|
|
30
32
|
origin?: string;
|
|
31
33
|
invites?: Array<IInvite>;
|
|
32
34
|
iamProviders: Array<IIAMProviderLinked>;
|
|
@@ -67,6 +69,8 @@ export type IUser = IBaseUser & {
|
|
|
67
69
|
avatarUrl?: string;
|
|
68
70
|
avatarIcon?: string;
|
|
69
71
|
banner?: string;
|
|
72
|
+
/** Whether this account publishes what it orbits, on its public profile. */
|
|
73
|
+
showOrbits?: boolean;
|
|
70
74
|
origin?: string;
|
|
71
75
|
invites?: Array<IInvite>;
|
|
72
76
|
iamProviders: Array<IIAMProviderLinked>;
|
package/lib/models/User.js
CHANGED
|
@@ -43,6 +43,8 @@ export class User {
|
|
|
43
43
|
avatarUrl;
|
|
44
44
|
avatarIcon;
|
|
45
45
|
banner;
|
|
46
|
+
/** Whether this account publishes what it orbits, on its public profile. */
|
|
47
|
+
showOrbits;
|
|
46
48
|
origin;
|
|
47
49
|
invites;
|
|
48
50
|
iamProviders;
|
|
@@ -68,6 +70,7 @@ export class User {
|
|
|
68
70
|
this.avatarUrl = u.avatar_url_s;
|
|
69
71
|
this.avatarIcon = u.avatar_icon_s ?? u.avatarIcon;
|
|
70
72
|
this.banner = u.banner_s ?? u.banner;
|
|
73
|
+
this.showOrbits = Boolean(u.show_orbits_b ?? u.showOrbits ?? false);
|
|
71
74
|
this.origin = u.origin_s;
|
|
72
75
|
this.joinDate = u.join_ts_dt ? new Date(u.join_ts_dt) : undefined;
|
|
73
76
|
this.credits = u.credits_i ? Number(u.credits_i) : 0;
|
package/lib/models/UserDTO.js
CHANGED
|
@@ -60,6 +60,8 @@ export class UserDTO {
|
|
|
60
60
|
* @returns Core user data with camelCase properties
|
|
61
61
|
*/
|
|
62
62
|
toJSON() {
|
|
63
|
+
// avatarIcon and banner are optional: omit them when the API did not
|
|
64
|
+
// return them, as validateJSON rejects undefined property values.
|
|
63
65
|
const obj = {
|
|
64
66
|
id: this.id,
|
|
65
67
|
uid: this.uid,
|
|
@@ -69,8 +71,8 @@ export class UserDTO {
|
|
|
69
71
|
email: this.email,
|
|
70
72
|
handle: this.handle,
|
|
71
73
|
avatarUrl: this.avatarUrl,
|
|
72
|
-
avatarIcon: this.avatarIcon,
|
|
73
|
-
banner: this.banner,
|
|
74
|
+
...(this.avatarIcon !== undefined ? { avatarIcon: this.avatarIcon } : {}),
|
|
75
|
+
...(this.banner !== undefined ? { banner: this.banner } : {}),
|
|
74
76
|
};
|
|
75
77
|
validateJSON(obj, 'User');
|
|
76
78
|
return obj;
|
|
@@ -1,16 +1,29 @@
|
|
|
1
1
|
export declare const AI_AGENTS_URL_KEY = "aiAgents_url_s";
|
|
2
2
|
export declare const CAN_INVITE_URL_KEY = "can_invite_b";
|
|
3
|
+
export declare const DOCS_IN_PLACE_KEY = "docs_in_place_b";
|
|
3
4
|
export type IUserSettings = {
|
|
4
5
|
aiAgentsUrl?: string;
|
|
5
6
|
canInvite?: boolean;
|
|
7
|
+
/**
|
|
8
|
+
* Whether the documentation opens inside the application shell, keeping the
|
|
9
|
+
* navigation alongside it, rather than taking over the window.
|
|
10
|
+
*
|
|
11
|
+
* Undefined means the user has never chosen, which reads as `true`: opening
|
|
12
|
+
* in place is the default. Only a deliberate `false` takes the reader to the
|
|
13
|
+
* full-window documentation.
|
|
14
|
+
*/
|
|
15
|
+
docsInPlace?: boolean;
|
|
6
16
|
};
|
|
7
17
|
export declare class UserSettings implements IUserSettings {
|
|
8
18
|
private _aiAgentsUrl?;
|
|
9
19
|
private _canInvite?;
|
|
20
|
+
private _docsInPlace?;
|
|
10
21
|
constructor(s: any);
|
|
11
22
|
get aiAgentsUrl(): string | undefined;
|
|
12
23
|
set aiAgentsUrl(value: string | undefined);
|
|
13
24
|
get canInvite(): boolean | undefined;
|
|
14
25
|
set canInvite(value: boolean | undefined);
|
|
26
|
+
get docsInPlace(): boolean | undefined;
|
|
27
|
+
set docsInPlace(value: boolean | undefined);
|
|
15
28
|
}
|
|
16
29
|
export default UserSettings;
|
|
@@ -4,12 +4,15 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export const AI_AGENTS_URL_KEY = 'aiAgents_url_s';
|
|
6
6
|
export const CAN_INVITE_URL_KEY = 'can_invite_b';
|
|
7
|
+
export const DOCS_IN_PLACE_KEY = 'docs_in_place_b';
|
|
7
8
|
export class UserSettings {
|
|
8
9
|
_aiAgentsUrl;
|
|
9
10
|
_canInvite;
|
|
11
|
+
_docsInPlace;
|
|
10
12
|
constructor(s) {
|
|
11
13
|
this._aiAgentsUrl = s[AI_AGENTS_URL_KEY] ?? undefined;
|
|
12
14
|
this._canInvite = s[CAN_INVITE_URL_KEY] ?? undefined;
|
|
15
|
+
this._docsInPlace = s[DOCS_IN_PLACE_KEY] ?? undefined;
|
|
13
16
|
}
|
|
14
17
|
get aiAgentsUrl() {
|
|
15
18
|
return this._aiAgentsUrl;
|
|
@@ -23,5 +26,11 @@ export class UserSettings {
|
|
|
23
26
|
set canInvite(value) {
|
|
24
27
|
this._canInvite = value;
|
|
25
28
|
}
|
|
29
|
+
get docsInPlace() {
|
|
30
|
+
return this._docsInPlace;
|
|
31
|
+
}
|
|
32
|
+
set docsInPlace(value) {
|
|
33
|
+
this._docsInPlace = value;
|
|
34
|
+
}
|
|
26
35
|
}
|
|
27
36
|
export default UserSettings;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
{
|
|
2
|
+
"solr": {
|
|
3
|
+
"id": "internal-root",
|
|
4
|
+
"_version_": 42,
|
|
5
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
6
|
+
"source_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
7
|
+
"type_s": "content_source",
|
|
8
|
+
"name_t": "Earth observations",
|
|
9
|
+
"code_s": "earth-observations",
|
|
10
|
+
"capabilities_ss": ["browse", "query"],
|
|
11
|
+
"rank_i": 7,
|
|
12
|
+
"ranks_is": [7, 8],
|
|
13
|
+
"completed_bytes_l": 12,
|
|
14
|
+
"part_sizes_ls": [5, 7],
|
|
15
|
+
"progress_f": 0.5,
|
|
16
|
+
"progress_samples_fs": [0.25, 0.5],
|
|
17
|
+
"ratio_d": 0.125,
|
|
18
|
+
"ratios_ds": [0.125, 0.25],
|
|
19
|
+
"is_public_b": false,
|
|
20
|
+
"checks_bs": [true, false],
|
|
21
|
+
"created_at_dt": "2026-08-24T12:00:00Z",
|
|
22
|
+
"observed_at_dts": ["2026-08-24T12:00:00Z", "2026-08-24T12:01:00Z"],
|
|
23
|
+
"notes_txt": "typed suffix coverage",
|
|
24
|
+
"description_t": null,
|
|
25
|
+
"grants": [{
|
|
26
|
+
"id": "internal-child",
|
|
27
|
+
"_root_": "internal-root",
|
|
28
|
+
"_nest_parent_": "internal-root",
|
|
29
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
30
|
+
"principal_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
31
|
+
"access_level_s": "view"
|
|
32
|
+
}]
|
|
33
|
+
},
|
|
34
|
+
"python": {
|
|
35
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
36
|
+
"source_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
37
|
+
"type": "content_source",
|
|
38
|
+
"name": "Earth observations",
|
|
39
|
+
"code": "earth-observations",
|
|
40
|
+
"capabilities": ["browse", "query"],
|
|
41
|
+
"rank": 7,
|
|
42
|
+
"ranks": [7, 8],
|
|
43
|
+
"completed_bytes": 12,
|
|
44
|
+
"part_sizes": [5, 7],
|
|
45
|
+
"progress": 0.5,
|
|
46
|
+
"progress_samples": [0.25, 0.5],
|
|
47
|
+
"ratio": 0.125,
|
|
48
|
+
"ratios": [0.125, 0.25],
|
|
49
|
+
"is_public": false,
|
|
50
|
+
"checks": [true, false],
|
|
51
|
+
"created_at": "2026-08-24T12:00:00Z",
|
|
52
|
+
"observed_at": ["2026-08-24T12:00:00Z", "2026-08-24T12:01:00Z"],
|
|
53
|
+
"notes": "typed suffix coverage",
|
|
54
|
+
"description": null,
|
|
55
|
+
"grants": [{"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV", "principal_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ", "access_level": "view"}]
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
{
|
|
2
|
+
"sources": [
|
|
3
|
+
{
|
|
4
|
+
"contract_version": "v1",
|
|
5
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
6
|
+
"kind": "files",
|
|
7
|
+
"name": "User Folder",
|
|
8
|
+
"principal_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
9
|
+
"principal_kind": "user",
|
|
10
|
+
"configuration": {
|
|
11
|
+
"kind": "files",
|
|
12
|
+
"owning_user_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
13
|
+
"storage_backend_id": "users",
|
|
14
|
+
"quota_policy": "standard",
|
|
15
|
+
"versioning_policy": "retained"
|
|
16
|
+
},
|
|
17
|
+
"capabilities": ["browse", "transfer", "mount"],
|
|
18
|
+
"status": "ready",
|
|
19
|
+
"created_at": "2026-08-24T12:00:00Z",
|
|
20
|
+
"updated_at": "2026-08-24T12:00:00Z"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"contract_version": "v1",
|
|
24
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
25
|
+
"kind": "dataset",
|
|
26
|
+
"name": "Dataset",
|
|
27
|
+
"principal_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
28
|
+
"principal_kind": "user",
|
|
29
|
+
"configuration": {
|
|
30
|
+
"kind": "dataset",
|
|
31
|
+
"tags": ["curated"],
|
|
32
|
+
"publication_eligible": true
|
|
33
|
+
},
|
|
34
|
+
"capabilities": ["browse", "materialize"],
|
|
35
|
+
"status": "ready",
|
|
36
|
+
"created_at": "2026-08-24T12:00:00Z",
|
|
37
|
+
"updated_at": "2026-08-24T12:00:00Z"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"contract_version": "v1",
|
|
41
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
42
|
+
"kind": "volume",
|
|
43
|
+
"name": "Volume",
|
|
44
|
+
"principal_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
45
|
+
"principal_kind": "user",
|
|
46
|
+
"configuration": {
|
|
47
|
+
"kind": "volume",
|
|
48
|
+
"capacity_bytes": 1073741824,
|
|
49
|
+
"scope": "user",
|
|
50
|
+
"backing_resource_id": "pvc-1",
|
|
51
|
+
"default_mount_path": "/home/datalayer/data",
|
|
52
|
+
"access_modes": ["ro", "rw"],
|
|
53
|
+
"concurrent_readers": true,
|
|
54
|
+
"concurrent_writers": false
|
|
55
|
+
},
|
|
56
|
+
"capabilities": ["browse", "mount"],
|
|
57
|
+
"status": "ready",
|
|
58
|
+
"created_at": "2026-08-24T12:00:00Z",
|
|
59
|
+
"updated_at": "2026-08-24T12:00:00Z"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"contract_version": "v1",
|
|
63
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
64
|
+
"kind": "cloud-storage",
|
|
65
|
+
"name": "S3",
|
|
66
|
+
"principal_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
67
|
+
"principal_kind": "user",
|
|
68
|
+
"configuration": {
|
|
69
|
+
"kind": "cloud-storage",
|
|
70
|
+
"provider": "s3",
|
|
71
|
+
"bucket_or_container": "research",
|
|
72
|
+
"prefix": "inputs/",
|
|
73
|
+
"region": "eu-west-1",
|
|
74
|
+
"access_preference": "automatic"
|
|
75
|
+
},
|
|
76
|
+
"capabilities": ["browse", "transfer"],
|
|
77
|
+
"status": "ready",
|
|
78
|
+
"created_at": "2026-08-24T12:00:00Z",
|
|
79
|
+
"updated_at": "2026-08-24T12:00:00Z"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"contract_version": "v1",
|
|
83
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
84
|
+
"kind": "datasource",
|
|
85
|
+
"name": "Warehouse",
|
|
86
|
+
"principal_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
87
|
+
"principal_kind": "user",
|
|
88
|
+
"configuration": {
|
|
89
|
+
"kind": "datasource",
|
|
90
|
+
"connector_type": "sql",
|
|
91
|
+
"endpoint": "duckdb://",
|
|
92
|
+
"credential_uid": "01HZY7WQ8XKJ4M2N5P6R7S8T9V",
|
|
93
|
+
"database_or_project": "analytics",
|
|
94
|
+
"allowed_operations": ["select"],
|
|
95
|
+
"default_row_limit": 10000
|
|
96
|
+
},
|
|
97
|
+
"capabilities": ["query"],
|
|
98
|
+
"status": "ready",
|
|
99
|
+
"created_at": "2026-08-24T12:00:00Z",
|
|
100
|
+
"updated_at": "2026-08-24T12:00:00Z"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"contract_version": "v1",
|
|
104
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
105
|
+
"kind": "data-server",
|
|
106
|
+
"name": "Private gateway",
|
|
107
|
+
"principal_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
108
|
+
"principal_kind": "organization",
|
|
109
|
+
"configuration": {
|
|
110
|
+
"kind": "data-server",
|
|
111
|
+
"registration_identity": "gateway-1",
|
|
112
|
+
"mtls_issuer": "datalayer-contents-ca",
|
|
113
|
+
"connectors": [
|
|
114
|
+
{
|
|
115
|
+
"connector_type": "sql",
|
|
116
|
+
"operations": ["select"],
|
|
117
|
+
"policy_version": "v1"
|
|
118
|
+
}
|
|
119
|
+
],
|
|
120
|
+
"policy_version": "v1"
|
|
121
|
+
},
|
|
122
|
+
"capabilities": ["query"],
|
|
123
|
+
"status": "ready",
|
|
124
|
+
"created_at": "2026-08-24T12:00:00Z",
|
|
125
|
+
"updated_at": "2026-08-24T12:00:00Z"
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"contract_version": "v1",
|
|
129
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
130
|
+
"kind": "mcp",
|
|
131
|
+
"name": "Earthdata",
|
|
132
|
+
"principal_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
133
|
+
"principal_kind": "team",
|
|
134
|
+
"configuration": {
|
|
135
|
+
"kind": "mcp",
|
|
136
|
+
"transport": "streamable-http",
|
|
137
|
+
"endpoint": "https://example.test/mcp",
|
|
138
|
+
"allowed_tools": ["search_earthdata"],
|
|
139
|
+
"allowed_domains": ["earthdata.nasa.gov"],
|
|
140
|
+
"allowed_destinations": ["home-folder:///acquisitions/"],
|
|
141
|
+
"approval_policy": "explicit",
|
|
142
|
+
"destination_policy": "home-folder-only",
|
|
143
|
+
"max_result_bytes": 67108864
|
|
144
|
+
},
|
|
145
|
+
"capabilities": ["browse", "transfer"],
|
|
146
|
+
"status": "ready",
|
|
147
|
+
"created_at": "2026-08-24T12:00:00Z",
|
|
148
|
+
"updated_at": "2026-08-24T12:00:00Z"
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
"contract_version": "v1",
|
|
152
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
153
|
+
"kind": "environment",
|
|
154
|
+
"name": "Environment content",
|
|
155
|
+
"principal_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
156
|
+
"principal_kind": "organization",
|
|
157
|
+
"configuration": {
|
|
158
|
+
"kind": "environment",
|
|
159
|
+
"environment_uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
160
|
+
"build_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
161
|
+
"runtime_content_uids": [],
|
|
162
|
+
"resolved_provider_paths": {},
|
|
163
|
+
"build_entries": []
|
|
164
|
+
},
|
|
165
|
+
"capabilities": ["materialize"],
|
|
166
|
+
"status": "ready",
|
|
167
|
+
"created_at": "2026-08-24T12:00:00Z",
|
|
168
|
+
"updated_at": "2026-08-24T12:00:00Z"
|
|
169
|
+
}
|
|
170
|
+
],
|
|
171
|
+
"attachment_manifest": {
|
|
172
|
+
"contract_version": "v1",
|
|
173
|
+
"sandbox_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
174
|
+
"sandbox_provider": "daytona",
|
|
175
|
+
"generated_at": "2026-08-24T12:00:00Z",
|
|
176
|
+
"attachments": [
|
|
177
|
+
{
|
|
178
|
+
"uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
179
|
+
"source_uid": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
|
|
180
|
+
"sandbox_uid": "01BX5ZZKBKACTAV9WEVGEMMVRZ",
|
|
181
|
+
"sandbox_provider": "daytona",
|
|
182
|
+
"mode": "ro",
|
|
183
|
+
"mount_path": "/home/daytona/data",
|
|
184
|
+
"delivery": "materialize",
|
|
185
|
+
"required": true,
|
|
186
|
+
"capabilities": ["browse", "materialize"],
|
|
187
|
+
"status": "ready",
|
|
188
|
+
"limits": { "bytes": 1073741824 },
|
|
189
|
+
"created_at": "2026-08-24T12:00:00Z",
|
|
190
|
+
"cleanup_policy": "remove-materialization"
|
|
191
|
+
}
|
|
192
|
+
]
|
|
193
|
+
}
|
|
194
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** JSON values accepted at the Contents HTTP boundary. */
|
|
2
|
+
export type JsonValue = null | boolean | number | string | JsonValue[] | {
|
|
3
|
+
[key: string]: JsonValue;
|
|
4
|
+
};
|
|
5
|
+
/** Recursively convert suffixless Python/API snake-case fields to camel case. */
|
|
6
|
+
export declare const contentsToCamelCase: (value: JsonValue) => JsonValue;
|
|
7
|
+
/** Recursively convert camel-case Contents client values to API snake case. */
|
|
8
|
+
export declare const contentsToSnakeCase: (value: JsonValue) => JsonValue;
|