@gen3/workspaces 0.12.47 → 0.12.48
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/dist/dts/components/CompactDictionaryPanel/CompactDictionaryPanel.d.ts.map +1 -1
- package/dist/dts/components/CompactDictionaryPanel/CompactDictionaryPanel.js +6 -2
- package/dist/dts/components/CompactDictionaryPanel/CompactDictionaryPanel.js.map +1 -1
- package/dist/dts/components/KernelLifecyclePanel/KernelSelector.js +2 -2
- package/dist/dts/components/KernelLifecyclePanel/KernelSelector.js.map +1 -1
- package/dist/dts/config.d.ts +0 -2
- package/dist/dts/config.d.ts.map +1 -1
- package/dist/dts/config.js +0 -34
- package/dist/dts/config.js.map +1 -1
- package/dist/dts/pages/WorkspacesCenter/data.d.ts.map +1 -1
- package/dist/dts/pages/WorkspacesCenter/data.js +42 -3
- package/dist/dts/pages/WorkspacesCenter/data.js.map +1 -1
- package/dist/dts/server/workspaceAssetsHandler.d.ts.map +1 -1
- package/dist/dts/server/workspaceAssetsHandler.js +0 -1
- package/dist/dts/server/workspaceAssetsHandler.js.map +1 -1
- package/dist/dts/workspace/WorkspaceCenter.js +2 -2
- package/dist/dts/workspace/WorkspaceCenter.js.map +1 -1
- package/dist/dts/workspace/WorkspaceLayout/SettingsPanel.d.ts +1 -1
- package/dist/dts/workspace/WorkspaceLayout/SettingsPanel.d.ts.map +1 -1
- package/dist/dts/workspace/WorkspaceLayout/SettingsPanel.js +2 -2
- package/dist/dts/workspace/WorkspaceLayout/SettingsPanel.js.map +1 -1
- package/dist/dts/workspace/WorkspaceLayout/ToolsPanel.d.ts +2 -1
- package/dist/dts/workspace/WorkspaceLayout/ToolsPanel.d.ts.map +1 -1
- package/dist/dts/workspace/WorkspaceLayout/ToolsPanel.js +2 -2
- package/dist/dts/workspace/WorkspaceLayout/ToolsPanel.js.map +1 -1
- package/dist/dts/workspace/WorkspaceLayout/WorkspaceLayout.d.ts +3 -1
- package/dist/dts/workspace/WorkspaceLayout/WorkspaceLayout.d.ts.map +1 -1
- package/dist/dts/workspace/WorkspaceLayout/WorkspaceLayout.js +2 -3
- package/dist/dts/workspace/WorkspaceLayout/WorkspaceLayout.js.map +1 -1
- package/dist/dts/workspace/tiers/types.d.ts +4 -2
- package/dist/dts/workspace/tiers/types.d.ts.map +1 -1
- package/dist/dts/workspace/types.d.ts +1 -0
- package/dist/dts/workspace/types.d.ts.map +1 -1
- package/dist/index/cjs/index.js +100 -68
- package/dist/index/cjs/index.js.map +1 -1
- package/dist/index/esm/index.js +101 -69
- package/dist/index/esm/index.js.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/server/cjs/server.js +0 -1
- package/dist/server/cjs/server.js.map +1 -1
- package/dist/server/esm/server.js +0 -1
- package/dist/server/esm/server.js.map +1 -1
- package/package.json +4 -4
package/dist/index/esm/index.js
CHANGED
|
@@ -6,10 +6,11 @@ import { Icon } from '@iconify-icon/react';
|
|
|
6
6
|
import { GEN3_API, GEN3_WORKSPACE_API, gen3Api, useCoreSelector, selectJEGActiveWorkspaceStatus, useCoreDispatch, setJEGActiveWorkspaceStatus, WorkspaceStatus, setJEGRequestedWorkspaceStatus, RequestedWorkspaceStatus, setJEGActiveWorkspaceId, isFetchBaseQueryError, selectJEGRequestedWorkspaceStatus, selectJEGRequestedWorkspaceStatusTimestamp, isTimeGreaterThan, formatUptimeInMinutes, selectJEGKernelIds, removeManyJEGActiveKernels, upsertManyJEGActiveKernels, normalizeRtkError, selectAllJEGKernels, addJEGActiveKernel, selectWorkspaceTier, setWorkspaceTier, selectWorkspaceFullscreen, setWorkspaceFullscreen, useGetDictionaryFromUrlQuery, useUserAuth, GEN3_COMMONS_NAME } from '@gen3/core';
|
|
7
7
|
import { useDeepCompareEffect } from 'use-deep-compare';
|
|
8
8
|
import { notifications } from '@mantine/notifications';
|
|
9
|
-
import { useDisclosure } from '@mantine/hooks';
|
|
9
|
+
import { useElementSize, useDisclosure } from '@mantine/hooks';
|
|
10
10
|
import { IoSettingsSharp } from 'react-icons/io5';
|
|
11
11
|
import { BsFillInfoCircleFill } from 'react-icons/bs';
|
|
12
12
|
import { MdKeyboardArrowDown, MdKeyboardArrowRight } from 'react-icons/md';
|
|
13
|
+
import { merge } from 'lodash';
|
|
13
14
|
|
|
14
15
|
const WorkspaceTierCard = ({ label, description, tier, features = [], tooltip = 'Launch workspace', buttonLabel = 'Launch', onSelectTier, baseColor })=>{
|
|
15
16
|
const handleClick = useCallback(()=>onSelectTier(tier), [
|
|
@@ -1848,7 +1849,7 @@ const KernelSelector = ({ handleLaunchKernel, isLaunchingLoading, onKernelSelect
|
|
|
1848
1849
|
id: "klp-kernel-spec",
|
|
1849
1850
|
value: selectedKernelName,
|
|
1850
1851
|
onChange: (value)=>setSelectedKernelName(value),
|
|
1851
|
-
disabled: disabled,
|
|
1852
|
+
disabled: disabled || isError,
|
|
1852
1853
|
data: kernelSpecs?.length === 0 ? [
|
|
1853
1854
|
{
|
|
1854
1855
|
value: 'python3',
|
|
@@ -1889,7 +1890,7 @@ const KernelSelector = ({ handleLaunchKernel, isLaunchingLoading, onKernelSelect
|
|
|
1889
1890
|
onClick: ()=>handleLaunchKernel(selectedKernelName || 'python3'),
|
|
1890
1891
|
loading: isLaunchingLoading,
|
|
1891
1892
|
fullWidth: true,
|
|
1892
|
-
disabled: disabled,
|
|
1893
|
+
disabled: disabled || isError,
|
|
1893
1894
|
children: isLaunchingLoading ? 'Working...' : 'Launch Kernel'
|
|
1894
1895
|
})
|
|
1895
1896
|
]
|
|
@@ -2200,7 +2201,7 @@ function HorizontalAccordion({ label, expanded, setExpanded, children, expandedW
|
|
|
2200
2201
|
});
|
|
2201
2202
|
}
|
|
2202
2203
|
|
|
2203
|
-
const SettingsPanel = ({ showKernels, expanded, setExpanded })=>{
|
|
2204
|
+
const SettingsPanel = ({ showKernels, expanded, setExpanded, width = 380 })=>{
|
|
2204
2205
|
const currentTier = useCoreSelector(selectWorkspaceTier);
|
|
2205
2206
|
const coreDispatch = useCoreDispatch();
|
|
2206
2207
|
const onUpgradeToRemote = useCallback(()=>{
|
|
@@ -2213,7 +2214,7 @@ const SettingsPanel = ({ showKernels, expanded, setExpanded })=>{
|
|
|
2213
2214
|
expanded: expanded,
|
|
2214
2215
|
setExpanded: setExpanded,
|
|
2215
2216
|
rightSide: true,
|
|
2216
|
-
expandedWidth:
|
|
2217
|
+
expandedWidth: width,
|
|
2217
2218
|
children: /*#__PURE__*/ jsxs(Stack, {
|
|
2218
2219
|
gap: "sm",
|
|
2219
2220
|
className: PanelStyle,
|
|
@@ -2362,41 +2363,6 @@ const WorkspaceToolbar = ({ toolbarConfiguration })=>{
|
|
|
2362
2363
|
});
|
|
2363
2364
|
};
|
|
2364
2365
|
|
|
2365
|
-
const WORKSPACE_TIER_INFORMATION = {
|
|
2366
|
-
free: {
|
|
2367
|
-
tier: 'free',
|
|
2368
|
-
toolbar: {
|
|
2369
|
-
label: 'JupyterLite',
|
|
2370
|
-
description: 'Running via JupyterLite',
|
|
2371
|
-
showStop: false,
|
|
2372
|
-
showStatus: false
|
|
2373
|
-
},
|
|
2374
|
-
settings: {
|
|
2375
|
-
showKernels: false
|
|
2376
|
-
},
|
|
2377
|
-
dataAndTools: {
|
|
2378
|
-
enabled: true,
|
|
2379
|
-
tabs: []
|
|
2380
|
-
}
|
|
2381
|
-
},
|
|
2382
|
-
remote: {
|
|
2383
|
-
tier: 'remote',
|
|
2384
|
-
toolbar: {
|
|
2385
|
-
label: 'Remote Compute Environment',
|
|
2386
|
-
description: 'Running with Remote Kernels',
|
|
2387
|
-
showStop: true,
|
|
2388
|
-
showStatus: true
|
|
2389
|
-
},
|
|
2390
|
-
settings: {
|
|
2391
|
-
showKernels: true
|
|
2392
|
-
},
|
|
2393
|
-
dataAndTools: {
|
|
2394
|
-
enabled: true,
|
|
2395
|
-
tabs: []
|
|
2396
|
-
}
|
|
2397
|
-
}
|
|
2398
|
-
};
|
|
2399
|
-
|
|
2400
2366
|
// Streaming LLM client — OpenAI, Anthropic, Gemini, Ollama
|
|
2401
2367
|
// All requests go directly from the browser to provider APIs (no backend proxy).
|
|
2402
2368
|
const DEFAULT_OLLAMA_URL = 'http://localhost:11434';
|
|
@@ -3551,6 +3517,9 @@ const FieldLinkCountBadge = ({ fieldsCount, linksCount })=>{
|
|
|
3551
3517
|
};
|
|
3552
3518
|
|
|
3553
3519
|
const CompactDictionaryPanel = ({ schemaUrl = '_dictionary/_all' })=>{
|
|
3520
|
+
const { ref, width } = useElementSize();
|
|
3521
|
+
const isNarrow = width > 0 && width < 280;
|
|
3522
|
+
const isCompact = width > 0 && width < 360;
|
|
3554
3523
|
const [nodes, setNodes] = useState([]);
|
|
3555
3524
|
const [search, setSearch] = useState('');
|
|
3556
3525
|
const [expandedId, setExpandedId] = useState(null);
|
|
@@ -3583,7 +3552,8 @@ const CompactDictionaryPanel = ({ schemaUrl = '_dictionary/_all' })=>{
|
|
|
3583
3552
|
});
|
|
3584
3553
|
}
|
|
3585
3554
|
return /*#__PURE__*/ jsxs("div", {
|
|
3586
|
-
|
|
3555
|
+
ref: ref,
|
|
3556
|
+
className: "relative flex h-full flex-col gap-2 overflow-hidden bg-base-lightest p-2",
|
|
3587
3557
|
children: [
|
|
3588
3558
|
/*#__PURE__*/ jsx(LoadingOverlay, {
|
|
3589
3559
|
visible: isFetching
|
|
@@ -3603,7 +3573,7 @@ const CompactDictionaryPanel = ({ schemaUrl = '_dictionary/_all' })=>{
|
|
|
3603
3573
|
]
|
|
3604
3574
|
}),
|
|
3605
3575
|
/*#__PURE__*/ jsx("div", {
|
|
3606
|
-
className: "flex flex-col gap-0.5",
|
|
3576
|
+
className: "flex min-h-0 flex-1 flex-col gap-0.5 overflow-y-auto",
|
|
3607
3577
|
children: filtered.map((node)=>{
|
|
3608
3578
|
const isExpanded = expandedId === node.id;
|
|
3609
3579
|
const propCount = Object.keys(node.properties).length;
|
|
@@ -3614,27 +3584,45 @@ const CompactDictionaryPanel = ({ schemaUrl = '_dictionary/_all' })=>{
|
|
|
3614
3584
|
/*#__PURE__*/ jsxs("button", {
|
|
3615
3585
|
type: "button",
|
|
3616
3586
|
onClick: ()=>setExpandedId(isExpanded ? null : node.id),
|
|
3617
|
-
className: "flex w-full
|
|
3587
|
+
className: "flex w-full flex-col px-2.5 py-2 text-left hover:bg-base-lightest hover:bg-opacity-50",
|
|
3618
3588
|
"aria-label": `Expand description for ${node.title}`,
|
|
3619
3589
|
"aria-expanded": isExpanded,
|
|
3620
3590
|
children: [
|
|
3621
|
-
isExpanded ? /*#__PURE__*/ jsx(MdKeyboardArrowDown, {}) : /*#__PURE__*/ jsx(MdKeyboardArrowRight, {}),
|
|
3622
3591
|
/*#__PURE__*/ jsxs("div", {
|
|
3623
|
-
className: "
|
|
3592
|
+
className: "flex w-full items-center gap-2",
|
|
3624
3593
|
children: [
|
|
3625
|
-
/*#__PURE__*/ jsx(
|
|
3626
|
-
|
|
3627
|
-
|
|
3594
|
+
isExpanded ? /*#__PURE__*/ jsx(MdKeyboardArrowDown, {}) : /*#__PURE__*/ jsx(MdKeyboardArrowRight, {}),
|
|
3595
|
+
/*#__PURE__*/ jsxs("div", {
|
|
3596
|
+
className: "min-w-0 flex-1",
|
|
3597
|
+
children: [
|
|
3598
|
+
/*#__PURE__*/ jsx("div", {
|
|
3599
|
+
className: "truncate text-xs font-semibold text-base-darkest",
|
|
3600
|
+
children: node.title
|
|
3601
|
+
}),
|
|
3602
|
+
!isNarrow && node.category && /*#__PURE__*/ jsx("div", {
|
|
3603
|
+
className: "truncate text-sm text-base-darker",
|
|
3604
|
+
children: node.category
|
|
3605
|
+
})
|
|
3606
|
+
]
|
|
3628
3607
|
}),
|
|
3629
|
-
|
|
3630
|
-
|
|
3631
|
-
|
|
3608
|
+
!isNarrow && /*#__PURE__*/ jsx(FieldLinkCountBadge, {
|
|
3609
|
+
fieldsCount: propCount,
|
|
3610
|
+
linksCount: linkCount
|
|
3632
3611
|
})
|
|
3633
3612
|
]
|
|
3634
3613
|
}),
|
|
3635
|
-
/*#__PURE__*/
|
|
3636
|
-
|
|
3637
|
-
|
|
3614
|
+
isNarrow && /*#__PURE__*/ jsxs("div", {
|
|
3615
|
+
className: "flex w-full items-center justify-between pl-5 pt-0.5",
|
|
3616
|
+
children: [
|
|
3617
|
+
node.category && /*#__PURE__*/ jsx("span", {
|
|
3618
|
+
className: "truncate text-xs text-base-darker",
|
|
3619
|
+
children: node.category
|
|
3620
|
+
}),
|
|
3621
|
+
/*#__PURE__*/ jsx(FieldLinkCountBadge, {
|
|
3622
|
+
fieldsCount: propCount,
|
|
3623
|
+
linksCount: linkCount
|
|
3624
|
+
})
|
|
3625
|
+
]
|
|
3638
3626
|
})
|
|
3639
3627
|
]
|
|
3640
3628
|
}),
|
|
@@ -3656,7 +3644,7 @@ const CompactDictionaryPanel = ({ schemaUrl = '_dictionary/_all' })=>{
|
|
|
3656
3644
|
/*#__PURE__*/ jsx(Table.Th, {
|
|
3657
3645
|
children: "Type"
|
|
3658
3646
|
}),
|
|
3659
|
-
/*#__PURE__*/ jsx(Table.Th, {})
|
|
3647
|
+
!isCompact && /*#__PURE__*/ jsx(Table.Th, {})
|
|
3660
3648
|
]
|
|
3661
3649
|
})
|
|
3662
3650
|
}),
|
|
@@ -3677,8 +3665,9 @@ const CompactDictionaryPanel = ({ schemaUrl = '_dictionary/_all' })=>{
|
|
|
3677
3665
|
children: info.type
|
|
3678
3666
|
})
|
|
3679
3667
|
}),
|
|
3680
|
-
/*#__PURE__*/ jsx(Table.Td, {
|
|
3668
|
+
!isCompact && /*#__PURE__*/ jsx(Table.Td, {
|
|
3681
3669
|
children: info.enum && /*#__PURE__*/ jsx(Scroller, {
|
|
3670
|
+
draggable: true,
|
|
3682
3671
|
children: /*#__PURE__*/ jsx(Group, {
|
|
3683
3672
|
gap: "xs",
|
|
3684
3673
|
wrap: "nowrap",
|
|
@@ -3690,6 +3679,7 @@ const CompactDictionaryPanel = ({ schemaUrl = '_dictionary/_all' })=>{
|
|
|
3690
3679
|
label: value,
|
|
3691
3680
|
className: "font-bold text-secondary-contrast",
|
|
3692
3681
|
color: "accent-light",
|
|
3682
|
+
noTruncate: true,
|
|
3693
3683
|
children: value
|
|
3694
3684
|
})
|
|
3695
3685
|
}, value))
|
|
@@ -3805,17 +3795,17 @@ const DataToolsPanel = ({ schemaUrl = DEFAULT_DICTIONARY_SCHEMA_URL, kbUrl })=>{
|
|
|
3805
3795
|
});
|
|
3806
3796
|
};
|
|
3807
3797
|
|
|
3808
|
-
const ToolsPanel = ({ expanded = true, setExpanded = ()=>{} })=>{
|
|
3798
|
+
const ToolsPanel = ({ expanded = true, setExpanded = ()=>{}, width = 310 })=>{
|
|
3809
3799
|
return /*#__PURE__*/ jsx(HorizontalAccordion, {
|
|
3810
3800
|
label: "Data & Tools",
|
|
3811
3801
|
expanded: expanded,
|
|
3812
3802
|
setExpanded: setExpanded,
|
|
3813
|
-
expandedWidth:
|
|
3803
|
+
expandedWidth: width,
|
|
3814
3804
|
children: /*#__PURE__*/ jsx(DataToolsPanel, {})
|
|
3815
3805
|
});
|
|
3816
3806
|
};
|
|
3817
3807
|
|
|
3818
|
-
const WorkspaceLayout = ({ children })=>{
|
|
3808
|
+
const WorkspaceLayout = ({ children, tierConfiguration })=>{
|
|
3819
3809
|
const workspaceTier = useCoreSelector((state)=>selectWorkspaceTier(state));
|
|
3820
3810
|
const [toolsExpanded, { set: setToolsExpanded }] = useDisclosure(true);
|
|
3821
3811
|
const [settingsExpanded, { set: setSettingsExpanded }] = useDisclosure(true);
|
|
@@ -3825,20 +3815,22 @@ const WorkspaceLayout = ({ children })=>{
|
|
|
3825
3815
|
className: "flex flex-col w-full grow",
|
|
3826
3816
|
children: [
|
|
3827
3817
|
/*#__PURE__*/ jsx(WorkspaceToolbar, {
|
|
3828
|
-
toolbarConfiguration:
|
|
3818
|
+
toolbarConfiguration: tierConfiguration.toolbar
|
|
3829
3819
|
}),
|
|
3830
3820
|
/*#__PURE__*/ jsxs("div", {
|
|
3831
3821
|
className: "flex w-full grow",
|
|
3832
3822
|
children: [
|
|
3833
|
-
|
|
3823
|
+
tierConfiguration.dataAndTools.enabled && /*#__PURE__*/ jsx(ToolsPanel, {
|
|
3834
3824
|
expanded: toolsExpanded && !isFullScreen,
|
|
3835
|
-
setExpanded: setToolsExpanded
|
|
3825
|
+
setExpanded: setToolsExpanded,
|
|
3826
|
+
width: tierConfiguration.dataAndTools.width
|
|
3836
3827
|
}),
|
|
3837
3828
|
children,
|
|
3838
3829
|
/*#__PURE__*/ jsx(SettingsPanel, {
|
|
3839
|
-
showKernels:
|
|
3830
|
+
showKernels: tierConfiguration.settings.showKernels,
|
|
3840
3831
|
expanded: settingsExpanded && !isFullScreen,
|
|
3841
|
-
setExpanded: setSettingsExpanded
|
|
3832
|
+
setExpanded: setSettingsExpanded,
|
|
3833
|
+
width: tierConfiguration.settings.width
|
|
3842
3834
|
})
|
|
3843
3835
|
]
|
|
3844
3836
|
})
|
|
@@ -3892,6 +3884,7 @@ const WorkspaceCenter = ({ workspaces, landingPage, tierConfiguration })=>{
|
|
|
3892
3884
|
}
|
|
3893
3885
|
if (workspaceTier === 'free') {
|
|
3894
3886
|
return /*#__PURE__*/ jsx(WorkspaceLayout, {
|
|
3887
|
+
tierConfiguration: tierConfiguration.free,
|
|
3895
3888
|
children: /*#__PURE__*/ jsx(FreeWorkspace, {})
|
|
3896
3889
|
});
|
|
3897
3890
|
}
|
|
@@ -3900,6 +3893,7 @@ const WorkspaceCenter = ({ workspaces, landingPage, tierConfiguration })=>{
|
|
|
3900
3893
|
children: /*#__PURE__*/ jsx(MicroContainerReduxProvider, {
|
|
3901
3894
|
enabled: true,
|
|
3902
3895
|
children: /*#__PURE__*/ jsx(WorkspaceLayout, {
|
|
3896
|
+
tierConfiguration: tierConfiguration.remote,
|
|
3903
3897
|
children: /*#__PURE__*/ jsx(RemoteComputeWorkspace, {
|
|
3904
3898
|
tenantId: authContext?.tenantId || 'default',
|
|
3905
3899
|
workspaceId: authContext?.workspaceId || 'workspace-default',
|
|
@@ -3943,22 +3937,60 @@ const DEFAULT_WORKSPACES_CONFIGURATION = {
|
|
|
3943
3937
|
workspaces: {},
|
|
3944
3938
|
tierConfiguration: {
|
|
3945
3939
|
free: {
|
|
3946
|
-
baseUrl: process.env.FREE_WORKSPACE_ASSETS_BASE_URL ?? '/api/workspace-assets/free'
|
|
3940
|
+
baseUrl: process.env.FREE_WORKSPACE_ASSETS_BASE_URL ?? '/api/workspace-assets/free',
|
|
3941
|
+
toolbar: {
|
|
3942
|
+
label: 'JupyterLite',
|
|
3943
|
+
description: 'Running via JupyterLite',
|
|
3944
|
+
showStop: false,
|
|
3945
|
+
showStatus: false
|
|
3946
|
+
},
|
|
3947
|
+
settings: {
|
|
3948
|
+
showKernels: false
|
|
3949
|
+
},
|
|
3950
|
+
dataAndTools: {
|
|
3951
|
+
enabled: true,
|
|
3952
|
+
tabs: [
|
|
3953
|
+
{
|
|
3954
|
+
label: 'Dictionary',
|
|
3955
|
+
description: 'Data Dictionary',
|
|
3956
|
+
app: 'dictionary'
|
|
3957
|
+
}
|
|
3958
|
+
],
|
|
3959
|
+
width: 300
|
|
3960
|
+
}
|
|
3947
3961
|
},
|
|
3948
3962
|
remote: {
|
|
3949
|
-
baseUrl: process.env.REMOTE_COMPUTE_WORKSPACE_ASSETS_BASE_URL ?? '/api/workspace-assets/remote'
|
|
3963
|
+
baseUrl: process.env.REMOTE_COMPUTE_WORKSPACE_ASSETS_BASE_URL ?? '/api/workspace-assets/remote',
|
|
3964
|
+
toolbar: {
|
|
3965
|
+
label: 'Remote Compute Environment',
|
|
3966
|
+
description: 'Running with Remote Kernels',
|
|
3967
|
+
showStop: true,
|
|
3968
|
+
showStatus: true
|
|
3969
|
+
},
|
|
3970
|
+
settings: {
|
|
3971
|
+
showKernels: true
|
|
3972
|
+
},
|
|
3973
|
+
dataAndTools: {
|
|
3974
|
+
enabled: true,
|
|
3975
|
+
tabs: [
|
|
3976
|
+
{
|
|
3977
|
+
label: 'Dictionary',
|
|
3978
|
+
description: 'Data Dictionary',
|
|
3979
|
+
app: 'dictionary'
|
|
3980
|
+
}
|
|
3981
|
+
]
|
|
3982
|
+
}
|
|
3950
3983
|
}
|
|
3951
3984
|
}
|
|
3952
3985
|
};
|
|
3953
3986
|
const WorkspacesCenterPageGetServerSideProps = async ()=>{
|
|
3954
3987
|
try {
|
|
3955
3988
|
const workspacesCenterConfiguration = await ContentSource.getContentDatabase().get(`${GEN3_COMMONS_NAME}/workspaces.json`);
|
|
3989
|
+
const mergedConfiguration = merge({}, DEFAULT_WORKSPACES_CONFIGURATION, workspacesCenterConfiguration);
|
|
3956
3990
|
return {
|
|
3957
3991
|
props: {
|
|
3958
3992
|
...await getNavPageLayoutPropsFromConfig(),
|
|
3959
|
-
configuration:
|
|
3960
|
-
...workspacesCenterConfiguration
|
|
3961
|
-
}
|
|
3993
|
+
configuration: mergedConfiguration
|
|
3962
3994
|
}
|
|
3963
3995
|
};
|
|
3964
3996
|
} catch (error) {
|