mod-arch-shared 0.1.9 → 1.0.0
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 +23 -268
- package/dist/__tests__/unit/jest.setup.d.ts +1 -0
- package/dist/__tests__/unit/jest.setup.d.ts.map +1 -1
- package/dist/__tests__/unit/jest.setup.js +3 -46
- package/dist/__tests__/unit/jest.setup.js.map +1 -1
- package/dist/components/WhosMyAdministrator.d.ts.map +1 -1
- package/dist/components/WhosMyAdministrator.js +5 -1
- package/dist/components/WhosMyAdministrator.js.map +1 -1
- package/dist/components/index.d.ts +0 -5
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +0 -5
- package/dist/components/index.js.map +1 -1
- package/dist/config/transform.file.d.ts +2 -1
- package/dist/config/transform.file.d.ts.map +1 -1
- package/dist/config/transform.file.js +2 -7
- package/dist/config/transform.file.js.map +1 -1
- package/dist/config/transform.style.js +1 -0
- package/dist/config/transform.style.js.map +1 -1
- package/dist/images/index.d.ts +2 -2
- package/dist/images/index.d.ts.map +1 -1
- package/dist/images/index.js +2 -2
- package/dist/images/index.js.map +1 -1
- package/dist/images/index.ts +2 -2
- package/dist/images/logo-odh-dark-theme.svg +18 -0
- package/dist/images/logo-odh-light-theme..svg +18 -0
- package/dist/images/logo-odh-light-theme.svg +18 -0
- package/dist/images/logo-odh-logo-light-theme.svg +18 -0
- package/dist/index.d.ts +0 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -15
- package/dist/index.js.map +1 -1
- package/dist/jest.config.d.ts +1 -0
- package/dist/jest.config.js +3 -1
- package/dist/jest.config.js.map +1 -1
- package/dist/types/common.d.ts +0 -43
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/common.js +0 -1
- package/dist/types/common.js.map +1 -1
- package/dist/utilities/__tests__/markdown.spec.d.ts +2 -0
- package/dist/utilities/__tests__/markdown.spec.d.ts.map +1 -0
- package/dist/utilities/__tests__/markdown.spec.js +17 -0
- package/dist/utilities/__tests__/markdown.spec.js.map +1 -0
- package/dist/utilities/__tests__/string.spec.d.ts +2 -0
- package/dist/utilities/__tests__/string.spec.d.ts.map +1 -0
- package/dist/utilities/__tests__/string.spec.js +51 -0
- package/dist/utilities/__tests__/string.spec.js.map +1 -0
- package/dist/utilities/__tests__/time.spec.d.ts +2 -0
- package/dist/utilities/__tests__/time.spec.d.ts.map +1 -0
- package/dist/utilities/__tests__/time.spec.js +61 -0
- package/dist/utilities/__tests__/time.spec.js.map +1 -0
- package/dist/utilities/index.d.ts +0 -5
- package/dist/utilities/index.d.ts.map +1 -1
- package/dist/utilities/index.js +0 -5
- package/dist/utilities/index.js.map +1 -1
- package/dist/utilities/utils.d.ts +0 -23
- package/dist/utilities/utils.d.ts.map +1 -1
- package/dist/utilities/utils.js +0 -93
- package/dist/utilities/utils.js.map +1 -1
- package/package.json +25 -36
- package/LICENSE +0 -201
- package/dist/__tests__/__mocks__/mockGenericResponse.d.ts +0 -8
- package/dist/__tests__/__mocks__/mockGenericResponse.d.ts.map +0 -1
- package/dist/__tests__/__mocks__/mockGenericResponse.js +0 -6
- package/dist/__tests__/__mocks__/mockGenericResponse.js.map +0 -1
- package/dist/__tests__/__mocks__/styleMock.d.ts +0 -2
- package/dist/__tests__/__mocks__/styleMock.d.ts.map +0 -1
- package/dist/__tests__/__mocks__/styleMock.js +0 -3
- package/dist/__tests__/__mocks__/styleMock.js.map +0 -1
- package/dist/__tests__/unit/testUtils/hooks.d.ts +0 -80
- package/dist/__tests__/unit/testUtils/hooks.d.ts.map +0 -1
- package/dist/__tests__/unit/testUtils/hooks.js +0 -126
- package/dist/__tests__/unit/testUtils/hooks.js.map +0 -1
- package/dist/__tests__/unit/testUtils/hooks.spec.d.ts +0 -2
- package/dist/__tests__/unit/testUtils/hooks.spec.d.ts.map +0 -1
- package/dist/__tests__/unit/testUtils/hooks.spec.js +0 -192
- package/dist/__tests__/unit/testUtils/hooks.spec.js.map +0 -1
- package/dist/api/__tests__/errorUtils.spec.d.ts +0 -2
- package/dist/api/__tests__/errorUtils.spec.d.ts.map +0 -1
- package/dist/api/__tests__/errorUtils.spec.js +0 -27
- package/dist/api/__tests__/errorUtils.spec.js.map +0 -1
- package/dist/api/apiUtils.d.ts +0 -16
- package/dist/api/apiUtils.d.ts.map +0 -1
- package/dist/api/apiUtils.js +0 -96
- package/dist/api/apiUtils.js.map +0 -1
- package/dist/api/const.d.ts +0 -3
- package/dist/api/const.d.ts.map +0 -1
- package/dist/api/const.js +0 -4
- package/dist/api/const.js.map +0 -1
- package/dist/api/errorUtils.d.ts +0 -2
- package/dist/api/errorUtils.d.ts.map +0 -1
- package/dist/api/errorUtils.js +0 -22
- package/dist/api/errorUtils.js.map +0 -1
- package/dist/api/index.d.ts +0 -7
- package/dist/api/index.d.ts.map +0 -1
- package/dist/api/index.js +0 -8
- package/dist/api/index.js.map +0 -1
- package/dist/api/k8s.d.ts +0 -10
- package/dist/api/k8s.d.ts.map +0 -1
- package/dist/api/k8s.js +0 -16
- package/dist/api/k8s.js.map +0 -1
- package/dist/api/types.d.ts +0 -19
- package/dist/api/types.d.ts.map +0 -1
- package/dist/api/types.js +0 -2
- package/dist/api/types.js.map +0 -1
- package/dist/api/useAPIState.d.ts +0 -3
- package/dist/api/useAPIState.d.ts.map +0 -1
- package/dist/api/useAPIState.js +0 -22
- package/dist/api/useAPIState.js.map +0 -1
- package/dist/components/NavBar.d.ts +0 -8
- package/dist/components/NavBar.d.ts.map +0 -1
- package/dist/components/NavBar.js +0 -53
- package/dist/components/NavBar.js.map +0 -1
- package/dist/components/NavSidebar.d.ts +0 -8
- package/dist/components/NavSidebar.d.ts.map +0 -1
- package/dist/components/NavSidebar.js +0 -25
- package/dist/components/NavSidebar.js.map +0 -1
- package/dist/components/ToastNotification.d.ts +0 -8
- package/dist/components/ToastNotification.d.ts.map +0 -1
- package/dist/components/ToastNotification.js +0 -29
- package/dist/components/ToastNotification.js.map +0 -1
- package/dist/components/ToastNotifications.d.ts +0 -4
- package/dist/components/ToastNotifications.d.ts.map +0 -1
- package/dist/components/ToastNotifications.js +0 -10
- package/dist/components/ToastNotifications.js.map +0 -1
- package/dist/components/__tests__/NavBar.test.d.ts +0 -2
- package/dist/components/__tests__/NavBar.test.d.ts.map +0 -1
- package/dist/components/__tests__/NavBar.test.js +0 -65
- package/dist/components/__tests__/NavBar.test.js.map +0 -1
- package/dist/components/browserStorage/BrowserStorageContext.d.ts +0 -25
- package/dist/components/browserStorage/BrowserStorageContext.d.ts.map +0 -1
- package/dist/components/browserStorage/BrowserStorageContext.js +0 -97
- package/dist/components/browserStorage/BrowserStorageContext.js.map +0 -1
- package/dist/components/browserStorage/index.d.ts +0 -2
- package/dist/components/browserStorage/index.d.ts.map +0 -1
- package/dist/components/browserStorage/index.js +0 -2
- package/dist/components/browserStorage/index.js.map +0 -1
- package/dist/components/table/__tests__/useCheckboxTable.spec.d.ts +0 -2
- package/dist/components/table/__tests__/useCheckboxTable.spec.d.ts.map +0 -1
- package/dist/components/table/__tests__/useCheckboxTable.spec.js +0 -45
- package/dist/components/table/__tests__/useCheckboxTable.spec.js.map +0 -1
- package/dist/config/stylePaths.d.ts +0 -2
- package/dist/config/stylePaths.d.ts.map +0 -1
- package/dist/config/stylePaths.js +0 -17
- package/dist/config/stylePaths.js.map +0 -1
- package/dist/context/ModularArchContext.d.ts +0 -20
- package/dist/context/ModularArchContext.d.ts.map +0 -1
- package/dist/context/ModularArchContext.js +0 -68
- package/dist/context/ModularArchContext.js.map +0 -1
- package/dist/context/NotificationContext.d.ts +0 -15
- package/dist/context/NotificationContext.d.ts.map +0 -1
- package/dist/context/NotificationContext.js +0 -43
- package/dist/context/NotificationContext.js.map +0 -1
- package/dist/context/ThemeContext.d.ts +0 -13
- package/dist/context/ThemeContext.d.ts.map +0 -1
- package/dist/context/ThemeContext.js +0 -23
- package/dist/context/ThemeContext.js.map +0 -1
- package/dist/context/__tests__/ModularArchContext.test.d.ts +0 -2
- package/dist/context/__tests__/ModularArchContext.test.d.ts.map +0 -1
- package/dist/context/__tests__/ModularArchContext.test.js +0 -331
- package/dist/context/__tests__/ModularArchContext.test.js.map +0 -1
- package/dist/context/index.d.ts +0 -4
- package/dist/context/index.d.ts.map +0 -1
- package/dist/context/index.js +0 -4
- package/dist/context/index.js.map +0 -1
- package/dist/hooks/__tests__/useModularArchContext.test.d.ts +0 -2
- package/dist/hooks/__tests__/useModularArchContext.test.d.ts.map +0 -1
- package/dist/hooks/__tests__/useModularArchContext.test.js +0 -39
- package/dist/hooks/__tests__/useModularArchContext.test.js.map +0 -1
- package/dist/hooks/__tests__/useNamespaces.test.d.ts +0 -2
- package/dist/hooks/__tests__/useNamespaces.test.d.ts.map +0 -1
- package/dist/hooks/__tests__/useNamespaces.test.js +0 -62
- package/dist/hooks/__tests__/useNamespaces.test.js.map +0 -1
- package/dist/hooks/index.d.ts +0 -9
- package/dist/hooks/index.d.ts.map +0 -1
- package/dist/hooks/index.js +0 -9
- package/dist/hooks/index.js.map +0 -1
- package/dist/hooks/useModularArchContext.d.ts +0 -5
- package/dist/hooks/useModularArchContext.d.ts.map +0 -1
- package/dist/hooks/useModularArchContext.js +0 -11
- package/dist/hooks/useModularArchContext.js.map +0 -1
- package/dist/hooks/useNamespaceSelector.d.ts +0 -10
- package/dist/hooks/useNamespaceSelector.d.ts.map +0 -1
- package/dist/hooks/useNamespaceSelector.js +0 -13
- package/dist/hooks/useNamespaceSelector.js.map +0 -1
- package/dist/hooks/useNamespaces.d.ts +0 -6
- package/dist/hooks/useNamespaces.d.ts.map +0 -1
- package/dist/hooks/useNamespaces.js +0 -34
- package/dist/hooks/useNamespaces.js.map +0 -1
- package/dist/hooks/useNotification.d.ts +0 -18
- package/dist/hooks/useNotification.d.ts.map +0 -1
- package/dist/hooks/useNotification.js +0 -75
- package/dist/hooks/useNotification.js.map +0 -1
- package/dist/hooks/useQueryParamNamespaces.d.ts +0 -2
- package/dist/hooks/useQueryParamNamespaces.d.ts.map +0 -1
- package/dist/hooks/useQueryParamNamespaces.js +0 -9
- package/dist/hooks/useQueryParamNamespaces.js.map +0 -1
- package/dist/hooks/useSettings.d.ts +0 -9
- package/dist/hooks/useSettings.d.ts.map +0 -1
- package/dist/hooks/useSettings.js +0 -72
- package/dist/hooks/useSettings.js.map +0 -1
- package/dist/hooks/useThemeContext.d.ts +0 -6
- package/dist/hooks/useThemeContext.d.ts.map +0 -1
- package/dist/hooks/useThemeContext.js +0 -10
- package/dist/hooks/useThemeContext.js.map +0 -1
- package/dist/hooks/useTimeBasedRefresh.d.ts +0 -4
- package/dist/hooks/useTimeBasedRefresh.d.ts.map +0 -1
- package/dist/hooks/useTimeBasedRefresh.js +0 -32
- package/dist/hooks/useTimeBasedRefresh.js.map +0 -1
- package/dist/images/logo-dark-theme.svg +0 -43
- package/dist/images/logo-light-theme.svg +0 -43
- package/dist/style/MUI-theme.scss +0 -995
- package/dist/style/index.d.ts +0 -2
- package/dist/style/index.d.ts.map +0 -1
- package/dist/style/index.js +0 -6
- package/dist/style/index.js.map +0 -1
- package/dist/style/index.ts +0 -6
- package/dist/utilities/appUtils.d.ts +0 -2
- package/dist/utilities/appUtils.d.ts.map +0 -1
- package/dist/utilities/appUtils.js +0 -4
- package/dist/utilities/appUtils.js.map +0 -1
- package/dist/utilities/const.d.ts +0 -13
- package/dist/utilities/const.d.ts.map +0 -1
- package/dist/utilities/const.js +0 -20
- package/dist/utilities/const.js.map +0 -1
- package/dist/utilities/useFetchState.d.ts +0 -92
- package/dist/utilities/useFetchState.d.ts.map +0 -1
- package/dist/utilities/useFetchState.js +0 -153
- package/dist/utilities/useFetchState.js.map +0 -1
- package/dist/utilities/useGenericObjectState.d.ts +0 -9
- package/dist/utilities/useGenericObjectState.d.ts.map +0 -1
- package/dist/utilities/useGenericObjectState.js +0 -14
- package/dist/utilities/useGenericObjectState.js.map +0 -1
- package/dist/utilities/useMakeFetchObject.d.ts +0 -4
- package/dist/utilities/useMakeFetchObject.d.ts.map +0 -1
- package/dist/utilities/useMakeFetchObject.js +0 -6
- package/dist/utilities/useMakeFetchObject.js.map +0 -1
- package/images/Icon-Layered_A_Black-RGB.svg +0 -66
- package/images/Icon-Storage-A-Black-RGB.svg +0 -3
- package/images/Icon-Sys_admin-A-Black-RGB.svg +0 -8
- package/images/UI_icon-Branch-RGB.svg +0 -1
- package/images/UI_icon-Connected-RGB.svg +0 -1
- package/images/UI_icon-Cubes-RGB.svg +0 -1
- package/images/UI_icon-Double_arrow_right-RGB.svg +0 -1
- package/images/UI_icon-Folder-RGB.svg +0 -1
- package/images/UI_icon-Notebook-Images-RGB.svg +0 -9
- package/images/UI_icon-Server-RGB.svg +0 -1
- package/images/UI_icon-Server_upload-RGB.svg +0 -1
- package/images/UI_icon-Shared_workspace-RGB.svg +0 -8
- package/images/UI_icon-Storage-RGB.svg +0 -1
- package/images/UI_icon-User-RGB.svg +0 -1
- package/images/UI_icon-Wrench-RGB.svg +0 -1
- package/images/empty-state-cluster-storage.svg +0 -472
- package/images/empty-state-data-connections.svg +0 -299
- package/images/empty-state-model-registries.svg +0 -9
- package/images/empty-state-model-serving.svg +0 -249
- package/images/empty-state-notebooks.svg +0 -392
- package/images/empty-state-pipelines.svg +0 -393
- package/images/empty-state-project-overview.svg +0 -482
- package/images/empty-state-projects-color.svg +0 -275
- package/images/empty-state-storage-classes.svg +0 -56
- package/images/icons/AcceleratorProfileIcon.ts +0 -13
- package/images/icons/ArtifactIcon.ts +0 -13
- package/images/icons/BuildIcon.ts +0 -13
- package/images/icons/ClusterSettingsIcon.ts +0 -13
- package/images/icons/ConfigurationIcon.ts +0 -13
- package/images/icons/CreateAndTrainIcon.ts +0 -13
- package/images/icons/DataConnectionIcon.ts +0 -13
- package/images/icons/DeployedModelIcon.ts +0 -13
- package/images/icons/DistributedWorkloadIcon.ts +0 -13
- package/images/icons/EnabledApplicationsIcon.ts +0 -13
- package/images/icons/ExperimentIcon.ts +0 -13
- package/images/icons/ExploreApplicationsIcon.ts +0 -13
- package/images/icons/GroupIcon.ts +0 -13
- package/images/icons/ModelIcon.ts +0 -13
- package/images/icons/ModelRegistryIcon.ts +0 -13
- package/images/icons/ModelServerIcon.ts +0 -13
- package/images/icons/MultiModelIcon.ts +0 -13
- package/images/icons/NotebookIcon.ts +0 -13
- package/images/icons/NotebookImageIcon.ts +0 -13
- package/images/icons/PermissionsIcon.ts +0 -13
- package/images/icons/PipelineExecutionIcon.ts +0 -13
- package/images/icons/PipelineIcon.ts +0 -13
- package/images/icons/PipelineRunIcon.ts +0 -13
- package/images/icons/ProjectIcon.ts +0 -13
- package/images/icons/RegisteredModelIcon.ts +0 -13
- package/images/icons/ResourcesIcon.ts +0 -13
- package/images/icons/ServingRuntimeIcon.ts +0 -13
- package/images/icons/SingleModelIcon.ts +0 -13
- package/images/icons/StorageClassIcon.ts +0 -13
- package/images/icons/StorageIcon.ts +0 -13
- package/images/icons/UserIcon.ts +0 -13
- package/images/icons/index.ts +0 -31
- package/images/index.ts +0 -62
- package/images/logo-dark-theme.svg +0 -43
- package/images/logo-light-theme.svg +0 -43
- package/images/no-models-model-registry.svg +0 -180
- package/images/no-versions-model-registry.svg +0 -149
- package/style/MUI-theme.scss +0 -995
- package/style/index.ts +0 -6
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { Brand, Dropdown, DropdownItem, DropdownList, Masthead, MastheadBrand, MastheadContent, MastheadLogo, MastheadMain, MastheadToggle, MenuToggle, PageToggleButton, Toolbar, ToolbarContent, ToolbarGroup, ToolbarItem, } from '@patternfly/react-core';
|
|
3
|
-
import { SimpleSelect } from '@patternfly/react-templates';
|
|
4
|
-
import { BarsIcon } from '@patternfly/react-icons';
|
|
5
|
-
import { useNamespaceSelector } from '../hooks/useNamespaceSelector';
|
|
6
|
-
import { useModularArchContext } from '../hooks/useModularArchContext';
|
|
7
|
-
import logoDarkTheme from '../images/logo-dark-theme.svg';
|
|
8
|
-
import { useThemeContext } from '../hooks/useThemeContext';
|
|
9
|
-
const NavBar = ({ username, onLogout }) => {
|
|
10
|
-
const { namespaces, preferredNamespace, updatePreferredNamespace } = useNamespaceSelector();
|
|
11
|
-
const { config } = useModularArchContext();
|
|
12
|
-
const { isMUITheme } = useThemeContext();
|
|
13
|
-
const [userMenuOpen, setUserMenuOpen] = React.useState(false);
|
|
14
|
-
// Check if mandatory namespace is configured
|
|
15
|
-
const isMandatoryNamespace = Boolean(config.mandatoryNamespace);
|
|
16
|
-
const options = namespaces.map((namespace) => ({
|
|
17
|
-
content: namespace.name,
|
|
18
|
-
value: namespace.name,
|
|
19
|
-
selected: namespace.name === preferredNamespace?.name,
|
|
20
|
-
}));
|
|
21
|
-
const handleLogout = () => {
|
|
22
|
-
setUserMenuOpen(false);
|
|
23
|
-
onLogout();
|
|
24
|
-
};
|
|
25
|
-
const userMenuItems = [
|
|
26
|
-
React.createElement(DropdownItem, { key: "logout", onClick: handleLogout }, "Log out"),
|
|
27
|
-
];
|
|
28
|
-
return (React.createElement(Masthead, null,
|
|
29
|
-
React.createElement(MastheadMain, null,
|
|
30
|
-
React.createElement(MastheadToggle, null,
|
|
31
|
-
React.createElement(PageToggleButton, { id: "page-nav-toggle", variant: "plain", "aria-label": "Dashboard navigation" },
|
|
32
|
-
React.createElement(BarsIcon, null))),
|
|
33
|
-
!isMUITheme ? (React.createElement(MastheadBrand, null,
|
|
34
|
-
React.createElement(MastheadLogo, { component: "a" },
|
|
35
|
-
React.createElement(Brand, { src: logoDarkTheme, alt: "Kubeflow", heights: { default: '36px' } })))) : null),
|
|
36
|
-
React.createElement(MastheadContent, null,
|
|
37
|
-
React.createElement(Toolbar, null,
|
|
38
|
-
React.createElement(ToolbarContent, null,
|
|
39
|
-
React.createElement(ToolbarGroup, { variant: "action-group-plain", align: { default: 'alignStart' } },
|
|
40
|
-
React.createElement(ToolbarItem, { className: "kubeflow-u-namespace-select" },
|
|
41
|
-
React.createElement(SimpleSelect, { initialOptions: options, isDisabled: isMandatoryNamespace, onSelect: (_ev, selection) => {
|
|
42
|
-
// Only allow selection if not mandatory namespace
|
|
43
|
-
if (!isMandatoryNamespace) {
|
|
44
|
-
updatePreferredNamespace({ name: String(selection) });
|
|
45
|
-
}
|
|
46
|
-
} }))),
|
|
47
|
-
username && (React.createElement(ToolbarGroup, { variant: "action-group-plain", align: { default: 'alignEnd' } },
|
|
48
|
-
React.createElement(ToolbarItem, null,
|
|
49
|
-
React.createElement(Dropdown, { popperProps: { position: 'right' }, onOpenChange: (isOpen) => setUserMenuOpen(isOpen), toggle: (toggleRef) => (React.createElement(MenuToggle, { "aria-label": "User menu", id: "user-menu-toggle", "data-testid": "user-menu-toggle-button", ref: toggleRef, onClick: () => setUserMenuOpen(!userMenuOpen), isExpanded: userMenuOpen }, username)), isOpen: userMenuOpen },
|
|
50
|
-
React.createElement(DropdownList, null, userMenuItems))))))))));
|
|
51
|
-
};
|
|
52
|
-
export default NavBar;
|
|
53
|
-
//# sourceMappingURL=NavBar.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavBar.js","sourceRoot":"","sources":["../../components/NavBar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { NavDataItem } from '../types/common';
|
|
3
|
-
export type NavSidebarProps = {
|
|
4
|
-
navData: NavDataItem[];
|
|
5
|
-
};
|
|
6
|
-
declare const NavSidebar: React.FC<NavSidebarProps>;
|
|
7
|
-
export default NavSidebar;
|
|
8
|
-
//# sourceMappingURL=NavSidebar.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavSidebar.d.ts","sourceRoot":"","sources":["../../components/NavSidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAY/B,OAAO,EAA6C,WAAW,EAAE,MAAM,gBAAgB,CAAC;AA+BxF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB,CAAC;AAEF,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAwBzC,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { NavLink } from 'react-router-dom';
|
|
3
|
-
import { Brand, Nav, NavExpandable, NavItem, NavList, PageSidebar, PageSidebarBody, } from '@patternfly/react-core';
|
|
4
|
-
import logoLightTheme from '../images/logo-light-theme.svg';
|
|
5
|
-
import { isNavDataGroup } from '../types/common';
|
|
6
|
-
import { useThemeContext } from '../hooks/useThemeContext';
|
|
7
|
-
const NavHref = ({ item }) => (React.createElement(NavItem, { key: item.label, "data-id": item.label, itemId: item.label },
|
|
8
|
-
React.createElement(NavLink, { to: item.path }, item.label)));
|
|
9
|
-
const NavGroup = ({ item }) => {
|
|
10
|
-
const { children } = item;
|
|
11
|
-
const [expanded, setExpanded] = React.useState(false);
|
|
12
|
-
return (React.createElement(NavExpandable, { "data-id": item.label, key: item.label, id: item.label, title: item.label, groupId: item.label, isExpanded: expanded, onExpand: (e, val) => setExpanded(val), "aria-label": item.label }, children.map((childItem) => (React.createElement(NavHref, { key: childItem.label, "data-id": childItem.label, item: childItem })))));
|
|
13
|
-
};
|
|
14
|
-
const NavSidebar = ({ navData }) => {
|
|
15
|
-
const { isMUITheme } = useThemeContext();
|
|
16
|
-
return (React.createElement(PageSidebar, null,
|
|
17
|
-
React.createElement(PageSidebarBody, null,
|
|
18
|
-
React.createElement(Nav, { id: "nav-primary-simple" },
|
|
19
|
-
React.createElement(NavList, { id: "nav-list-simple" },
|
|
20
|
-
isMUITheme ? (React.createElement(NavItem, null,
|
|
21
|
-
React.createElement(Brand, { className: "kubeflow_brand", src: logoLightTheme, alt: "Kubeflow Logo" }))) : null,
|
|
22
|
-
navData.map((item) => isNavDataGroup(item) ? (React.createElement(NavGroup, { key: item.label, item: item })) : (React.createElement(NavHref, { key: item.label, item: item }))))))));
|
|
23
|
-
};
|
|
24
|
-
export default NavSidebar;
|
|
25
|
-
//# sourceMappingURL=NavSidebar.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavSidebar.js","sourceRoot":"","sources":["../../components/NavSidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EACL,KAAK,EACL,GAAG,EACH,aAAa,EACb,OAAO,EACP,OAAO,EACP,WAAW,EACX,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAChC,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAA0C,MAAM,gBAAgB,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,MAAM,OAAO,GAAoC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAC7D,oBAAC,OAAO,IAAC,GAAG,EAAE,IAAI,CAAC,KAAK,aAAW,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK;IAC/D,oBAAC,OAAO,IAAC,EAAE,EAAE,IAAI,CAAC,IAAI,IAAG,IAAI,CAAC,KAAK,CAAW,CACtC,CACX,CAAC;AAEF,MAAM,QAAQ,GAAqC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IAC9D,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAC1B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,OAAO,CACL,oBAAC,aAAa,eACH,IAAI,CAAC,KAAK,EACnB,GAAG,EAAE,IAAI,CAAC,KAAK,EACf,EAAE,EAAE,IAAI,CAAC,KAAK,EACd,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,KAAK,EACnB,UAAU,EAAE,QAAQ,EACpB,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,gBAC1B,IAAI,CAAC,KAAK,IAErB,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAC3B,oBAAC,OAAO,IAAC,GAAG,EAAE,SAAS,CAAC,KAAK,aAAW,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,GAAI,CAC7E,CAAC,CACY,CACjB,CAAC;AACJ,CAAC,CAAC;AAMF,MAAM,UAAU,GAA8B,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAC5D,MAAM,EAAE,UAAU,EAAE,GAAG,eAAe,EAAE,CAAC;IACzC,OAAO,CACL,oBAAC,WAAW;QACV,oBAAC,eAAe;YACd,oBAAC,GAAG,IAAC,EAAE,EAAC,oBAAoB;gBAC1B,oBAAC,OAAO,IAAC,EAAE,EAAC,iBAAiB;oBAC1B,UAAU,CAAC,CAAC,CAAC,CACZ,oBAAC,OAAO;wBACN,oBAAC,KAAK,IAAC,SAAS,EAAC,gBAAgB,EAAC,GAAG,EAAE,cAAc,EAAE,GAAG,EAAC,eAAe,GAAG,CACrE,CACX,CAAC,CAAC,CAAC,IAAI;oBACP,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACpB,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACrB,oBAAC,QAAQ,IAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,GAAI,CAC1C,CAAC,CAAC,CAAC,CACF,oBAAC,OAAO,IAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,GAAI,CACzC,CACF,CACO,CACN,CACU,CACN,CACf,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { Notification } from '../types';
|
|
3
|
-
interface ToastNotificationProps {
|
|
4
|
-
notification: Notification;
|
|
5
|
-
}
|
|
6
|
-
declare const ToastNotification: React.FC<ToastNotificationProps>;
|
|
7
|
-
export default ToastNotification;
|
|
8
|
-
//# sourceMappingURL=ToastNotification.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToastNotification.d.ts","sourceRoot":"","sources":["../../components/ToastNotification.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAMvC,UAAU,sBAAsB;IAC9B,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,QAAA,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAmCvD,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { Alert, AlertActionCloseButton, AlertVariant } from '@patternfly/react-core';
|
|
3
|
-
import { asEnumMember } from '../utilities/utils';
|
|
4
|
-
import { useNotification } from '../hooks/useNotification';
|
|
5
|
-
const TOAST_NOTIFICATION_TIMEOUT = 8 * 1000;
|
|
6
|
-
const ToastNotification = ({ notification }) => {
|
|
7
|
-
const notifications = useNotification();
|
|
8
|
-
const [timedOut, setTimedOut] = React.useState(false);
|
|
9
|
-
const [mouseOver, setMouseOver] = React.useState(false);
|
|
10
|
-
React.useEffect(() => {
|
|
11
|
-
const handle = setTimeout(() => {
|
|
12
|
-
setTimedOut(true);
|
|
13
|
-
}, TOAST_NOTIFICATION_TIMEOUT);
|
|
14
|
-
return () => {
|
|
15
|
-
clearTimeout(handle);
|
|
16
|
-
};
|
|
17
|
-
}, [setTimedOut]);
|
|
18
|
-
React.useEffect(() => {
|
|
19
|
-
if (!notification.hidden && timedOut && !mouseOver) {
|
|
20
|
-
notifications.remove(notification.id);
|
|
21
|
-
}
|
|
22
|
-
}, [mouseOver, notification, timedOut, notifications]);
|
|
23
|
-
if (notification.hidden) {
|
|
24
|
-
return null;
|
|
25
|
-
}
|
|
26
|
-
return (React.createElement(Alert, { variant: asEnumMember(notification.status, AlertVariant) ?? undefined, title: notification.title, actionClose: React.createElement(AlertActionCloseButton, { onClose: () => notifications.remove(notification.id) }), onMouseEnter: () => setMouseOver(true), onMouseLeave: () => setMouseOver(false) }, notification.message));
|
|
27
|
-
};
|
|
28
|
-
export default ToastNotification;
|
|
29
|
-
//# sourceMappingURL=ToastNotification.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToastNotification.js","sourceRoot":"","sources":["../../components/ToastNotification.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAErF,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,MAAM,0BAA0B,GAAG,CAAC,GAAG,IAAI,CAAC;AAM5C,MAAM,iBAAiB,GAAqC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE;IAC/E,MAAM,aAAa,GAAG,eAAe,EAAE,CAAC;IACxC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE;YAC7B,WAAW,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC,EAAE,0BAA0B,CAAC,CAAC;QAC/B,OAAO,GAAG,EAAE;YACV,YAAY,CAAC,MAAM,CAAC,CAAC;QACvB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;YACnD,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACxC,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;IAEvD,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,oBAAC,KAAK,IACJ,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,SAAS,EACrE,KAAK,EAAE,YAAY,CAAC,KAAK,EACzB,WAAW,EAAE,oBAAC,sBAAsB,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,GAAI,EAC7F,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EACtC,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,IAEtC,YAAY,CAAC,OAAO,CACf,CACT,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToastNotifications.d.ts","sourceRoot":"","sources":["../../components/ToastNotifications.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAK1C,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAU/B,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import React, { useContext } from 'react';
|
|
2
|
-
import { AlertGroup } from '@patternfly/react-core';
|
|
3
|
-
import { NotificationContext } from '../context/NotificationContext';
|
|
4
|
-
import ToastNotification from './ToastNotification';
|
|
5
|
-
const ToastNotifications = () => {
|
|
6
|
-
const { notifications } = useContext(NotificationContext);
|
|
7
|
-
return (React.createElement(AlertGroup, { isToast: true, isLiveRegion: true }, notifications.map((notification) => (React.createElement(ToastNotification, { notification: notification, key: notification.id })))));
|
|
8
|
-
};
|
|
9
|
-
export default ToastNotifications;
|
|
10
|
-
//# sourceMappingURL=ToastNotifications.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToastNotifications.js","sourceRoot":"","sources":["../../components/ToastNotifications.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAEpD,MAAM,kBAAkB,GAAa,GAAG,EAAE;IACxC,MAAM,EAAE,aAAa,EAAE,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;IAE1D,OAAO,CACL,oBAAC,UAAU,IAAC,OAAO,QAAC,YAAY,UAC7B,aAAa,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CACnC,oBAAC,iBAAiB,IAAC,YAAY,EAAE,YAAY,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,GAAI,CACxE,CAAC,CACS,CACd,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavBar.test.d.ts","sourceRoot":"","sources":["../../../components/__tests__/NavBar.test.tsx"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC"}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import '@testing-library/jest-dom';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
import { render, screen } from '@testing-library/react';
|
|
4
|
-
import * as useFetchStateModule from '../../utilities/useFetchState';
|
|
5
|
-
import { ModularArchContextProvider } from '../../context/ModularArchContext';
|
|
6
|
-
import { DeploymentMode } from '../../utilities';
|
|
7
|
-
import NavBar from '../NavBar';
|
|
8
|
-
// Mock the utilities
|
|
9
|
-
jest.mock('~/utilities/useFetchState');
|
|
10
|
-
jest.mock('~/api/k8s', () => ({
|
|
11
|
-
getNamespaces: jest.fn(() => jest.fn(() => Promise.resolve([]))),
|
|
12
|
-
}));
|
|
13
|
-
const mockUseFetchState = useFetchStateModule.useFetchState;
|
|
14
|
-
const createMockConfig = (mandatoryNamespace, deploymentMode = DeploymentMode.Standalone) => ({
|
|
15
|
-
deploymentMode,
|
|
16
|
-
URL_PREFIX: 'test',
|
|
17
|
-
BFF_API_VERSION: 'v1',
|
|
18
|
-
...(mandatoryNamespace && { mandatoryNamespace }),
|
|
19
|
-
});
|
|
20
|
-
const createWrapper = (config) => {
|
|
21
|
-
const Wrapper = ({ children }) => (React.createElement(ModularArchContextProvider, { config: config }, children));
|
|
22
|
-
Wrapper.displayName = 'TestWrapper';
|
|
23
|
-
return Wrapper;
|
|
24
|
-
};
|
|
25
|
-
describe('NavBar mandatory namespace functionality', () => {
|
|
26
|
-
beforeEach(() => {
|
|
27
|
-
jest.clearAllMocks();
|
|
28
|
-
// Mock fetch for script loading
|
|
29
|
-
global.fetch = jest.fn().mockResolvedValue({ ok: false });
|
|
30
|
-
});
|
|
31
|
-
afterEach(() => {
|
|
32
|
-
jest.restoreAllMocks();
|
|
33
|
-
// Clean up fetch stub explicitly
|
|
34
|
-
// @ts-expect-error – fetch might be undefined in node
|
|
35
|
-
delete global.fetch;
|
|
36
|
-
});
|
|
37
|
-
it('should disable namespace selection when mandatory namespace is set', async () => {
|
|
38
|
-
const mandatoryNamespace = 'mandatory-namespace';
|
|
39
|
-
const config = createMockConfig(mandatoryNamespace);
|
|
40
|
-
const Wrapper = createWrapper(config);
|
|
41
|
-
// Mock useFetchState to return only the mandatory namespace
|
|
42
|
-
mockUseFetchState.mockReturnValue([[{ name: mandatoryNamespace }], true, undefined, jest.fn()]);
|
|
43
|
-
render(React.createElement(NavBar, { onLogout: jest.fn() }), { wrapper: Wrapper });
|
|
44
|
-
const namespaceButton = await screen.findByText(mandatoryNamespace);
|
|
45
|
-
expect(namespaceButton).toBeInTheDocument();
|
|
46
|
-
// The MenuToggle button should be disabled due to mandatory namespace
|
|
47
|
-
const menuToggle = namespaceButton.closest('button');
|
|
48
|
-
expect(menuToggle).toBeDisabled();
|
|
49
|
-
});
|
|
50
|
-
it('should allow namespace selection when no mandatory namespace is set', async () => {
|
|
51
|
-
const config = createMockConfig();
|
|
52
|
-
const Wrapper = createWrapper(config);
|
|
53
|
-
const mockNamespaces = [{ name: 'namespace-1' }, { name: 'namespace-2' }];
|
|
54
|
-
// Mock useFetchState to return multiple namespaces
|
|
55
|
-
mockUseFetchState.mockReturnValue([mockNamespaces, true, undefined, jest.fn()]);
|
|
56
|
-
render(React.createElement(NavBar, { onLogout: jest.fn() }), { wrapper: Wrapper });
|
|
57
|
-
// Check that the namespace selector is present and enabled
|
|
58
|
-
const namespaceButton = screen.getByText('namespace-1');
|
|
59
|
-
expect(namespaceButton).toBeInTheDocument();
|
|
60
|
-
// The MenuToggle button should be enabled (not disabled)
|
|
61
|
-
const menuToggle = namespaceButton.closest('button');
|
|
62
|
-
expect(menuToggle).not.toBeDisabled();
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
//# sourceMappingURL=NavBar.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavBar.test.js","sourceRoot":"","sources":["../../../components/__tests__/NavBar.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
export type BrowserStorageContextType = {
|
|
3
|
-
/** Based on parseJSON it can be any jsonify-able item */
|
|
4
|
-
getValue: (storageKey: string, parseJSON: boolean, isSessionStorage?: boolean) => unknown;
|
|
5
|
-
/** Returns a boolean if it was able to json-ify it. */
|
|
6
|
-
setJSONValue: (storageKey: string, value: unknown, isSessionStorage?: boolean) => boolean;
|
|
7
|
-
setStringValue: (storageKey: string, value: string, isSessionStorage?: boolean) => void;
|
|
8
|
-
};
|
|
9
|
-
/**
|
|
10
|
-
* @returns {boolean} if it was successful, false if it was not
|
|
11
|
-
*/
|
|
12
|
-
export type SetBrowserStorageHook<T> = (value: T) => boolean;
|
|
13
|
-
/**
|
|
14
|
-
* useBrowserStorage will handle all the effort behind managing localStorage or sessionStorage.
|
|
15
|
-
*/
|
|
16
|
-
export declare const useBrowserStorage: <T>(storageKey: string, defaultValue: T, jsonify?: boolean, isSessionStorage?: boolean) => [T, SetBrowserStorageHook<T>];
|
|
17
|
-
type BrowserStorageContextProviderProps = {
|
|
18
|
-
children: React.ReactNode;
|
|
19
|
-
};
|
|
20
|
-
/**
|
|
21
|
-
* @see useBrowserStorage
|
|
22
|
-
*/
|
|
23
|
-
export declare const BrowserStorageContextProvider: React.FC<BrowserStorageContextProviderProps>;
|
|
24
|
-
export {};
|
|
25
|
-
//# sourceMappingURL=BrowserStorageContext.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BrowserStorageContext.d.ts","sourceRoot":"","sources":["../../../components/browserStorage/BrowserStorageContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,MAAM,yBAAyB,GAAG;IACtC,yDAAyD;IACzD,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,gBAAgB,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;IAC1F,uDAAuD;IACvD,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAgB,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;IAC1F,cAAc,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACzF,CAAC;AAQF;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC;AAE7D;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,CAAC,EACjC,YAAY,MAAM,EAClB,cAAc,CAAC,EACf,iBAAc,EACd,0BAAwB,KACvB,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAwB9B,CAAC;AAEF,KAAK,kCAAkC,GAAG;IACxC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAUF;;GAEG;AACH,eAAO,MAAM,6BAA6B,EAAE,KAAK,CAAC,EAAE,CAAC,kCAAkC,CA+EtF,CAAC"}
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { useDeepCompareMemoize } from '../../utilities/useDeepCompareMemoize';
|
|
3
|
-
import { useEventListener } from '../../utilities/useEventListener';
|
|
4
|
-
const BrowserStorageContext = React.createContext({
|
|
5
|
-
getValue: () => null,
|
|
6
|
-
setJSONValue: () => false,
|
|
7
|
-
setStringValue: () => undefined,
|
|
8
|
-
});
|
|
9
|
-
/**
|
|
10
|
-
* useBrowserStorage will handle all the effort behind managing localStorage or sessionStorage.
|
|
11
|
-
*/
|
|
12
|
-
export const useBrowserStorage = (storageKey, defaultValue, jsonify = true, isSessionStorage = false) => {
|
|
13
|
-
const { getValue, setJSONValue, setStringValue } = React.useContext(BrowserStorageContext);
|
|
14
|
-
const setValue = React.useCallback((value) => {
|
|
15
|
-
if (jsonify) {
|
|
16
|
-
return setJSONValue(storageKey, value, isSessionStorage);
|
|
17
|
-
}
|
|
18
|
-
if (typeof value === 'string') {
|
|
19
|
-
setStringValue(storageKey, value, isSessionStorage);
|
|
20
|
-
return true;
|
|
21
|
-
}
|
|
22
|
-
/* eslint-disable-next-line no-console */
|
|
23
|
-
console.error('Was not a string value provided, cannot stringify');
|
|
24
|
-
return false;
|
|
25
|
-
}, [isSessionStorage, jsonify, setJSONValue, setStringValue, storageKey]);
|
|
26
|
-
const value = useDeepCompareMemoize(
|
|
27
|
-
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
28
|
-
getValue(storageKey, jsonify, isSessionStorage) ?? defaultValue);
|
|
29
|
-
return [value, setValue];
|
|
30
|
-
};
|
|
31
|
-
const getStorage = (isSessionStorage) => {
|
|
32
|
-
if (isSessionStorage) {
|
|
33
|
-
return sessionStorage;
|
|
34
|
-
}
|
|
35
|
-
return localStorage;
|
|
36
|
-
};
|
|
37
|
-
/**
|
|
38
|
-
* @see useBrowserStorage
|
|
39
|
-
*/
|
|
40
|
-
export const BrowserStorageContextProvider = ({ children, }) => {
|
|
41
|
-
const [values, setValues] = React.useState({});
|
|
42
|
-
/**
|
|
43
|
-
* Only listen to other storage changes (windows/tabs) -- which are localStorage.
|
|
44
|
-
* Session storage does not have cross instance storages.
|
|
45
|
-
* See MDN for more: https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage
|
|
46
|
-
*/
|
|
47
|
-
useEventListener(window, 'storage', () => {
|
|
48
|
-
// Another browser tab has updated storage, sync up the data
|
|
49
|
-
const keys = Object.keys(values);
|
|
50
|
-
setValues(keys.reduce((acc, key) => {
|
|
51
|
-
const value = localStorage.getItem(key);
|
|
52
|
-
return { ...acc, [key]: value };
|
|
53
|
-
}, {}));
|
|
54
|
-
});
|
|
55
|
-
const getValue = React.useCallback((key, parseJSON, isSessionStorage = false) => {
|
|
56
|
-
const value = getStorage(isSessionStorage).getItem(key);
|
|
57
|
-
if (value === null) {
|
|
58
|
-
return value;
|
|
59
|
-
}
|
|
60
|
-
if (parseJSON) {
|
|
61
|
-
try {
|
|
62
|
-
return JSON.parse(value);
|
|
63
|
-
}
|
|
64
|
-
catch {
|
|
65
|
-
/* eslint-disable-next-line no-console */
|
|
66
|
-
console.warn(`Failed to parse storage value "${key}"`);
|
|
67
|
-
return null;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
else {
|
|
71
|
-
return value;
|
|
72
|
-
}
|
|
73
|
-
}, []);
|
|
74
|
-
const setJSONValue = React.useCallback((storageKey, value, isSessionStorage = false) => {
|
|
75
|
-
try {
|
|
76
|
-
const storageValue = JSON.stringify(value);
|
|
77
|
-
getStorage(isSessionStorage).setItem(storageKey, storageValue);
|
|
78
|
-
setValues((oldValues) => ({ ...oldValues, [storageKey]: storageValue }));
|
|
79
|
-
return true;
|
|
80
|
-
}
|
|
81
|
-
catch {
|
|
82
|
-
/* eslint-disable-next-line no-console */
|
|
83
|
-
console.warn('Could not store a value because it was requested to be stringified but was an invalid value for stringification.');
|
|
84
|
-
return false;
|
|
85
|
-
}
|
|
86
|
-
}, []);
|
|
87
|
-
const setStringValue = React.useCallback((storageKey, value, isSessionStorage = false) => {
|
|
88
|
-
getStorage(isSessionStorage).setItem(storageKey, value);
|
|
89
|
-
setValues((oldValues) => ({ ...oldValues, [storageKey]: value }));
|
|
90
|
-
}, []);
|
|
91
|
-
const contextValue = React.useMemo(() => ({ getValue, setJSONValue, setStringValue }),
|
|
92
|
-
// Also trigger a context update if `values` changes.
|
|
93
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
94
|
-
[getValue, setJSONValue, setStringValue, values]);
|
|
95
|
-
return (React.createElement(BrowserStorageContext.Provider, { value: contextValue }, children));
|
|
96
|
-
};
|
|
97
|
-
//# sourceMappingURL=BrowserStorageContext.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BrowserStorageContext.js","sourceRoot":"","sources":["../../../components/browserStorage/BrowserStorageContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../components/browserStorage/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../components/browserStorage/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCheckboxTable.spec.d.ts","sourceRoot":"","sources":["../../../../components/table/__tests__/useCheckboxTable.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { act } from 'react';
|
|
2
|
-
import { testHook } from '../../../__tests__/unit/testUtils/hooks';
|
|
3
|
-
import { useCheckboxTable } from '../../../components/table';
|
|
4
|
-
describe('useCheckboxTable', () => {
|
|
5
|
-
it('should select/unselect all', () => {
|
|
6
|
-
const renderResult = testHook(useCheckboxTable)(['a', 'b', 'c']);
|
|
7
|
-
act(() => {
|
|
8
|
-
renderResult.result.current.tableProps.selectAll.onSelect(true);
|
|
9
|
-
});
|
|
10
|
-
expect(renderResult.result.current.selections).toStrictEqual(['a', 'b', 'c']);
|
|
11
|
-
expect(renderResult.result.current.tableProps.selectAll.selected).toBe(true);
|
|
12
|
-
act(() => {
|
|
13
|
-
renderResult.result.current.tableProps.selectAll.onSelect(false);
|
|
14
|
-
});
|
|
15
|
-
expect(renderResult.result.current.selections).toStrictEqual([]);
|
|
16
|
-
expect(renderResult.result.current.tableProps.selectAll.selected).toBe(false);
|
|
17
|
-
});
|
|
18
|
-
it('should select/unselect ids', () => {
|
|
19
|
-
const renderResult = testHook(useCheckboxTable)(['a', 'b', 'c']);
|
|
20
|
-
act(() => {
|
|
21
|
-
renderResult.result.current.toggleSelection('a');
|
|
22
|
-
renderResult.result.current.toggleSelection('b');
|
|
23
|
-
});
|
|
24
|
-
expect(renderResult.result.current.selections).toStrictEqual(['a', 'b']);
|
|
25
|
-
expect(renderResult.result.current.isSelected('a')).toBe(true);
|
|
26
|
-
expect(renderResult.result.current.isSelected('b')).toBe(true);
|
|
27
|
-
expect(renderResult.result.current.isSelected('c')).toBe(false);
|
|
28
|
-
act(() => {
|
|
29
|
-
renderResult.result.current.toggleSelection('a');
|
|
30
|
-
});
|
|
31
|
-
expect(renderResult.result.current.selections).toStrictEqual(['b']);
|
|
32
|
-
expect(renderResult.result.current.isSelected('a')).toBe(false);
|
|
33
|
-
expect(renderResult.result.current.isSelected('b')).toBe(true);
|
|
34
|
-
expect(renderResult.result.current.isSelected('c')).toBe(false);
|
|
35
|
-
});
|
|
36
|
-
it('should remove selected ids that no longer exist', () => {
|
|
37
|
-
const renderResult = testHook(useCheckboxTable)(['a', 'b', 'c']);
|
|
38
|
-
act(() => {
|
|
39
|
-
renderResult.result.current.tableProps.selectAll.onSelect(true);
|
|
40
|
-
});
|
|
41
|
-
renderResult.rerender(['c']);
|
|
42
|
-
expect(renderResult.result.current.selections).toStrictEqual(['c']);
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
//# sourceMappingURL=useCheckboxTable.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCheckboxTable.spec.js","sourceRoot":"","sources":["../../../../components/table/__tests__/useCheckboxTable.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stylePaths.d.ts","sourceRoot":"","sources":["../../config/stylePaths.js"],"names":[],"mappings":""}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const path = require('path');
|
|
3
|
-
const relativeDir = path.resolve(__dirname, '..');
|
|
4
|
-
module.exports = {
|
|
5
|
-
stylePaths: [
|
|
6
|
-
path.resolve(relativeDir, 'src'),
|
|
7
|
-
path.resolve(relativeDir, 'node_modules/patternfly'),
|
|
8
|
-
path.resolve(relativeDir, 'node_modules/@patternfly/patternfly'),
|
|
9
|
-
path.resolve(relativeDir, 'node_modules/@patternfly/react-styles/css'),
|
|
10
|
-
path.resolve(relativeDir, 'node_modules/@patternfly/react-core/dist/styles/base.css'),
|
|
11
|
-
path.resolve(relativeDir, 'node_modules/@patternfly/react-core/dist/esm/@patternfly/patternfly'),
|
|
12
|
-
path.resolve(relativeDir, 'node_modules/@patternfly/react-core/node_modules/@patternfly/react-styles/css'),
|
|
13
|
-
path.resolve(relativeDir, 'node_modules/@patternfly/react-table/node_modules/@patternfly/react-styles/css'),
|
|
14
|
-
path.resolve(relativeDir, 'node_modules/@patternfly/react-inline-edit-extension/node_modules/@patternfly/react-styles/css')
|
|
15
|
-
]
|
|
16
|
-
};
|
|
17
|
-
//# sourceMappingURL=stylePaths.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stylePaths.js","sourceRoot":"","sources":["../../config/stylePaths.js"],"names":[],"mappings":";AAAA,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAClD,MAAM,CAAC,OAAO,GAAG;IACf,UAAU,EAAE;QACV,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,yBAAyB,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,qCAAqC,CAAC;QAChE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,2CAA2C,CAAC;QACtE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,0DAA0D,CAAC;QACrF,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,qEAAqE,CAAC;QAChG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,+EAA+E,CAAC;QAC1G,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,gFAAgF,CAAC;QAC3G,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,gGAAgG,CAAC;KAC5H;CACF,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { ModularArchConfig, Namespace } from '../types';
|
|
3
|
-
export type ModularArchContextType = {
|
|
4
|
-
config: ModularArchConfig;
|
|
5
|
-
namespacesLoaded: boolean;
|
|
6
|
-
namespacesLoadError?: Error;
|
|
7
|
-
namespaces: Namespace[];
|
|
8
|
-
preferredNamespace: Namespace | undefined;
|
|
9
|
-
updatePreferredNamespace: (namespace: Namespace | undefined) => void;
|
|
10
|
-
initializationError?: Error;
|
|
11
|
-
scriptLoaded: boolean;
|
|
12
|
-
};
|
|
13
|
-
type ModularArchContextProviderProps = {
|
|
14
|
-
children: React.ReactNode;
|
|
15
|
-
config: ModularArchConfig;
|
|
16
|
-
};
|
|
17
|
-
export declare const ModularArchContext: React.Context<ModularArchContextType | undefined>;
|
|
18
|
-
export declare const ModularArchContextProvider: React.FC<ModularArchContextProviderProps>;
|
|
19
|
-
export {};
|
|
20
|
-
//# sourceMappingURL=ModularArchContext.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ModularArchContext.d.ts","sourceRoot":"","sources":["../../context/ModularArchContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAElE,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAIvD,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,iBAAiB,CAAC;IAE1B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,CAAC,EAAE,KAAK,CAAC;IAC5B,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,kBAAkB,EAAE,SAAS,GAAG,SAAS,CAAC;IAC1C,wBAAwB,EAAE,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,KAAK,IAAI,CAAC;IACrE,mBAAmB,CAAC,EAAE,KAAK,CAAC;IAE5B,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,KAAK,+BAA+B,GAAG;IACrC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,EAAE,iBAAiB,CAAC;CAC3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,mDAA+D,CAAC;AAE/F,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,EAAE,CAAC,+BAA+B,CA6FhF,CAAC"}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import React, { createContext, useEffect, useState } from 'react';
|
|
2
|
-
import { Bullseye, Spinner } from '@patternfly/react-core';
|
|
3
|
-
import { kubeflowScriptLoader, kubeflowNamespaceLoader } from '../utilities';
|
|
4
|
-
import { useNamespacesWithConfig } from '../hooks/useNamespaces';
|
|
5
|
-
export const ModularArchContext = createContext(undefined);
|
|
6
|
-
export const ModularArchContextProvider = ({ children, config, }) => {
|
|
7
|
-
const { deploymentMode, mandatoryNamespace } = config;
|
|
8
|
-
const [scriptLoaded, setScriptLoaded] = useState(false);
|
|
9
|
-
const [preferredNamespace, setPreferredNamespace] = useState(undefined);
|
|
10
|
-
const [initializationError, setInitializationError] = useState();
|
|
11
|
-
// Namespace-related state
|
|
12
|
-
const [unsortedNamespaces, isLoaded, error] = useNamespacesWithConfig(config);
|
|
13
|
-
const namespaces = React.useMemo(() => unsortedNamespaces.toSorted((a, b) => a.name.localeCompare(b.name)), [unsortedNamespaces]);
|
|
14
|
-
const firstNamespace = namespaces.length > 0 ? namespaces[0] : null;
|
|
15
|
-
// Set preferred namespace based on mandatory namespace or first available namespace
|
|
16
|
-
const defaultPreferredNamespace = React.useMemo(() => {
|
|
17
|
-
if (mandatoryNamespace) {
|
|
18
|
-
return { name: mandatoryNamespace };
|
|
19
|
-
}
|
|
20
|
-
return firstNamespace;
|
|
21
|
-
}, [mandatoryNamespace, firstNamespace]);
|
|
22
|
-
// Script loader for kubeflow integration
|
|
23
|
-
useEffect(() => {
|
|
24
|
-
kubeflowScriptLoader(deploymentMode, () => setScriptLoaded(true), (scriptError) => {
|
|
25
|
-
// eslint-disable-next-line no-console
|
|
26
|
-
console.error('Error loading kubeflow script:', scriptError);
|
|
27
|
-
setScriptLoaded(true); // Still set to true to not block the UI
|
|
28
|
-
});
|
|
29
|
-
}, [deploymentMode]);
|
|
30
|
-
// Namespace selector for kubeflow integration
|
|
31
|
-
useEffect(() => {
|
|
32
|
-
// If mandatory namespace is set, don't use kubeflow namespace loader
|
|
33
|
-
if (mandatoryNamespace) {
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
kubeflowNamespaceLoader(deploymentMode, scriptLoaded, (newNamespace) => {
|
|
37
|
-
setPreferredNamespace({ name: newNamespace });
|
|
38
|
-
}, (err) => {
|
|
39
|
-
setInitializationError(err);
|
|
40
|
-
}, mandatoryNamespace);
|
|
41
|
-
}, [deploymentMode, scriptLoaded, mandatoryNamespace]);
|
|
42
|
-
const contextValue = React.useMemo(() => ({
|
|
43
|
-
config,
|
|
44
|
-
namespacesLoaded: isLoaded,
|
|
45
|
-
namespacesLoadError: error,
|
|
46
|
-
namespaces,
|
|
47
|
-
preferredNamespace: preferredNamespace ?? defaultPreferredNamespace ?? undefined,
|
|
48
|
-
updatePreferredNamespace: setPreferredNamespace,
|
|
49
|
-
initializationError,
|
|
50
|
-
scriptLoaded,
|
|
51
|
-
}), [
|
|
52
|
-
config,
|
|
53
|
-
isLoaded,
|
|
54
|
-
error,
|
|
55
|
-
namespaces,
|
|
56
|
-
preferredNamespace,
|
|
57
|
-
defaultPreferredNamespace,
|
|
58
|
-
initializationError,
|
|
59
|
-
scriptLoaded,
|
|
60
|
-
]);
|
|
61
|
-
// Show loading spinner if script is not loaded yet
|
|
62
|
-
if (!scriptLoaded) {
|
|
63
|
-
return (React.createElement(Bullseye, null,
|
|
64
|
-
React.createElement(Spinner, null)));
|
|
65
|
-
}
|
|
66
|
-
return React.createElement(ModularArchContext.Provider, { value: contextValue }, children);
|
|
67
|
-
};
|
|
68
|
-
//# sourceMappingURL=ModularArchContext.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ModularArchContext.js","sourceRoot":"","sources":["../../context/ModularArchContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAoBhE,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAqC,SAAS,CAAC,CAAC;AAE/F,MAAM,CAAC,MAAM,0BAA0B,GAA8C,CAAC,EACpF,QAAQ,EACR,MAAM,GACP,EAAE,EAAE;IACH,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAC;IAEtD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAwB,SAAS,CAAC,CAAC;IAC/F,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,EAAS,CAAC;IAExE,0BAA0B;IAC1B,MAAM,CAAC,kBAAkB,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAC9E,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAC9B,GAAG,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAY,EAAE,CAAY,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAC/F,CAAC,kBAAkB,CAAC,CACrB,CAAC;IAEF,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEpE,oFAAoF;IACpF,MAAM,yBAAyB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACnD,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC,EAAE,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC,CAAC;IAEzC,yCAAyC;IACzC,SAAS,CAAC,GAAG,EAAE;QACb,oBAAoB,CAClB,cAAc,EACd,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,EAC3B,CAAC,WAAW,EAAE,EAAE;YACd,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,WAAW,CAAC,CAAC;YAC7D,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,wCAAwC;QACjE,CAAC,CACF,CAAC;IACJ,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,8CAA8C;IAC9C,SAAS,CAAC,GAAG,EAAE;QACb,qEAAqE;QACrE,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,uBAAuB,CACrB,cAAc,EACd,YAAY,EACZ,CAAC,YAAoB,EAAE,EAAE;YACvB,qBAAqB,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;QAChD,CAAC,EACD,CAAC,GAAU,EAAE,EAAE;YACb,sBAAsB,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC,EACD,kBAAkB,CACnB,CAAC;IACJ,CAAC,EAAE,CAAC,cAAc,EAAE,YAAY,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAEvD,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAChC,GAAG,EAAE,CAAC,CAAC;QACL,MAAM;QACN,gBAAgB,EAAE,QAAQ;QAC1B,mBAAmB,EAAE,KAAK;QAC1B,UAAU;QACV,kBAAkB,EAAE,kBAAkB,IAAI,yBAAyB,IAAI,SAAS;QAChF,wBAAwB,EAAE,qBAAqB;QAC/C,mBAAmB;QACnB,YAAY;KACb,CAAC,EACF;QACE,MAAM;QACN,QAAQ;QACR,KAAK;QACL,UAAU;QACV,kBAAkB;QAClB,yBAAyB;QACzB,mBAAmB;QACnB,YAAY;KACb,CACF,CAAC;IAEF,mDAAmD;IACnD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,CACL,oBAAC,QAAQ;YACP,oBAAC,OAAO,OAAG,CACF,CACZ,CAAC;IACJ,CAAC;IAED,OAAO,oBAAC,kBAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,IAAG,QAAQ,CAA+B,CAAC;AACpG,CAAC,CAAC"}
|