@verdaccio/ui-components 4.0.0-next-8.2 → 4.0.0-next-8.3
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/.babelrc +9 -1
- package/CHANGELOG.md +2 -273
- package/build/AppTest/AppRoute.js +18 -27
- package/build/AppTest/pages/Front/Home.js +2 -8
- package/build/AppTest/pages/Front/index.js +1 -13
- package/build/AppTest/pages/Version/Version.js +15 -19
- package/build/AppTest/pages/Version/index.js +1 -13
- package/build/Theme/ResetStyles.js +10 -16
- package/build/Theme/StyleBaseline.js +6 -13
- package/build/Theme/ThemeProvider.js +25 -33
- package/build/Theme/colors.js +1 -7
- package/build/Theme/index.js +5 -44
- package/build/Theme/theme.js +26 -32
- package/build/components/ActionBar/ActionBar.js +26 -33
- package/build/components/ActionBar/ActionBarAction.js +59 -59
- package/build/components/ActionBar/index.js +1 -13
- package/build/components/Author/Author.js +17 -23
- package/build/components/Author/index.js +1 -13
- package/build/components/Author/styles.js +5 -12
- package/build/components/CopyClipboard/CopyToClipBoard.js +40 -40
- package/build/components/CopyClipboard/index.js +2 -20
- package/build/components/CopyClipboard/utils.js +1 -8
- package/build/components/Dependencies/Dependencies.js +27 -34
- package/build/components/Dependencies/DependencyBlock.js +29 -35
- package/build/components/Dependencies/index.js +1 -13
- package/build/components/Dependencies/types.js +1 -5
- package/build/components/Dependencies/utits.js +1 -7
- package/build/components/Deprecated/Deprecated.js +10 -16
- package/build/components/Deprecated/index.js +1 -13
- package/build/components/Developers/DeveloperType.js +1 -7
- package/build/components/Developers/Developers.js +29 -37
- package/build/components/Developers/Title.js +26 -29
- package/build/components/Developers/get-unique-developer-values.js +1 -7
- package/build/components/Developers/index.js +2 -20
- package/build/components/Distribution/Dist.js +29 -32
- package/build/components/Distribution/index.js +1 -13
- package/build/components/Distribution/styles.js +7 -14
- package/build/components/Engines/Engines.js +53 -54
- package/build/components/Engines/index.js +1 -13
- package/build/components/Engines/styles.js +5 -12
- package/build/components/ErrorBoundary/ErrorBoundary.js +5 -14
- package/build/components/ErrorBoundary/index.js +1 -13
- package/build/components/Forbidden/Forbidden.js +33 -35
- package/build/components/Forbidden/index.js +1 -13
- package/build/components/FundButton/FundButton.js +42 -41
- package/build/components/FundButton/index.js +1 -13
- package/build/components/HeaderInfoDialog/HeaderInfoDialog.js +39 -41
- package/build/components/HeaderInfoDialog/index.js +1 -13
- package/build/components/Heading/Heading.js +12 -17
- package/build/components/Heading/index.js +1 -13
- package/build/components/Help/Help.js +23 -31
- package/build/components/Help/index.js +1 -13
- package/build/components/Help/styles.js +3 -10
- package/build/components/Icons/DevsIcons/CommonJS.js +4 -11
- package/build/components/Icons/DevsIcons/ES6Module.js +4 -11
- package/build/components/Icons/DevsIcons/Git.js +4 -11
- package/build/components/Icons/DevsIcons/NodeJS.js +4 -11
- package/build/components/Icons/DevsIcons/TypeScript.js +4 -11
- package/build/components/Icons/DevsIcons/index.js +5 -40
- package/build/components/Icons/Earth.js +13 -19
- package/build/components/Icons/FileBinary.js +6 -12
- package/build/components/Icons/Law.js +6 -12
- package/build/components/Icons/License.js +7 -13
- package/build/components/Icons/License.js.map +1 -1
- package/build/components/Icons/Managers/Npm.js +4 -11
- package/build/components/Icons/Managers/Pnpm.js +4 -11
- package/build/components/Icons/Managers/Yarn.js +4 -11
- package/build/components/Icons/Managers/index.js +3 -26
- package/build/components/Icons/SvgIcon.js +27 -23
- package/build/components/Icons/Time.js +8 -14
- package/build/components/Icons/Version.js +6 -12
- package/build/components/Icons/index.js +8 -79
- package/build/components/Install/Install.js +32 -39
- package/build/components/Install/InstallListItem.js +47 -52
- package/build/components/Install/index.js +1 -13
- package/build/components/Keywords/KeywordListItems.js +11 -17
- package/build/components/Keywords/Keywords.js +20 -25
- package/build/components/Keywords/index.js +1 -13
- package/build/components/Label/Label.js +17 -18
- package/build/components/Label/index.js +1 -13
- package/build/components/Link/Link.js +16 -22
- package/build/components/Link/index.js +1 -13
- package/build/components/LinkExternal/LinkExternal.js +15 -19
- package/build/components/LinkExternal/index.js +1 -13
- package/build/components/Loading/Loading.js +8 -15
- package/build/components/Loading/Spinner/Spinner.js +41 -35
- package/build/components/Loading/Spinner/index.js +1 -13
- package/build/components/Loading/index.js +1 -13
- package/build/components/Loading/styles.js +15 -19
- package/build/components/LoginDialog/LoginDialog.js +72 -68
- package/build/components/LoginDialog/LoginDialogCloseButton.js +28 -31
- package/build/components/LoginDialog/LoginDialogForm.js +46 -45
- package/build/components/LoginDialog/LoginDialogFormError.js +34 -36
- package/build/components/LoginDialog/LoginDialogHeader.js +42 -42
- package/build/components/LoginDialog/index.js +1 -13
- package/build/components/Logo/Logo.js +44 -47
- package/build/components/Logo/index.js +1 -13
- package/build/components/MenuItem/MenuItem.js +7 -16
- package/build/components/MenuItem/index.js +1 -13
- package/build/components/NoItems/NoItems.js +16 -17
- package/build/components/NoItems/index.js +1 -13
- package/build/components/NotFound/NotFound.js +31 -35
- package/build/components/NotFound/index.js +1 -13
- package/build/components/Package/Package.js +105 -100
- package/build/components/Package/index.js +1 -20
- package/build/components/Package/styles.js +78 -73
- package/build/components/PackageList/PackageList.js +56 -57
- package/build/components/PackageList/index.js +1 -13
- package/build/components/Person/Person.js +22 -28
- package/build/components/Person/PersonTooltip.js +17 -21
- package/build/components/Person/index.js +1 -13
- package/build/components/Person/utils.js +6 -14
- package/build/components/RawViewer/RawViewer.js +27 -33
- package/build/components/RawViewer/index.js +1 -13
- package/build/components/Readme/Readme.js +21 -27
- package/build/components/Readme/Readme.js.map +1 -1
- package/build/components/Readme/Readme.spec.js +10 -13
- package/build/components/Readme/Readme.spec.js.map +1 -1
- package/build/components/Readme/index.js +1 -13
- package/build/components/Readme/types.js +1 -5
- package/build/components/Readme/utils.js +8 -16
- package/build/components/RegistryInfoDialog/RegistryInfoDialog.js +18 -24
- package/build/components/RegistryInfoDialog/index.js +1 -13
- package/build/components/RegistryInfoDialog/styles.js +34 -32
- package/build/components/RegistryInfoDialog/types.js +1 -5
- package/build/components/Repository/Repository.js +36 -41
- package/build/components/Repository/index.js +1 -13
- package/build/components/Search/AutoComplete/AutoComplete.js +22 -31
- package/build/components/Search/AutoComplete/index.js +1 -13
- package/build/components/Search/AutoComplete/styles.js +2 -9
- package/build/components/Search/Search.js +71 -69
- package/build/components/Search/SearchItem.js +87 -79
- package/build/components/Search/index.js +1 -13
- package/build/components/Search/styles.js +7 -14
- package/build/components/Search/utils.js +3 -9
- package/build/components/SettingsMenu/SettingsMenu.js +56 -57
- package/build/components/SettingsMenu/index.js +1 -13
- package/build/components/SideBarTitle/SideBarTitle.js +52 -51
- package/build/components/SideBarTitle/index.js +1 -13
- package/build/components/SideBarTitle/utils.js +6 -15
- package/build/components/TextField/TextField.js +22 -21
- package/build/components/TextField/index.js +1 -13
- package/build/components/UpLinks/UpLinks.js +32 -38
- package/build/components/UpLinks/UplinkLink.js +12 -18
- package/build/components/UpLinks/index.js +1 -13
- package/build/components/UpLinks/styles.js +28 -29
- package/build/components/Versions/HistoryList.js +56 -60
- package/build/components/Versions/TagList.js +29 -33
- package/build/components/Versions/Versions.js +44 -52
- package/build/components/Versions/index.js +1 -13
- package/build/components/Versions/styles.js +26 -27
- package/build/components/Versions/types.js +1 -5
- package/build/hooks/index.js +2 -20
- package/build/hooks/useLocalStorage.js +7 -12
- package/build/hooks/useOnClickOutside.js +4 -9
- package/build/index.js +63 -530
- package/build/layouts/Version/Version.js +9 -16
- package/build/layouts/Version/index.js +1 -13
- package/build/providers/AppConfigurationProvider/AppConfigurationProvider.js +24 -31
- package/build/providers/AppConfigurationProvider/index.js +1 -20
- package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.js +15 -24
- package/build/providers/PersistenceSettingProvider/index.js +1 -20
- package/build/providers/TranslatorProvider/TranslatorProvider.js +24 -30
- package/build/providers/TranslatorProvider/TranslatorProvider.spec.js +19 -22
- package/build/providers/TranslatorProvider/index.js +1 -26
- package/build/providers/VersionProvider/VersionProvider.js +27 -29
- package/build/providers/VersionProvider/index.js +1 -20
- package/build/providers/index.js +3 -38
- package/build/sections/Detail/ContainerContent.js +20 -28
- package/build/sections/Detail/Detail.js +22 -30
- package/build/sections/Detail/ReadmeSection.js +8 -14
- package/build/sections/Detail/Tabs.js +20 -26
- package/build/sections/Detail/index.js +1 -13
- package/build/sections/Footer/Footer.js +73 -70
- package/build/sections/Footer/index.js +1 -13
- package/build/sections/Footer/styles.js +62 -57
- package/build/sections/Header/Header.js +34 -42
- package/build/sections/Header/HeaderGreetings.js +12 -18
- package/build/sections/Header/HeaderLeft.js +25 -29
- package/build/sections/Header/HeaderMenu.js +23 -29
- package/build/sections/Header/HeaderRight.js +41 -49
- package/build/sections/Header/HeaderSettingsDialog.js +60 -58
- package/build/sections/Header/HeaderToolTip.js +13 -17
- package/build/sections/Header/HeaderToolTipIcon.js +23 -31
- package/build/sections/Header/LanguageSwitch.js +51 -54
- package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.js +75 -80
- package/build/sections/Header/RegistryInfoContent/index.js +1 -13
- package/build/sections/Header/RegistryInfoContent/styles.js +12 -16
- package/build/sections/Header/index.js +1 -13
- package/build/sections/Header/styles.js +32 -36
- package/build/sections/Home/Home.js +14 -19
- package/build/sections/Home/index.js +1 -13
- package/build/sections/SideBar/Sidebar.js +40 -47
- package/build/sections/SideBar/index.js +1 -13
- package/build/sections/index.js +2 -20
- package/build/src/Theme/index.d.ts +1 -1
- package/build/store/api.js +28 -29
- package/build/store/index.js +3 -51
- package/build/store/models/configuration.js +20 -22
- package/build/store/models/download.js +26 -27
- package/build/store/models/index.js +13 -19
- package/build/store/models/login.js +60 -63
- package/build/store/models/manifest.js +57 -58
- package/build/store/models/packages.js +29 -27
- package/build/store/models/routes.js +1 -7
- package/build/store/models/search.js +62 -61
- package/build/store/models/utils.js +1 -7
- package/build/store/storage.js +4 -11
- package/build/store/store.js +6 -13
- package/build/test/i18n-config.js +4 -11
- package/build/test/test-react-testing-library.js +32 -50
- package/build/types/index.js +1 -5
- package/build/types/packageMeta.js +1 -5
- package/build/utils/__partials__/packageMeta.js +1 -7
- package/build/utils/cli-utils.js +12 -32
- package/build/utils/index.js +8 -74
- package/build/utils/loadable.js +6 -14
- package/build/utils/routes.js +1 -7
- package/build/utils/token.js +11 -18
- package/build/utils/url.js +12 -22
- package/build/utils/utils.js +32 -46
- package/package.json +11 -9
- package/src/AppTest/AppRoute.test.tsx +5 -4
- package/src/Theme/index.ts +1 -1
- package/src/components/Author/Author.test.tsx +2 -1
- package/src/components/CopyClipboard/CopyToClipBoard.test.tsx +2 -1
- package/src/components/Dependencies/Dependencies.test.tsx +7 -0
- package/src/components/Dependencies/DependencyBlock.test.tsx +3 -2
- package/src/components/Engines/Engines.test.tsx +3 -2
- package/src/components/ErrorBoundary/ErrorBoundary.test.tsx +2 -1
- package/src/components/Forbidden/Forbidden.test.tsx +3 -2
- package/src/components/HeaderInfoDialog/HeaderInfoDialog.test.tsx +2 -1
- package/src/components/LoginDialog/LoginDialog.test.tsx +8 -7
- package/src/components/NotFound/Notfound.test.tsx +3 -2
- package/src/components/PackageList/Packagelist.test.tsx +2 -1
- package/src/components/Search/Search.test.tsx +9 -8
- package/src/components/Versions/Versions.test.tsx +8 -8
- package/src/providers/TranslatorProvider/TranslatorProvider.spec.tsx +2 -1
- package/src/providers/VersionProvider/VersionProvider.tsx +5 -2
- package/src/sections/Home/Home.test.tsx +7 -3
- package/src/sections/SideBar/Sidebar.test.tsx +8 -7
- package/src/sections/SideBar/Sidebar.tsx +1 -0
- package/src/store/api.test.ts +8 -6
- package/src/store/models/login.test.ts +24 -20
- package/src/test/test-react-testing-library.tsx +3 -5
- package/src/utils/cli-utils.test.ts +10 -9
- package/src/utils/token.test.ts +5 -3
- package/tsconfig.build.json +1 -1
- package/vitest/api/glob-sidebar.json +12520 -0
- package/vitest/api/got-sidebar.json +23346 -0
- package/vitest/api/home-packages.json +40 -0
- package/vitest/api/jquery-readme.js +3 -0
- package/vitest/api/jquery-sidebar.json +5908 -0
- package/vitest/api/search-verdaccio.json +1192 -0
- package/vitest/api/storybook-readme.js +3 -0
- package/vitest/api/storybook-sidebar.json +53782 -0
- package/vitest/api/storybook-v.json +53782 -0
- package/vitest/identity.js +29 -0
- package/vitest/react-markdown.tsx +7 -0
- package/vitest/server-handlers.ts +82 -0
- package/vitest/server.ts +6 -0
- package/vitest/setup-env.ts +33 -0
- package/vitest/setup.ts +40 -0
- package/vitest/unit/components/__mocks__/token.ts +33 -0
- package/vitest/unit/empty-string.ts +1 -0
- package/vitest/unit/empty.ts +1 -0
- package/vitest/vitestSerializer.ts +31 -0
- package/vitest.config.mjs +39 -0
- package/build/__mocks__/react-markdown.js +0 -18
- package/build/__mocks__/remark-plugin.js +0 -8
- package/build/src/__mocks__/react-markdown.d.ts +0 -4
- package/build/src/__mocks__/remark-plugin.d.ts +0 -1
- package/src/__mocks__/react-markdown.tsx +0 -8
- package/src/__mocks__/remark-plugin.ts +0 -1
|
@@ -39,7 +39,7 @@ interface Params {
|
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
/**
|
|
42
|
-
*
|
|
42
|
+
*
|
|
43
43
|
* @example
|
|
44
44
|
Once a component has been wrapped with `VersionProvider`, use the hook `useVersion()` to get an object with:
|
|
45
45
|
```jsx
|
|
@@ -58,7 +58,10 @@ interface Params {
|
|
|
58
58
|
@category Provider
|
|
59
59
|
*/
|
|
60
60
|
const VersionProvider: React.FC<{ children: any }> = ({ children }) => {
|
|
61
|
-
const
|
|
61
|
+
const router = useParams<Params>();
|
|
62
|
+
|
|
63
|
+
const { version: packageVersion, package: pkgName, scope } = router;
|
|
64
|
+
|
|
62
65
|
// @ts-ignore
|
|
63
66
|
const { manifest, readme, packageName, hasNotBeenFound } = useSelector(
|
|
64
67
|
(state: RootState) => state.manifest
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @vitest-environment jsdom
|
|
3
|
+
*/
|
|
1
4
|
import React from 'react';
|
|
2
5
|
import { MemoryRouter } from 'react-router';
|
|
6
|
+
import { afterEach, describe, expect, test, vi } from 'vitest';
|
|
3
7
|
|
|
4
8
|
import { store } from '../../store';
|
|
5
9
|
import { act, renderWithStore, screen, waitFor } from '../../test/test-react-testing-library';
|
|
@@ -7,8 +11,8 @@ import Home from './Home';
|
|
|
7
11
|
|
|
8
12
|
// force the windows to expand to display items
|
|
9
13
|
// https://github.com/bvaughn/react-virtualized/issues/493#issuecomment-640084107
|
|
10
|
-
|
|
11
|
-
|
|
14
|
+
vi.spyOn(HTMLElement.prototype, 'offsetHeight', 'get').mockReturnValue(600);
|
|
15
|
+
vi.spyOn(HTMLElement.prototype, 'offsetWidth', 'get').mockReturnValue(600);
|
|
12
16
|
|
|
13
17
|
const ComponentHome: React.FC = () => (
|
|
14
18
|
<MemoryRouter>
|
|
@@ -18,7 +22,7 @@ const ComponentHome: React.FC = () => (
|
|
|
18
22
|
|
|
19
23
|
describe('Home', () => {
|
|
20
24
|
afterEach(() => {
|
|
21
|
-
|
|
25
|
+
vi.clearAllMocks();
|
|
22
26
|
});
|
|
23
27
|
|
|
24
28
|
test('should render titles', async () => {
|
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { MemoryRouter } from 'react-router';
|
|
3
|
+
import { vi } from 'vitest';
|
|
3
4
|
|
|
4
5
|
import { VersionProvider } from '../../providers';
|
|
5
6
|
import { store } from '../../store';
|
|
6
7
|
import { act, renderWithStore, screen, waitFor } from '../../test/test-react-testing-library';
|
|
7
8
|
import Sidebar from './Sidebar';
|
|
8
9
|
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
vi.mock('marked');
|
|
11
|
+
vi.mock('marked-highlight');
|
|
11
12
|
|
|
12
13
|
const ComponentSideBar: React.FC = () => (
|
|
13
|
-
<MemoryRouter>
|
|
14
|
+
<MemoryRouter initialEntries={[`/-/web/detail/jquery`]}>
|
|
14
15
|
<VersionProvider>
|
|
15
16
|
<Sidebar />
|
|
16
17
|
</VersionProvider>
|
|
17
18
|
</MemoryRouter>
|
|
18
19
|
);
|
|
19
20
|
|
|
20
|
-
const mockPkgName =
|
|
21
|
+
const mockPkgName = vi.fn().mockReturnValue('jquery');
|
|
21
22
|
|
|
22
|
-
|
|
23
|
-
...
|
|
23
|
+
vi.mock('react-router-dom', async (importOriginal) => ({
|
|
24
|
+
...(await importOriginal<typeof import('react-router-dom')>()),
|
|
24
25
|
useParams: () => ({
|
|
25
26
|
package: mockPkgName(),
|
|
26
27
|
}),
|
|
@@ -28,7 +29,7 @@ jest.mock('react-router-dom', () => ({
|
|
|
28
29
|
|
|
29
30
|
describe('Sidebar', () => {
|
|
30
31
|
afterEach(() => {
|
|
31
|
-
|
|
32
|
+
vi.clearAllMocks();
|
|
32
33
|
});
|
|
33
34
|
test('should render titles', async () => {
|
|
34
35
|
act(() => {
|
|
@@ -26,6 +26,7 @@ const getModuleType = (manifest: PackageMetaInterface) => {
|
|
|
26
26
|
|
|
27
27
|
const DetailSidebar: React.FC = () => {
|
|
28
28
|
const { packageMeta, packageName, packageVersion } = useVersion();
|
|
29
|
+
|
|
29
30
|
const { configOptions } = useConfig();
|
|
30
31
|
const version = packageVersion || packageMeta?.latest.version || '';
|
|
31
32
|
const time = packageMeta?.time ? packageMeta.time[version] : '';
|
package/src/store/api.test.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { vi } from 'vitest';
|
|
2
|
+
|
|
1
3
|
import api, { handleResponseType } from './api';
|
|
2
4
|
|
|
3
5
|
describe('api', () => {
|
|
@@ -50,10 +52,10 @@ describe('api', () => {
|
|
|
50
52
|
});
|
|
51
53
|
|
|
52
54
|
describe('api client', () => {
|
|
53
|
-
let fetchSpy
|
|
55
|
+
let fetchSpy;
|
|
54
56
|
|
|
55
57
|
beforeEach(() => {
|
|
56
|
-
fetchSpy =
|
|
58
|
+
fetchSpy = vi.spyOn(window, 'fetch');
|
|
57
59
|
});
|
|
58
60
|
|
|
59
61
|
afterEach(() => {
|
|
@@ -81,9 +83,9 @@ describe('api', () => {
|
|
|
81
83
|
expect(response).toEqual({ a: 1 });
|
|
82
84
|
});
|
|
83
85
|
|
|
84
|
-
test('when there is token from storage', async () => {
|
|
85
|
-
|
|
86
|
-
|
|
86
|
+
test.skip('when there is token from storage', async () => {
|
|
87
|
+
vi.resetModules();
|
|
88
|
+
vi.doMock('./storage', () => ({ getItem: () => 'token-xx-xx-xx' }));
|
|
87
89
|
|
|
88
90
|
fetchSpy.mockImplementation(() =>
|
|
89
91
|
Promise.resolve({
|
|
@@ -95,7 +97,7 @@ describe('api', () => {
|
|
|
95
97
|
})
|
|
96
98
|
);
|
|
97
99
|
|
|
98
|
-
const api = require('./api').default;
|
|
100
|
+
const api = await require('./api').default;
|
|
99
101
|
const response = await api.request('https://verdaccio.tld/resource', 'GET');
|
|
100
102
|
|
|
101
103
|
expect(fetchSpy).toHaveBeenCalledWith('https://verdaccio.tld/resource', {
|
|
@@ -1,20 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { vi } from 'vitest';
|
|
2
|
+
|
|
3
|
+
// import { generateTokenWithTimeRange } from '../../../jest/unit/components/__mocks__/token';
|
|
3
4
|
|
|
4
5
|
describe('getDefaultUserState', (): void => {
|
|
5
6
|
const username = 'xyz';
|
|
6
7
|
|
|
7
8
|
beforeEach(() => {
|
|
8
|
-
|
|
9
|
+
vi.resetModules();
|
|
9
10
|
});
|
|
10
11
|
|
|
11
|
-
test('should return state with empty user', ()
|
|
12
|
+
test('should return state with empty user', async () => {
|
|
12
13
|
const token = 'token-xx-xx-xx';
|
|
13
|
-
|
|
14
|
-
|
|
14
|
+
vi.doMock('../storage', async (importOriginal) => ({
|
|
15
|
+
...(await importOriginal<typeof import('../storage')>()),
|
|
15
16
|
getItem: (key: string) => (key === 'token' ? token : username),
|
|
16
17
|
}));
|
|
17
|
-
const
|
|
18
|
+
const Login = await import('./login');
|
|
19
|
+
const { getDefaultUserState } = Login;
|
|
18
20
|
const result = {
|
|
19
21
|
token: null,
|
|
20
22
|
username: null,
|
|
@@ -22,17 +24,19 @@ describe('getDefaultUserState', (): void => {
|
|
|
22
24
|
expect(getDefaultUserState()).toEqual(result);
|
|
23
25
|
});
|
|
24
26
|
|
|
25
|
-
test('should return state with user from storage', ()
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}
|
|
27
|
+
// test('should return state with user from storage', async () => {
|
|
28
|
+
// const token = generateTokenWithTimeRange(24);
|
|
29
|
+
//
|
|
30
|
+
// vi.doMock('../storage', async (importOriginal) => ({
|
|
31
|
+
// ...(await importOriginal<typeof import('../storage')>()),
|
|
32
|
+
// getItem: (key: string) => (key === 'token' ? token : username),
|
|
33
|
+
// }));
|
|
34
|
+
// const Login = await import('./login');
|
|
35
|
+
// const { getDefaultUserState } = Login;
|
|
36
|
+
// const result = {
|
|
37
|
+
// token,
|
|
38
|
+
// username,
|
|
39
|
+
// };
|
|
40
|
+
// expect(getDefaultUserState()).toEqual(result);
|
|
41
|
+
// });
|
|
38
42
|
});
|
|
@@ -31,11 +31,9 @@ const customRender = (node: React.ReactElement, ...options: any) => {
|
|
|
31
31
|
return render(
|
|
32
32
|
<AppConfigurationProvider>
|
|
33
33
|
<PersistenceSettingProvider>
|
|
34
|
-
<
|
|
35
|
-
<
|
|
36
|
-
|
|
37
|
-
</ThemeProvider>
|
|
38
|
-
</StyledEngineProvider>
|
|
34
|
+
<ThemeProvider>
|
|
35
|
+
<I18nextProvider i18n={i18nConfig}>{node}</I18nextProvider>
|
|
36
|
+
</ThemeProvider>
|
|
39
37
|
</PersistenceSettingProvider>
|
|
40
38
|
</AppConfigurationProvider>,
|
|
41
39
|
...options
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SyntheticEvent } from 'react';
|
|
2
|
+
import { vi } from 'vitest';
|
|
2
3
|
|
|
3
4
|
import { copyToClipBoardUtility, getCLISetConfigRegistry } from './cli-utils';
|
|
4
5
|
|
|
@@ -6,30 +7,30 @@ describe('copyToClipBoardUtility', () => {
|
|
|
6
7
|
let originalGetSelection: typeof window.getSelection;
|
|
7
8
|
|
|
8
9
|
const mockGetSelectionResult = {
|
|
9
|
-
removeAllRanges:
|
|
10
|
-
addRange:
|
|
10
|
+
removeAllRanges: vi.fn(),
|
|
11
|
+
addRange: vi.fn(),
|
|
11
12
|
};
|
|
12
13
|
beforeEach(() => {
|
|
13
14
|
originalGetSelection = window.getSelection;
|
|
14
15
|
|
|
15
|
-
window.getSelection =
|
|
16
|
+
window.getSelection = vi.fn().mockReturnValue(mockGetSelectionResult);
|
|
16
17
|
});
|
|
17
18
|
afterEach(() => {
|
|
18
19
|
window.getSelection = originalGetSelection;
|
|
19
|
-
|
|
20
|
+
vi.restoreAllMocks();
|
|
20
21
|
});
|
|
21
22
|
|
|
22
23
|
test('should call the DOM APIs', () => {
|
|
23
24
|
// Given
|
|
24
25
|
const testEvent: { preventDefault: Function } = {
|
|
25
|
-
preventDefault:
|
|
26
|
+
preventDefault: vi.fn(),
|
|
26
27
|
};
|
|
27
28
|
const testCopy = 'copy text';
|
|
28
29
|
const spys = {
|
|
29
|
-
createElement:
|
|
30
|
-
execCommand:
|
|
31
|
-
appendChild:
|
|
32
|
-
removeChild:
|
|
30
|
+
createElement: vi.spyOn(document, 'createElement'),
|
|
31
|
+
execCommand: vi.spyOn(document, 'execCommand'),
|
|
32
|
+
appendChild: vi.spyOn(document.body, 'appendChild'),
|
|
33
|
+
removeChild: vi.spyOn(document.body, 'removeChild'),
|
|
33
34
|
};
|
|
34
35
|
const expectedDiv = document.createElement('div');
|
|
35
36
|
expectedDiv.innerText = testCopy;
|
package/src/utils/token.test.ts
CHANGED
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
|
|
1
|
+
import { vi } from 'vitest';
|
|
2
|
+
|
|
3
|
+
/* eslint-disable jest/no-mocks-import */
|
|
2
4
|
import {
|
|
3
5
|
generateInvalidToken,
|
|
4
6
|
generateTokenWithExpirationAsString,
|
|
5
7
|
generateTokenWithOutExpiration,
|
|
6
8
|
generateTokenWithTimeRange,
|
|
7
|
-
} from '../../
|
|
9
|
+
} from '../../vitest/unit/components/__mocks__/token';
|
|
8
10
|
import { isTokenExpire } from './token';
|
|
9
11
|
|
|
10
12
|
/* eslint-disable no-console */
|
|
11
|
-
console.error =
|
|
13
|
+
console.error = vi.fn();
|
|
12
14
|
|
|
13
15
|
describe('isTokenExpire', (): void => {
|
|
14
16
|
test('isTokenExpire - null is not a valid payload', (): void => {
|
package/tsconfig.build.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"jsx": "react"
|
|
14
14
|
},
|
|
15
15
|
"include": ["src/**/*", "./src/types/index.d.ts"],
|
|
16
|
-
"types": ["node", "
|
|
16
|
+
"types": ["node", "@testing-library/jest-dom"],
|
|
17
17
|
"typedocOptions": {
|
|
18
18
|
"categoryOrder": ["Model", "Component", "Provider", "*"],
|
|
19
19
|
"defaultCategory": "Component",
|