mod-arch-shared 0.1.9 → 1.1.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/EditableLabelsDescriptionListGroup.d.ts +1 -0
- package/dist/components/EditableLabelsDescriptionListGroup.d.ts.map +1 -1
- package/dist/components/EditableLabelsDescriptionListGroup.js +15 -12
- package/dist/components/EditableLabelsDescriptionListGroup.js.map +1 -1
- package/dist/components/EditableTextDescriptionListGroup.d.ts +1 -0
- package/dist/components/EditableTextDescriptionListGroup.d.ts.map +1 -1
- package/dist/components/EditableTextDescriptionListGroup.js +13 -6
- package/dist/components/EditableTextDescriptionListGroup.js.map +1 -1
- package/dist/components/WhosMyAdministrator.d.ts.map +1 -1
- package/dist/components/WhosMyAdministrator.js +5 -2
- 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/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 +28 -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,39 +0,0 @@
|
|
|
1
|
-
import '@testing-library/jest-dom';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
import { renderHook } from '@testing-library/react';
|
|
4
|
-
import { ModularArchContextProvider } from '../../context/ModularArchContext';
|
|
5
|
-
import { DeploymentMode } from '../../utilities';
|
|
6
|
-
import { useModularArchContext } from '../useModularArchContext';
|
|
7
|
-
// Mock the k8s API module
|
|
8
|
-
jest.mock('~/api/k8s', () => ({
|
|
9
|
-
getNamespaces: jest.fn(() => jest.fn(() => Promise.resolve([]))),
|
|
10
|
-
}));
|
|
11
|
-
const mockConfig = {
|
|
12
|
-
deploymentMode: DeploymentMode.Standalone,
|
|
13
|
-
URL_PREFIX: 'test',
|
|
14
|
-
BFF_API_VERSION: 'v1',
|
|
15
|
-
};
|
|
16
|
-
const wrapper = ({ children }) => (React.createElement(ModularArchContextProvider, { config: mockConfig }, children));
|
|
17
|
-
describe('useModularArchContext', () => {
|
|
18
|
-
beforeEach(() => {
|
|
19
|
-
// Mock fetch for script loading
|
|
20
|
-
global.fetch = jest.fn().mockResolvedValue({ ok: false });
|
|
21
|
-
});
|
|
22
|
-
afterEach(() => {
|
|
23
|
-
jest.restoreAllMocks();
|
|
24
|
-
});
|
|
25
|
-
it('should return full context', () => {
|
|
26
|
-
const { result } = renderHook(() => useModularArchContext(), { wrapper });
|
|
27
|
-
expect(result.current).toHaveProperty('namespaces');
|
|
28
|
-
expect(result.current).toHaveProperty('namespacesLoaded');
|
|
29
|
-
expect(result.current).toHaveProperty('scriptLoaded');
|
|
30
|
-
});
|
|
31
|
-
it('should return config from context', () => {
|
|
32
|
-
const { result } = renderHook(() => useModularArchContext(), { wrapper });
|
|
33
|
-
expect(result.current.config).toEqual(mockConfig);
|
|
34
|
-
});
|
|
35
|
-
it('should throw error when used outside provider', () => {
|
|
36
|
-
expect(() => renderHook(() => useModularArchContext())).toThrow();
|
|
37
|
-
});
|
|
38
|
-
});
|
|
39
|
-
//# sourceMappingURL=useModularArchContext.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useModularArchContext.test.js","sourceRoot":"","sources":["../../../hooks/__tests__/useModularArchContext.test.tsx"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC;AACnC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,0BAA0B;AAC1B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5B,aAAa,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;CACjE,CAAC,CAAC,CAAC;AAEJ,MAAM,UAAU,GAAG;IACjB,cAAc,EAAE,cAAc,CAAC,UAAU;IACzC,UAAU,EAAE,MAAM;IAClB,eAAe,EAAE,IAAI;CACtB,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAiC,EAAE,EAAE,CAAC,CAC/D,oBAAC,0BAA0B,IAAC,MAAM,EAAE,UAAU,IAAG,QAAQ,CAA8B,CACxF,CAAC;AAEF,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,UAAU,CAAC,GAAG,EAAE;QACd,gCAAgC;QAChC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,qBAAqB,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1E,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAC1D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,qBAAqB,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1E,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACpE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useNamespaces.test.d.ts","sourceRoot":"","sources":["../../../hooks/__tests__/useNamespaces.test.tsx"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import '@testing-library/jest-dom';
|
|
2
|
-
import { renderHook } from '@testing-library/react';
|
|
3
|
-
import * as useFetchStateModule from '../../utilities/useFetchState';
|
|
4
|
-
import { DeploymentMode } from '../../utilities';
|
|
5
|
-
import { useNamespacesWithConfig } from '../useNamespaces';
|
|
6
|
-
// Mock the utilities
|
|
7
|
-
jest.mock('~/utilities/useFetchState');
|
|
8
|
-
jest.mock('~/api/k8s', () => ({
|
|
9
|
-
getNamespaces: jest.fn(() => jest.fn(() => Promise.resolve([]))),
|
|
10
|
-
}));
|
|
11
|
-
const mockUseFetchState = useFetchStateModule.useFetchState;
|
|
12
|
-
const createMockConfig = (mandatoryNamespace, deploymentMode = DeploymentMode.Federated) => ({
|
|
13
|
-
deploymentMode,
|
|
14
|
-
URL_PREFIX: 'test',
|
|
15
|
-
BFF_API_VERSION: 'v1',
|
|
16
|
-
...(mandatoryNamespace && { mandatoryNamespace }),
|
|
17
|
-
});
|
|
18
|
-
describe('useNamespacesWithConfig', () => {
|
|
19
|
-
beforeEach(() => {
|
|
20
|
-
jest.clearAllMocks();
|
|
21
|
-
});
|
|
22
|
-
afterEach(() => {
|
|
23
|
-
jest.restoreAllMocks();
|
|
24
|
-
});
|
|
25
|
-
it('should return mandatory namespace when configured', () => {
|
|
26
|
-
const mandatoryNamespace = 'mandatory-namespace';
|
|
27
|
-
const config = createMockConfig(mandatoryNamespace);
|
|
28
|
-
// Mock useFetchState to simulate the mandatory namespace being returned
|
|
29
|
-
mockUseFetchState.mockReturnValue([[{ name: mandatoryNamespace }], true, undefined, jest.fn()]);
|
|
30
|
-
const { result } = renderHook(() => useNamespacesWithConfig(config));
|
|
31
|
-
expect(result.current[0]).toEqual([{ name: mandatoryNamespace }]);
|
|
32
|
-
expect(result.current[1]).toBe(true); // isLoaded
|
|
33
|
-
expect(result.current[2]).toBeUndefined(); // error
|
|
34
|
-
});
|
|
35
|
-
it('should fetch namespaces normally when no mandatory namespace is set', () => {
|
|
36
|
-
const config = createMockConfig();
|
|
37
|
-
const mockNamespaces = [{ name: 'namespace-1' }, { name: 'namespace-2' }];
|
|
38
|
-
mockUseFetchState.mockReturnValue([mockNamespaces, true, undefined, jest.fn()]);
|
|
39
|
-
const { result } = renderHook(() => useNamespacesWithConfig(config));
|
|
40
|
-
expect(result.current[0]).toEqual(mockNamespaces);
|
|
41
|
-
expect(result.current[1]).toBe(true); // isLoaded
|
|
42
|
-
expect(result.current[2]).toBeUndefined(); // error
|
|
43
|
-
});
|
|
44
|
-
it('should return empty array for kubeflow mode when no mandatory namespace', () => {
|
|
45
|
-
const config = createMockConfig(undefined, DeploymentMode.Kubeflow);
|
|
46
|
-
mockUseFetchState.mockReturnValue([[], true, undefined, jest.fn()]);
|
|
47
|
-
const { result } = renderHook(() => useNamespacesWithConfig(config));
|
|
48
|
-
expect(result.current[0]).toEqual([]);
|
|
49
|
-
expect(result.current[1]).toBe(true); // isLoaded
|
|
50
|
-
expect(result.current[2]).toBeUndefined(); // error
|
|
51
|
-
});
|
|
52
|
-
it('should return mandatory namespace even in kubeflow mode', () => {
|
|
53
|
-
const mandatoryNamespace = 'mandatory-namespace';
|
|
54
|
-
const config = createMockConfig(mandatoryNamespace, DeploymentMode.Kubeflow);
|
|
55
|
-
mockUseFetchState.mockReturnValue([[{ name: mandatoryNamespace }], true, undefined, jest.fn()]);
|
|
56
|
-
const { result } = renderHook(() => useNamespacesWithConfig(config));
|
|
57
|
-
expect(result.current[0]).toEqual([{ name: mandatoryNamespace }]);
|
|
58
|
-
expect(result.current[1]).toBe(true); // isLoaded
|
|
59
|
-
expect(result.current[2]).toBeUndefined(); // error
|
|
60
|
-
});
|
|
61
|
-
});
|
|
62
|
-
//# sourceMappingURL=useNamespaces.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useNamespaces.test.js","sourceRoot":"","sources":["../../../hooks/__tests__/useNamespaces.test.tsx"],"names":[],"mappings":"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"}
|
package/dist/hooks/index.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export * from './useNamespaces';
|
|
2
|
-
export * from './useNotification';
|
|
3
|
-
export * from './useQueryParamNamespaces';
|
|
4
|
-
export * from './useSettings';
|
|
5
|
-
export * from './useTimeBasedRefresh';
|
|
6
|
-
export * from './useModularArchContext';
|
|
7
|
-
export * from './useThemeContext';
|
|
8
|
-
export * from './useNamespaceSelector';
|
|
9
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC"}
|
package/dist/hooks/index.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export * from './useNamespaces';
|
|
2
|
-
export * from './useNotification';
|
|
3
|
-
export * from './useQueryParamNamespaces';
|
|
4
|
-
export * from './useSettings';
|
|
5
|
-
export * from './useTimeBasedRefresh';
|
|
6
|
-
export * from './useModularArchContext';
|
|
7
|
-
export * from './useThemeContext';
|
|
8
|
-
export * from './useNamespaceSelector';
|
|
9
|
-
//# sourceMappingURL=index.js.map
|
package/dist/hooks/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { ModularArchContextType } from '../context/ModularArchContext';
|
|
2
|
-
import { ModularArchConfig } from '../types';
|
|
3
|
-
export declare const useModularArchContext: () => ModularArchContextType;
|
|
4
|
-
export type { ModularArchConfig };
|
|
5
|
-
//# sourceMappingURL=useModularArchContext.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useModularArchContext.d.ts","sourceRoot":"","sources":["../../hooks/useModularArchContext.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAG5C,eAAO,MAAM,qBAAqB,QAAO,sBAMxC,CAAC;AAEF,YAAY,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { useContext } from 'react';
|
|
2
|
-
import { ModularArchContext } from '../context/ModularArchContext';
|
|
3
|
-
// New hook for accessing all context values
|
|
4
|
-
export const useModularArchContext = () => {
|
|
5
|
-
const context = useContext(ModularArchContext);
|
|
6
|
-
if (context === undefined) {
|
|
7
|
-
throw new Error('useModularArchContext must be used within a ModularArchContextProvider');
|
|
8
|
-
}
|
|
9
|
-
return context;
|
|
10
|
-
};
|
|
11
|
-
//# sourceMappingURL=useModularArchContext.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useModularArchContext.js","sourceRoot":"","sources":["../../hooks/useModularArchContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAA0B,MAAM,8BAA8B,CAAC;AAG1F,4CAA4C;AAC5C,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAA2B,EAAE;IAChE,MAAM,OAAO,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAC/C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Namespace } from '../types';
|
|
2
|
-
export declare const useNamespaceSelector: () => {
|
|
3
|
-
namespacesLoaded: boolean;
|
|
4
|
-
namespacesLoadError?: Error;
|
|
5
|
-
namespaces: Namespace[];
|
|
6
|
-
preferredNamespace: Namespace | undefined;
|
|
7
|
-
updatePreferredNamespace: (namespace: Namespace | undefined) => void;
|
|
8
|
-
initializationError?: Error;
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=useNamespaceSelector.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useNamespaceSelector.d.ts","sourceRoot":"","sources":["../../hooks/useNamespaceSelector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,eAAO,MAAM,oBAAoB,QAAO;IACtC,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;CAY7B,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { useModularArchContext } from './useModularArchContext';
|
|
2
|
-
export const useNamespaceSelector = () => {
|
|
3
|
-
const context = useModularArchContext();
|
|
4
|
-
return {
|
|
5
|
-
namespacesLoaded: context.namespacesLoaded,
|
|
6
|
-
namespacesLoadError: context.namespacesLoadError,
|
|
7
|
-
namespaces: context.namespaces,
|
|
8
|
-
preferredNamespace: context.preferredNamespace,
|
|
9
|
-
updatePreferredNamespace: context.updatePreferredNamespace,
|
|
10
|
-
initializationError: context.initializationError,
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=useNamespaceSelector.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useNamespaceSelector.js","sourceRoot":"","sources":["../../hooks/useNamespaceSelector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAOlC,EAAE;IACF,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IAExC,OAAO;QACL,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;QAC9C,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;QAC1D,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;KACjD,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { FetchState } from '../utilities/useFetchState';
|
|
2
|
-
import { Namespace, ModularArchConfig } from '../types';
|
|
3
|
-
export declare const useNamespacesWithConfig: (config: ModularArchConfig) => FetchState<Namespace[]>;
|
|
4
|
-
declare const useNamespaces: () => FetchState<Namespace[]>;
|
|
5
|
-
export default useNamespaces;
|
|
6
|
-
//# sourceMappingURL=useNamespaces.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useNamespaces.d.ts","sourceRoot":"","sources":["../../hooks/useNamespaces.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,UAAU,EAA6B,MAAM,2BAA2B,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAMvD,eAAO,MAAM,uBAAuB,GAAI,QAAQ,iBAAiB,KAAG,UAAU,CAAC,SAAS,EAAE,CA2BzF,CAAC;AAGF,QAAA,MAAM,aAAa,QAAO,UAAU,CAAC,SAAS,EAAE,CAG/C,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { useFetchState } from '../utilities/useFetchState';
|
|
3
|
-
import { getNamespaces } from '../api/k8s';
|
|
4
|
-
import { DeploymentMode } from '../utilities';
|
|
5
|
-
import { useModularArchContext } from './useModularArchContext';
|
|
6
|
-
// Create a version that accepts config directly (for use in context provider)
|
|
7
|
-
export const useNamespacesWithConfig = (config) => {
|
|
8
|
-
const { BFF_API_VERSION, URL_PREFIX, deploymentMode, mandatoryNamespace } = config;
|
|
9
|
-
const modArchConfig = React.useMemo(() => ({
|
|
10
|
-
BFF_API_VERSION,
|
|
11
|
-
URL_PREFIX,
|
|
12
|
-
}), [BFF_API_VERSION, URL_PREFIX]);
|
|
13
|
-
const listNamespaces = React.useMemo(() => getNamespaces('', modArchConfig), [modArchConfig]);
|
|
14
|
-
const callback = React.useCallback((opts) => {
|
|
15
|
-
// If mandatory namespace is set, return only that namespace
|
|
16
|
-
if (mandatoryNamespace) {
|
|
17
|
-
return Promise.resolve([{ name: mandatoryNamespace }]);
|
|
18
|
-
}
|
|
19
|
-
if (deploymentMode === DeploymentMode.Kubeflow) {
|
|
20
|
-
return Promise.resolve([]);
|
|
21
|
-
}
|
|
22
|
-
return listNamespaces({
|
|
23
|
-
...opts,
|
|
24
|
-
});
|
|
25
|
-
}, [deploymentMode, listNamespaces, mandatoryNamespace]);
|
|
26
|
-
return useFetchState(callback, [], { initialPromisePurity: true });
|
|
27
|
-
};
|
|
28
|
-
// Regular hook that uses context (for use in components)
|
|
29
|
-
const useNamespaces = () => {
|
|
30
|
-
const { config } = useModularArchContext();
|
|
31
|
-
return useNamespacesWithConfig(config);
|
|
32
|
-
};
|
|
33
|
-
export default useNamespaces;
|
|
34
|
-
//# sourceMappingURL=useNamespaces.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useNamespaces.js","sourceRoot":"","sources":["../../hooks/useNamespaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAyC,MAAM,2BAA2B,CAAC;AAEjG,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,8EAA8E;AAC9E,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,MAAyB,EAA2B,EAAE;IAC5F,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAC;IACnF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CACjC,GAAG,EAAE,CAAC,CAAC;QACL,eAAe;QACf,UAAU;KACX,CAAC,EACF,CAAC,eAAe,EAAE,UAAU,CAAC,CAC9B,CAAC;IACF,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAC9F,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAChC,CAAC,IAAI,EAAE,EAAE;QACP,4DAA4D;QAC5D,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,cAAc,KAAK,cAAc,CAAC,QAAQ,EAAE,CAAC;YAC/C,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,cAAc,CAAC;YACpB,GAAG,IAAI;SACR,CAAC,CAAC;IACL,CAAC,EACD,CAAC,cAAc,EAAE,cAAc,EAAE,kBAAkB,CAAC,CACrD,CAAC;IACF,OAAO,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC;AACrE,CAAC,CAAC;AAEF,yDAAyD;AACzD,MAAM,aAAa,GAAG,GAA4B,EAAE;IAClD,MAAM,EAAE,MAAM,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC3C,OAAO,uBAAuB,CAAC,MAAM,CAAC,CAAC;AACzC,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
declare enum NotificationTypes {
|
|
3
|
-
SUCCESS = "success",
|
|
4
|
-
ERROR = "error",
|
|
5
|
-
INFO = "info",
|
|
6
|
-
WARNING = "warning"
|
|
7
|
-
}
|
|
8
|
-
type NotificationProps = (title: string, message?: React.ReactNode) => void;
|
|
9
|
-
type NotificationRemoveProps = (id: number | undefined) => void;
|
|
10
|
-
type NotificationTypeFunc = {
|
|
11
|
-
[key in NotificationTypes]: NotificationProps;
|
|
12
|
-
};
|
|
13
|
-
interface NotificationFunc extends NotificationTypeFunc {
|
|
14
|
-
remove: NotificationRemoveProps;
|
|
15
|
-
}
|
|
16
|
-
export declare const useNotification: () => NotificationFunc;
|
|
17
|
-
export {};
|
|
18
|
-
//# sourceMappingURL=useNotification.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useNotification.d.ts","sourceRoot":"","sources":["../../hooks/useNotification.ts"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAK1C,aAAK,iBAAiB;IACpB,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,OAAO,YAAY;CACpB;AAED,KAAK,iBAAiB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;AAE5E,KAAK,uBAAuB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;AAEhE,KAAK,oBAAoB,GAAG;KACzB,GAAG,IAAI,iBAAiB,GAAG,iBAAiB;CAC9C,CAAC;AAEF,UAAU,gBAAiB,SAAQ,oBAAoB;IACrD,MAAM,EAAE,uBAAuB,CAAC;CACjC;AAED,eAAO,MAAM,eAAe,QAAO,gBAuFlC,CAAC"}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import React, { useContext } from 'react';
|
|
2
|
-
import { AlertVariant } from '@patternfly/react-core';
|
|
3
|
-
import { NotificationActionTypes } from '../types';
|
|
4
|
-
import { NotificationContext } from '../context/NotificationContext';
|
|
5
|
-
var NotificationTypes;
|
|
6
|
-
(function (NotificationTypes) {
|
|
7
|
-
NotificationTypes["SUCCESS"] = "success";
|
|
8
|
-
NotificationTypes["ERROR"] = "error";
|
|
9
|
-
NotificationTypes["INFO"] = "info";
|
|
10
|
-
NotificationTypes["WARNING"] = "warning";
|
|
11
|
-
})(NotificationTypes || (NotificationTypes = {}));
|
|
12
|
-
export const useNotification = () => {
|
|
13
|
-
const { notificationCount, updateNotificationCount, dispatch } = useContext(NotificationContext);
|
|
14
|
-
const success = React.useCallback((title, message) => {
|
|
15
|
-
updateNotificationCount(notificationCount + 1);
|
|
16
|
-
dispatch({
|
|
17
|
-
type: NotificationActionTypes.ADD_NOTIFICATION,
|
|
18
|
-
payload: {
|
|
19
|
-
status: AlertVariant.success,
|
|
20
|
-
title,
|
|
21
|
-
timestamp: new Date(),
|
|
22
|
-
message,
|
|
23
|
-
id: notificationCount,
|
|
24
|
-
},
|
|
25
|
-
});
|
|
26
|
-
}, [dispatch, notificationCount, updateNotificationCount]);
|
|
27
|
-
const warning = React.useCallback((title, message) => {
|
|
28
|
-
updateNotificationCount(notificationCount + 1);
|
|
29
|
-
dispatch({
|
|
30
|
-
type: NotificationActionTypes.ADD_NOTIFICATION,
|
|
31
|
-
payload: {
|
|
32
|
-
status: AlertVariant.warning,
|
|
33
|
-
title,
|
|
34
|
-
timestamp: new Date(),
|
|
35
|
-
message,
|
|
36
|
-
id: notificationCount,
|
|
37
|
-
},
|
|
38
|
-
});
|
|
39
|
-
}, [dispatch, notificationCount, updateNotificationCount]);
|
|
40
|
-
const error = React.useCallback((title, message) => {
|
|
41
|
-
updateNotificationCount(notificationCount + 1);
|
|
42
|
-
dispatch({
|
|
43
|
-
type: NotificationActionTypes.ADD_NOTIFICATION,
|
|
44
|
-
payload: {
|
|
45
|
-
status: AlertVariant.danger,
|
|
46
|
-
title,
|
|
47
|
-
timestamp: new Date(),
|
|
48
|
-
message,
|
|
49
|
-
id: notificationCount,
|
|
50
|
-
},
|
|
51
|
-
});
|
|
52
|
-
}, [dispatch, notificationCount, updateNotificationCount]);
|
|
53
|
-
const info = React.useCallback((title, message) => {
|
|
54
|
-
updateNotificationCount(notificationCount + 1);
|
|
55
|
-
dispatch({
|
|
56
|
-
type: NotificationActionTypes.ADD_NOTIFICATION,
|
|
57
|
-
payload: {
|
|
58
|
-
status: AlertVariant.info,
|
|
59
|
-
title,
|
|
60
|
-
timestamp: new Date(),
|
|
61
|
-
message,
|
|
62
|
-
id: notificationCount,
|
|
63
|
-
},
|
|
64
|
-
});
|
|
65
|
-
}, [dispatch, notificationCount, updateNotificationCount]);
|
|
66
|
-
const remove = React.useCallback((id) => {
|
|
67
|
-
dispatch({
|
|
68
|
-
type: NotificationActionTypes.DELETE_NOTIFICATION,
|
|
69
|
-
payload: { id },
|
|
70
|
-
});
|
|
71
|
-
}, [dispatch]);
|
|
72
|
-
const notification = React.useMemo(() => ({ success, error, info, warning, remove }), [success, error, info, warning, remove]);
|
|
73
|
-
return notification;
|
|
74
|
-
};
|
|
75
|
-
//# sourceMappingURL=useNotification.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useNotification.js","sourceRoot":"","sources":["../../hooks/useNotification.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useQueryParamNamespaces.d.ts","sourceRoot":"","sources":["../../hooks/useQueryParamNamespaces.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,uBAAuB,QAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAMhE,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useDeepCompareMemoize } from '../utilities/useDeepCompareMemoize';
|
|
2
|
-
import { useNamespaceSelector } from './useNamespaceSelector';
|
|
3
|
-
export const useQueryParamNamespaces = () => {
|
|
4
|
-
const { preferredNamespace: namespaceSelector } = useNamespaceSelector();
|
|
5
|
-
// When mandatoryNamespace is set in config, preferredNamespace will be that mandatory namespace
|
|
6
|
-
const namespace = namespaceSelector?.name;
|
|
7
|
-
return useDeepCompareMemoize({ namespace });
|
|
8
|
-
};
|
|
9
|
-
//# sourceMappingURL=useQueryParamNamespaces.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useQueryParamNamespaces.js","sourceRoot":"","sources":["../../hooks/useQueryParamNamespaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAA4B,EAAE;IACnE,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,GAAG,oBAAoB,EAAE,CAAC;IACzE,gGAAgG;IAChG,MAAM,SAAS,GAAG,iBAAiB,EAAE,IAAI,CAAC;IAE1C,OAAO,qBAAqB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;AAC9C,CAAC,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ConfigSettings, UserSettings } from '../types';
|
|
2
|
-
export declare const useSettings: () => {
|
|
3
|
-
configSettings: ConfigSettings | null;
|
|
4
|
-
userSettings: UserSettings | null;
|
|
5
|
-
loaded: boolean;
|
|
6
|
-
loadError: Error | undefined;
|
|
7
|
-
};
|
|
8
|
-
export declare const fetchConfig: () => Promise<ConfigSettings>;
|
|
9
|
-
//# sourceMappingURL=useSettings.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useSettings.d.ts","sourceRoot":"","sources":["../../hooks/useSettings.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAKvD,eAAO,MAAM,WAAW,QAAO;IAC7B,cAAc,EAAE,cAAc,GAAG,IAAI,CAAC;IACtC,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,KAAK,GAAG,SAAS,CAAC;CAmE9B,CAAC;AAIF,eAAO,MAAM,WAAW,QAAa,OAAO,CAAC,cAAc,CAMzD,CAAC"}
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { POLL_INTERVAL } from '../utilities/const';
|
|
3
|
-
import { useDeepCompareMemoize } from '../utilities/useDeepCompareMemoize';
|
|
4
|
-
import useTimeBasedRefresh from '../hooks/useTimeBasedRefresh';
|
|
5
|
-
import { getNamespaces, getUser } from '../api/k8s';
|
|
6
|
-
import { useModularArchContext } from './useModularArchContext';
|
|
7
|
-
export const useSettings = () => {
|
|
8
|
-
const { config: modularArchConfig } = useModularArchContext();
|
|
9
|
-
const { BFF_API_VERSION, URL_PREFIX } = modularArchConfig;
|
|
10
|
-
const modArchConfig = React.useMemo(() => ({
|
|
11
|
-
BFF_API_VERSION,
|
|
12
|
-
URL_PREFIX,
|
|
13
|
-
}), [BFF_API_VERSION, URL_PREFIX]);
|
|
14
|
-
const [loaded, setLoaded] = React.useState(false);
|
|
15
|
-
const [loadError, setLoadError] = React.useState();
|
|
16
|
-
const [config, setConfig] = React.useState(null);
|
|
17
|
-
const [user, setUser] = React.useState(null);
|
|
18
|
-
const userRest = React.useMemo(() => getUser('', modArchConfig), [modArchConfig]);
|
|
19
|
-
const namespaceRest = React.useMemo(() => getNamespaces('', modArchConfig), [modArchConfig]);
|
|
20
|
-
const setRefreshMarker = useTimeBasedRefresh();
|
|
21
|
-
React.useEffect(() => {
|
|
22
|
-
let watchHandle;
|
|
23
|
-
let cancelled = false;
|
|
24
|
-
const watchConfig = () => {
|
|
25
|
-
Promise.all([fetchConfig(), userRest({})])
|
|
26
|
-
.then(([fetchedConfig, fetchedUser]) => {
|
|
27
|
-
if (cancelled) {
|
|
28
|
-
return;
|
|
29
|
-
}
|
|
30
|
-
setConfig(fetchedConfig);
|
|
31
|
-
setUser(fetchedUser);
|
|
32
|
-
setLoaded(true);
|
|
33
|
-
setLoadError(undefined);
|
|
34
|
-
})
|
|
35
|
-
.catch((e) => {
|
|
36
|
-
if (e?.message?.includes('Error getting Oauth Info for user')) {
|
|
37
|
-
// NOTE: this endpoint only requests oauth because of the security layer, this is not an ironclad use-case
|
|
38
|
-
// Something went wrong on the server with the Oauth, let us just log them out and refresh for them
|
|
39
|
-
/* eslint-disable-next-line no-console */
|
|
40
|
-
console.error('Something went wrong with the oauth token, please log out...', e.message, e);
|
|
41
|
-
setRefreshMarker(new Date());
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
setLoadError(e);
|
|
45
|
-
});
|
|
46
|
-
watchHandle = setTimeout(watchConfig, POLL_INTERVAL);
|
|
47
|
-
};
|
|
48
|
-
watchConfig();
|
|
49
|
-
return () => {
|
|
50
|
-
cancelled = true;
|
|
51
|
-
clearTimeout(watchHandle);
|
|
52
|
-
};
|
|
53
|
-
}, [setRefreshMarker, userRest, namespaceRest]);
|
|
54
|
-
const retConfig = useDeepCompareMemoize(config);
|
|
55
|
-
const retUser = useDeepCompareMemoize(user);
|
|
56
|
-
return {
|
|
57
|
-
configSettings: retConfig,
|
|
58
|
-
userSettings: retUser,
|
|
59
|
-
loaded,
|
|
60
|
-
loadError,
|
|
61
|
-
};
|
|
62
|
-
};
|
|
63
|
-
// Mock a settings config call
|
|
64
|
-
// TODO: [Data Flow] replace with the actual call once we have the endpoint
|
|
65
|
-
export const fetchConfig = async () => ({
|
|
66
|
-
common: {
|
|
67
|
-
featureFlags: {
|
|
68
|
-
modelRegistry: true,
|
|
69
|
-
},
|
|
70
|
-
},
|
|
71
|
-
});
|
|
72
|
-
//# sourceMappingURL=useSettings.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useSettings.js","sourceRoot":"","sources":["../../hooks/useSettings.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useThemeContext.d.ts","sourceRoot":"","sources":["../../hooks/useThemeContext.ts"],"names":[],"mappings":"AAIA,KAAK,iBAAiB,GAAG;IACvB,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,eAAe,QAAO,iBAMlC,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { ThemeContext } from '../context/ThemeContext';
|
|
3
|
-
import { Theme } from '../utilities/const';
|
|
4
|
-
export const useThemeContext = () => {
|
|
5
|
-
const { theme } = React.useContext(ThemeContext);
|
|
6
|
-
return {
|
|
7
|
-
isMUITheme: theme === Theme.MUI,
|
|
8
|
-
};
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=useThemeContext.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useThemeContext.js","sourceRoot":"","sources":["../../hooks/useThemeContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAM1C,MAAM,CAAC,MAAM,eAAe,GAAG,GAAsB,EAAE;IACrD,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAEjD,OAAO;QACL,UAAU,EAAE,KAAK,KAAK,KAAK,CAAC,GAAG;KAChC,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useTimeBasedRefresh.d.ts","sourceRoot":"","sources":["../../hooks/useTimeBasedRefresh.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,OAAO,GAAG,CAAC,iBAAiB,EAAE,IAAI,KAAK,IAAI,CAAC;AAExD,QAAA,MAAM,mBAAmB,QAAO,OAsC/B,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { useBrowserStorage } from '../components/browserStorage';
|
|
3
|
-
import { logout } from '../utilities/appUtils';
|
|
4
|
-
const useTimeBasedRefresh = () => {
|
|
5
|
-
const KEY_NAME = 'kf.dashboard.last.auto.refresh';
|
|
6
|
-
const [lastRefreshTimestamp, setLastRefreshTimestamp] = useBrowserStorage(KEY_NAME, '0', false, true);
|
|
7
|
-
const ref = React.useRef({ lastRefreshTimestamp, setLastRefreshTimestamp });
|
|
8
|
-
ref.current = { lastRefreshTimestamp, setLastRefreshTimestamp };
|
|
9
|
-
return React.useCallback((refreshDateMarker) => {
|
|
10
|
-
// Intentionally avoid referential changes. We want the value at call time.
|
|
11
|
-
// Recomputing the ref is not needed and will impact usage in hooks if it does.
|
|
12
|
-
const lastDate = new Date(ref.current.lastRefreshTimestamp);
|
|
13
|
-
const setNewDateString = ref.current.setLastRefreshTimestamp;
|
|
14
|
-
/* eslint-disable no-console */
|
|
15
|
-
// Print into the console in case we are not refreshing or the browser has preserve log enabled
|
|
16
|
-
console.warn('Attempting to re-trigger an auto refresh');
|
|
17
|
-
console.log('Last refresh was on:', lastDate);
|
|
18
|
-
console.log('Refreshing requested after:', refreshDateMarker);
|
|
19
|
-
lastDate.setHours(lastDate.getHours() + 1);
|
|
20
|
-
if (lastDate < refreshDateMarker) {
|
|
21
|
-
setNewDateString(refreshDateMarker.toString());
|
|
22
|
-
console.log('Logging out and refreshing');
|
|
23
|
-
logout().then(() => window.location.reload());
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
console.error(`We should have refreshed but it appears the last time we auto-refreshed was less than an hour ago. '${KEY_NAME}' session storage setting can be cleared for this to refresh again within the hour from the last refresh.`);
|
|
27
|
-
}
|
|
28
|
-
/* eslint-enable no-console */
|
|
29
|
-
}, []);
|
|
30
|
-
};
|
|
31
|
-
export default useTimeBasedRefresh;
|
|
32
|
-
//# sourceMappingURL=useTimeBasedRefresh.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useTimeBasedRefresh.js","sourceRoot":"","sources":["../../hooks/useTimeBasedRefresh.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAI9C,MAAM,mBAAmB,GAAG,GAAY,EAAE;IACxC,MAAM,QAAQ,GAAG,gCAAgC,CAAC;IAClD,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,iBAAiB,CACvE,QAAQ,EACR,GAAG,EACH,KAAK,EACL,IAAI,CACL,CAAC;IACF,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAGrB,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,CAAC,CAAC;IACtD,GAAG,CAAC,OAAO,GAAG,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,CAAC;IAEhE,OAAO,KAAK,CAAC,WAAW,CAAU,CAAC,iBAAiB,EAAE,EAAE;QACtD,2EAA2E;QAC3E,+EAA+E;QAC/E,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC5D,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC;QAE7D,+BAA+B;QAC/B,+FAA+F;QAC/F,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,iBAAiB,CAAC,CAAC;QAE9D,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;QAC3C,IAAI,QAAQ,GAAG,iBAAiB,EAAE,CAAC;YACjC,gBAAgB,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAC1C,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CACX,uGAAuG,QAAQ,2GAA2G,CAC3N,CAAC;QACJ,CAAC;QACD,8BAA8B;IAChC,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|