From 196c53661ff56ed13d1a48131ed5671c5979cc1f Mon Sep 17 00:00:00 2001 From: Jeroen Claassens Date: Thu, 14 Apr 2022 01:45:00 +0200 Subject: [PATCH] test: rewrite tests to react-testing-library (part 1) --- jest.config.js | 6 +- package.json | 1 - {test => test-old}/Switch.test.tsx | 0 {test => test-old}/Then.test.tsx | 0 {test => test-old}/Unless.test.tsx | 0 {test => test-old}/When.test.tsx | 0 test/If.test.tsx | 339 +++++------- test/__snapshots__/If.test.tsx.snap | 193 ------- test/__snapshots__/Switch.test.tsx.snap | 93 ---- test/__snapshots__/Then.test.tsx.snap | 11 - test/__snapshots__/Unless.test.tsx.snap | 23 - test/__snapshots__/When.test.tsx.snap | 23 - test/jest.setup.ts | 10 +- test/tsconfig.json | 2 +- test/utils.test.ts | 4 + yarn.lock | 653 +----------------------- 16 files changed, 171 insertions(+), 1187 deletions(-) rename {test => test-old}/Switch.test.tsx (100%) rename {test => test-old}/Then.test.tsx (100%) rename {test => test-old}/Unless.test.tsx (100%) rename {test => test-old}/When.test.tsx (100%) delete mode 100644 test/__snapshots__/If.test.tsx.snap delete mode 100644 test/__snapshots__/Switch.test.tsx.snap delete mode 100644 test/__snapshots__/Then.test.tsx.snap delete mode 100644 test/__snapshots__/Unless.test.tsx.snap delete mode 100644 test/__snapshots__/When.test.tsx.snap diff --git a/jest.config.js b/jest.config.js index 8a8039a4..d5ae6d0e 100644 --- a/jest.config.js +++ b/jest.config.js @@ -1,4 +1,6 @@ -module.exports = { +/** @type {import('@jest/types').Config.InitialOptions} */ +const config = { + testEnvironment: 'jsdom', testMatch: ['/test/**/*.test.(ts|tsx)'], setupFilesAfterEnv: ['/test/jest.setup.ts'], globals: { @@ -9,3 +11,5 @@ module.exports = { }, coveragePathIgnorePatterns: ['/src/Augments.d.ts', '/src/tinyWarning.ts', '/src/isThenable.ts'] }; + +module.exports = config; diff --git a/package.json b/package.json index 09ca15a4..b93ab502 100644 --- a/package.json +++ b/package.json @@ -54,7 +54,6 @@ "eslint-plugin-react": "^7.29.4", "eslint-plugin-react-hooks": "^4.4.0", "husky": "^7.0.4", - "jest-enzyme": "^7.1.2", "lint-staged": "^12.3.7", "prettier": "^2.6.2", "pretty-quick": "^3.1.3", diff --git a/test/Switch.test.tsx b/test-old/Switch.test.tsx similarity index 100% rename from test/Switch.test.tsx rename to test-old/Switch.test.tsx diff --git a/test/Then.test.tsx b/test-old/Then.test.tsx similarity index 100% rename from test/Then.test.tsx rename to test-old/Then.test.tsx diff --git a/test/Unless.test.tsx b/test-old/Unless.test.tsx similarity index 100% rename from test/Unless.test.tsx rename to test-old/Unless.test.tsx diff --git a/test/When.test.tsx b/test-old/When.test.tsx similarity index 100% rename from test/When.test.tsx rename to test-old/When.test.tsx diff --git a/test/If.test.tsx b/test/If.test.tsx index 61c8cea7..86c18038 100644 --- a/test/If.test.tsx +++ b/test/If.test.tsx @@ -1,177 +1,151 @@ -import { mount, ReactWrapper, shallow } from 'enzyme'; +import { render, screen, waitFor } from '@testing-library/react'; import React from 'react'; -import { act } from 'react-dom/test-utils'; import { Else, Fallback, If, Then } from '../src'; import type { ExtendablePromise } from '../src/types'; -const waitForComponentToPaint = async (wrapped: ReactWrapper) => { - await act(async () => { - await new Promise((resolve) => setTimeout(resolve, 0)); - wrapped.update(); - }); -}; - describe(' component', () => { describe('Truthy cases', () => { describe('With NODE_ENV === test', () => { test('GIVEN THEN renders children', () => { - const wrapped = shallow( + render( - Then + Then ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Then)).toBe(true); + expect(screen.queryByTestId('thenChild')).toContainHTML('Then'); }); test('GIVEN & THEN renders children of ', () => { - const wrapped = shallow( + render( - Then + Then - Else + Else ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Then)).toBe(true); - expect(wrapped.containsMatchingElement(Else)).toBe(false); + expect(screen.queryByTestId('thenChild')).toContainHTML('Then'); + expect(screen.queryByTestId('elseChild')).toBeNull(); }); test('GIVEN multiple blocks THEN renders only first block', () => { - const wrapped = shallow( + render( - Then1 + Then1 - Then2 + Then2 ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Then1)).toBe(true); - expect(wrapped.containsMatchingElement(Then2)).toBe(false); + expect(screen.queryByTestId('thenChild1')).toContainHTML('Then1'); + expect(screen.queryByTestId('thenChild2')).toBeNull(); }); test('GIVEN before THEN renders block', () => { - const wrapped = shallow( + render( - Else + Else - Then + Then ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Then)).toBe(true); - expect(wrapped.containsMatchingElement(Else)).toBe(false); - }); - - test('GIVEN w/o children THEN renders null', () => { - const wrapped = shallow(); - - expect(wrapped).toMatchSnapshot(); - expect(wrapped.html()).toBeNull(); + expect(screen.queryByTestId('thenChild')).toContainHTML('Then'); + expect(screen.queryByTestId('elseChild')).toBeNull(); }); }); describe('With NODE_ENV === production', () => { beforeEach(() => { - // @ts-expect-error __DEV__ is exposed by Jest - global.__DEV__ = false; + __DEV__ = false; }); afterAll(() => { - // @ts-expect-error __DEV__ is exposed by Jest - global.__DEV__ = true; + __DEV__ = true; }); test('GIVEN content w/o nor THEN renders empty block in production', () => { - const wrapped = shallow( + render( - Not Then nor Else + Not Then nor Else ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Not Then nor Else)).toBe(true); + expect(screen.queryByTestId('child')).toContainHTML('Not Then nor Else'); }); }); describe('With condition as a function', () => { test('GIVEN THEN renders children of ', () => { - const wrapped = shallow( + render( true}> - Then + Then ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Then)).toBe(true); + expect(screen.queryByTestId('thenChild')).toContainHTML('Then'); }); test('GIVEN & THEN does not render children of ', () => { - const wrapped = shallow( + render( true}> - Then + Then - Else + Else ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Then)).toBe(true); - expect(wrapped.containsMatchingElement(Else)).toBe(false); + expect(screen.queryByTestId('thenChild')).toContainHTML('Then'); + expect(screen.queryByTestId('elseChild')).toBeNull(); }); test('GIVEN multiple blocks THEN renders only first block', () => { - const wrapped = shallow( + render( true}> - Then1 + Then - Then2 + Else ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Then1)).toBe(true); - expect(wrapped.containsMatchingElement(Then2)).toBe(false); + expect(screen.queryByTestId('thenChild')).toContainHTML('Then'); + expect(screen.queryByTestId('elseChild')).toBeNull(); }); test('GIVEN before THEN renders block', () => { - const wrapped = shallow( + render( true}> - Else + Else - Then + Then ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Then)).toBe(true); - expect(wrapped.containsMatchingElement(Else)).toBe(false); + expect(screen.queryByTestId('thenChild')).toContainHTML('Then'); + expect(screen.queryByTestId('elseChild')).toBeNull(); }); }); @@ -179,76 +153,81 @@ describe(' component', () => { test('GIVEN pending promise THEN renders block', () => { // eslint-disable-next-line @typescript-eslint/no-empty-function const pendingPromise = new Promise(() => {}); - const wrapped: ReactWrapper = mount( + + render( - Fallback + Fallback - Then + Then - Else + Else ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Fallback)).toBe(true); - expect(wrapped.containsMatchingElement(Then)).toBe(false); - expect(wrapped.containsMatchingElement(Else)).toBe(false); + expect(screen.queryByTestId('fallbackChild')).toContainHTML('Fallback'); + expect(screen.queryByTestId('thenChild')).toBeNull(); + expect(screen.queryByTestId('elseChild')).toBeNull(); }); test('GIVEN resolved promise THEN renders block', async () => { - const wrapped: ReactWrapper = mount( + render( - Fallback + Fallback - Then + Then - Else + Else ); - await waitForComponentToPaint(wrapped); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Fallback)).toBe(false); - expect(wrapped.containsMatchingElement(Then)).toBe(true); - expect(wrapped.containsMatchingElement(Else)).toBe(false); + await waitFor(() => screen.getByTestId('thenChild')); + + expect(screen.queryByTestId('fallbackChild')).toBeNull(); + expect(screen.queryByTestId('thenChild')).toContainHTML('Then'); + expect(screen.queryByTestId('elseChild')).toBeNull(); }); test('GIVEN resolved promise THEN can retrieve return value inside THEN block', async () => { const returnValue = 'RETURN_VALUE'; - const wrapped: ReactWrapper = mount( + + render( - {(something: any) => {something}} + {(something: any) => {something}} ); - await waitForComponentToPaint(wrapped); - expect(wrapped.containsMatchingElement({returnValue})).toBe(true); + await waitFor(() => screen.getByTestId('thenChild')); + + expect(screen.queryByTestId('thenChild')).toContainHTML(`${returnValue}`); }); test('GIVEN promise with extra properties THEN should forward these properties to function param inside ', async () => { const extendedPromise: ExtendablePromise = Promise.resolve(); extendedPromise.testValue = 1; - const wrapped: ReactWrapper = mount( + + render( {(data: any, history: any, promise: any) => { data; history; // 'skip declared but value never read' error - return {promise.testValue}; + return {promise.testValue}; }} ); - await waitForComponentToPaint(wrapped); - expect(wrapped.containsMatchingElement({extendedPromise.testValue})); + + await waitFor(() => screen.getByTestId('thenChild')); + + expect(screen.queryByTestId('thenChild')).toContainHTML(`${extendedPromise.testValue}`); }); }); }); @@ -256,230 +235,182 @@ describe(' component', () => { describe('Falsy condition', () => { describe('With NODE_ENV === test', () => { test('GIVEN THEN renders null', () => { - const wrapped = shallow( + render( - Then + Then ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Then)).toBe(false); - expect(wrapped.html()).toBe(''); + expect(screen.queryByTestId('thenChild')).toBeNull(); }); test('GIVEN & THEN renders children of ', () => { - const wrapped = shallow( + render( - Then + Then - Else + Else ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Then)).toBe(false); - expect(wrapped.containsMatchingElement(Else)).toBe(true); + expect(screen.queryByTestId('thenChild')).toBeNull(); + expect(screen.queryByTestId('elseChild')).toContainHTML('Else'); }); test('GIVEN multiple THEN renders only first block', () => { - const wrapped = shallow( + render( - Else1 + Else1 - Else2 + Else2 ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Else1)).toBe(true); - expect(wrapped.containsMatchingElement(Else2)).toBe(false); + expect(screen.queryByTestId('elseChild1')).toContainHTML('Else1'); + expect(screen.queryByTestId('elseChild2')).toBeNull(); }); test('GIVEN multiple before THEN renders block', () => { - const wrapped = shallow( + render( - Else + Else - Then + Then ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Else)).toBe(true); - expect(wrapped.containsMatchingElement(Then)).toBe(false); - }); - - test('GIVEN w/o children THEN renders null', () => { - const wrapped = shallow(); - - expect(wrapped).toMatchSnapshot(); - expect(wrapped.html()).toBeNull(); + expect(screen.queryByTestId('thenChild')).toBeNull(); + expect(screen.queryByTestId('elseChild')).toContainHTML('Else'); }); }); describe('With NODE_ENV === production', () => { beforeEach(() => { - // @ts-expect-error __DEV__ is exposed by Jest - global.__DEV__ = false; + __DEV__ = false; }); afterAll(() => { - // @ts-expect-error __DEV__ is exposed by Jest - global.__DEV__ = true; + __DEV__ = true; }); test('GIVEN content w/o nor THEN renders empty block in production', () => { - const wrapped = shallow( + render( - Not Then nor Else + Not Then nor Else ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Not Then nor Else)).toBe(false); + expect(screen.queryByTestId('child')).toBeNull(); }); }); describe('With child as function', () => { test('GIVEN THEN renders children returned by function', () => { - const wrapped = mount( + render( - {() => Else} + {() => Else} ); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Else)).toBe(true); - }); - - test('GIVEN THEN renders children returned by function', () => { - const wrapped = mount( - false}> - {() => Else} - - ); - - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Else)).toBe(true); + expect(screen.queryByTestId('elseChild')).toContainHTML('Else'); }); test('GIVEN body that should not evaluate THEN should not render', () => { - // @ts-expect-error called should just be declared + // @ts-ignore Jest thinks the boolean is never read let called = false; - const wrapped = mount( - - - {() => { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - called = true; -
Bad
; - }} -
- -
Ok
-
-
- ); - - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(
Ok
)).toBe(true); - expect(wrapped.containsMatchingElement(
Bad
)).toBe(false); - }); - - test('GIVEN body that should not evaluate THEN should not render', () => { - // @ts-expect-error called should just be declared - let called = false; + const voidReturnCallback = (): void => { + called = true; +
Then
; + }; - const wrapped = mount( - false}> + render( + - {() => { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - called = true; -
Bad
; - }} +
Then
- -
Ok
-
+ {voidReturnCallback() as any}
); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(
Ok
)).toBe(true); - expect(wrapped.containsMatchingElement(
Bad
)).toBe(false); + expect(screen.queryByTestId('thenChild')).toBeNull(); + expect(screen.queryByTestId('elseChild')).toBeNull(); }); }); describe('With condition as a promise', () => { test('GIVEN rejected promise THEN renders block', async () => { - const wrapped: ReactWrapper = mount( + render( // eslint-disable-next-line prefer-promise-reject-errors - Fallback + Fallback - Then + Then - Else + Else ); - expect(wrapped.containsMatchingElement(Fallback)).toBe(true); - expect(wrapped.containsMatchingElement(Then)).toBe(false); - expect(wrapped.containsMatchingElement(Else)).toBe(false); - - await waitForComponentToPaint(wrapped); + await waitFor(() => screen.getByTestId('elseChild')); - expect(wrapped).toMatchSnapshot(); - expect(wrapped.containsMatchingElement(Fallback)).toBe(false); - expect(wrapped.containsMatchingElement(Then)).toBe(false); - expect(wrapped.containsMatchingElement(Else)).toBe(true); + expect(screen.queryByTestId('fallbackChild')).toBeNull(); + expect(screen.queryByTestId('thenChild')).toBeNull(); + expect(screen.queryByTestId('elseChild')).toContainHTML('Else'); }); test('GIVEN rejected promise THEN can retrieve error inside ELSE block', async () => { const caughtError = 'CAUGHT_ERROR'; - const wrapped: ReactWrapper = mount( + + render( - {(something: any) => {something}} + {(something: any) => {something}} ); - await waitForComponentToPaint(wrapped); - expect(wrapped.containsMatchingElement({caughtError})).toBe(true); + + await waitFor(() => screen.getByTestId('elseChild')); + + expect(screen.queryByTestId('fallbackChild')).toBeNull(); + expect(screen.queryByTestId('thenChild')).toBeNull(); + expect(screen.queryByTestId('elseChild')).toContainHTML(`${caughtError}`); }); test('GIVEN promise with extra properties THEN should forward these properties to function param inside ', async () => { // eslint-disable-next-line prefer-promise-reject-errors const extendedPromise: ExtendablePromise = Promise.reject(); extendedPromise.testValue = 'TEST_VALUE'; - const wrapped: ReactWrapper = mount( + + render( {(data: any, history: any, promise: any) => { data; history; // 'skip declared but value never read' error - return {promise.testValue}; + return {promise.testValue}; }} ); - await waitForComponentToPaint(wrapped); - expect(wrapped.containsMatchingElement({extendedPromise.testValue})); + + await waitFor(() => screen.getByTestId('elseChild')); + + expect(screen.queryByTestId('fallbackChild')).toBeNull(); + expect(screen.queryByTestId('thenChild')).toBeNull(); + expect(screen.queryByTestId('elseChild')).toContainHTML(`${extendedPromise.testValue}`); }); }); }); diff --git a/test/__snapshots__/If.test.tsx.snap b/test/__snapshots__/If.test.tsx.snap deleted file mode 100644 index 45a2f846..00000000 --- a/test/__snapshots__/If.test.tsx.snap +++ /dev/null @@ -1,193 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[` component Falsy condition With NODE_ENV === production GIVEN content w/o nor THEN renders empty block in production 1`] = ``; - -exports[` component Falsy condition With NODE_ENV === test GIVEN & THEN renders children of 1`] = ` - - - - Else - - - -`; - -exports[` component Falsy condition With NODE_ENV === test GIVEN THEN renders null 1`] = ``; - -exports[` component Falsy condition With NODE_ENV === test GIVEN multiple THEN renders only first block 1`] = ` - - - - Else1 - - - -`; - -exports[` component Falsy condition With NODE_ENV === test GIVEN multiple before THEN renders block 1`] = ` - - - - Else - - - -`; - -exports[` component Falsy condition With NODE_ENV === test GIVEN w/o children THEN renders null 1`] = `""`; - -exports[` component Falsy condition With child as function GIVEN THEN renders children returned by function 1`] = ` - - Else - -`; - -exports[` component Falsy condition With child as function GIVEN THEN renders children returned by function 2`] = ` - - Else - -`; - -exports[` component Falsy condition With child as function GIVEN body that should not evaluate THEN should not render 1`] = ` -
- Ok -
-`; - -exports[` component Falsy condition With child as function GIVEN body that should not evaluate THEN should not render 2`] = ` -
- Ok -
-`; - -exports[` component Falsy condition With condition as a promise GIVEN rejected promise THEN renders block 1`] = ` - - Else - -`; - -exports[` component Truthy cases With NODE_ENV === production GIVEN content w/o nor THEN renders empty block in production 1`] = ` - - - Not Then nor Else - - -`; - -exports[` component Truthy cases With NODE_ENV === test GIVEN before THEN renders block 1`] = ` - - - - Then - - - -`; - -exports[` component Truthy cases With NODE_ENV === test GIVEN & THEN renders children of 1`] = ` - - - - Then - - - -`; - -exports[` component Truthy cases With NODE_ENV === test GIVEN THEN renders children 1`] = ` - - - - Then - - - -`; - -exports[` component Truthy cases With NODE_ENV === test GIVEN multiple blocks THEN renders only first block 1`] = ` - - - - Then1 - - - -`; - -exports[` component Truthy cases With NODE_ENV === test GIVEN w/o children THEN renders null 1`] = `""`; - -exports[` component Truthy cases With condition as a function GIVEN before THEN renders block 1`] = ` - - - - Then - - - -`; - -exports[` component Truthy cases With condition as a function GIVEN & THEN does not render children of 1`] = ` - - - - Then - - - -`; - -exports[` component Truthy cases With condition as a function GIVEN THEN renders children of 1`] = ` - - - - Then - - - -`; - -exports[` component Truthy cases With condition as a function GIVEN multiple blocks THEN renders only first block 1`] = ` - - - - Then1 - - - -`; - -exports[` component Truthy cases With condition as a promise GIVEN pending promise THEN renders block 1`] = ` - - Fallback - -`; - -exports[` component Truthy cases With condition as a promise GIVEN resolved promise THEN renders block 1`] = ` - - Then - -`; diff --git a/test/__snapshots__/Switch.test.tsx.snap b/test/__snapshots__/Switch.test.tsx.snap deleted file mode 100644 index 95f39b4c..00000000 --- a/test/__snapshots__/Switch.test.tsx.snap +++ /dev/null @@ -1,93 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[` component Renders children GIVEN child as function THEN resolves for first 1`] = ` - - Case1 - -`; - -exports[` component Renders children GIVEN condition as function THEN resolves for first 1`] = ` - - - Case1 - - -`; - -exports[` component Renders children GIVEN multiple cases w/ falsy condition then function as truthy condition THEN renders children of second 1`] = ` - - - Case2 - - -`; - -exports[` component Renders children GIVEN multiple cases w/ falsy condition then truthy condition THEN renders children of second 1`] = ` - - - Case2 - - -`; - -exports[` component Renders children GIVEN multiple cases w/ truthy condition THEN renders children of first 1`] = ` - - - Case1 - - -`; - -exports[` component Renders nothing in some cases GIVEN invalid React children THEN does not render those 1`] = ` - - - Case2 - - -`; - -exports[` component Renders nothing in some cases GIVEN multiple cases w/ all falsy condition THEN renders nothing 1`] = `""`; - -exports[` component Renders nothing in some cases GIVEN no children THEN renders nothing 1`] = `""`; - -exports[` component Renders the child element of GIVEN children as function THEN renders children of 1`] = ` - - Default - -`; - -exports[` component Renders the child element of GIVEN falsy and THEN renders children of 1`] = ` - - - Default - - -`; - -exports[` component Renders the child element of GIVEN simple THEN renders children of 1`] = ` - - - Default - - -`; - -exports[` component Renders the child element of GIVEN truthy and THEN renders children of 1`] = ` - - - Case - - -`; diff --git a/test/__snapshots__/Then.test.tsx.snap b/test/__snapshots__/Then.test.tsx.snap deleted file mode 100644 index 4b349099..00000000 --- a/test/__snapshots__/Then.test.tsx.snap +++ /dev/null @@ -1,11 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[` component GIVEN children THEN directly renders children 1`] = ` - - - Then - - -`; - -exports[` component GIVEN no children THEN renders null 1`] = ``; diff --git a/test/__snapshots__/Unless.test.tsx.snap b/test/__snapshots__/Unless.test.tsx.snap deleted file mode 100644 index 3103ddab..00000000 --- a/test/__snapshots__/Unless.test.tsx.snap +++ /dev/null @@ -1,23 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[` component Falsy cases GIVEN condition as function & some children THEN renders those 1`] = ` - - - Unless - - -`; - -exports[` component Falsy cases GIVEN some children THEN renders those 1`] = ` - - - Unless - - -`; - -exports[` component Truthy cases GIVEN condition as function & children THEN does not render those 1`] = `""`; - -exports[` component Truthy cases GIVEN no children THEN renders null 1`] = `""`; - -exports[` component Truthy cases GIVEN some children THEN does not render those 1`] = `""`; diff --git a/test/__snapshots__/When.test.tsx.snap b/test/__snapshots__/When.test.tsx.snap deleted file mode 100644 index 86d354f0..00000000 --- a/test/__snapshots__/When.test.tsx.snap +++ /dev/null @@ -1,23 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[` component Falsy cases GIVEN condition as function & some children THEN does not render those 1`] = `""`; - -exports[` component Falsy cases GIVEN some children THEN does not render those 1`] = `""`; - -exports[` component Truthy cases GIVEN condition as function & children THEN renders those 1`] = ` - - - When - - -`; - -exports[` component Truthy cases GIVEN no children THEN renders null 1`] = `""`; - -exports[` component Truthy cases GIVEN some children THEN renders those 1`] = ` - - - When - - -`; diff --git a/test/jest.setup.ts b/test/jest.setup.ts index c0c95818..1e639c01 100644 --- a/test/jest.setup.ts +++ b/test/jest.setup.ts @@ -1,12 +1,4 @@ -import { configure } from 'enzyme'; -import Adapter from 'enzyme-adapter-react-16'; -import { createSerializer } from 'enzyme-to-json'; -import 'jest-enzyme'; - -configure({ adapter: new Adapter() }); - -// @ts-ignore => Type definitions are off -expect.addSnapshotSerializer(createSerializer({ mode: 'deep' })); +import '@testing-library/jest-dom'; // Stub out console.warn so it doesn't log in tests const originalWarn = console.warn; diff --git a/test/tsconfig.json b/test/tsconfig.json index 9e63c8b4..0cdfa5c2 100644 --- a/test/tsconfig.json +++ b/test/tsconfig.json @@ -3,6 +3,6 @@ "compilerOptions": { "rootDir": "." }, - "include": [".", "../src/Augments.d.ts"], + "include": ["."], "references": [{ "path": "../src" }] } diff --git a/test/utils.test.ts b/test/utils.test.ts index fbfbd6e6..53187251 100644 --- a/test/utils.test.ts +++ b/test/utils.test.ts @@ -1,3 +1,7 @@ +/** + * @jest-environment node + */ + import { isThenable } from '../src/isThenable'; import type { CancellablePromise, ExtendablePromise } from '../src/types'; import { createCancellablePromise, shallowArraysEqual } from '../src/utils'; diff --git a/yarn.lock b/yarn.lock index 9160931d..85d98e05 100644 --- a/yarn.lock +++ b/yarn.lock @@ -67,7 +67,7 @@ __metadata: languageName: node linkType: hard -"@babel/generator@npm:^7.17.9, @babel/generator@npm:^7.4.0": +"@babel/generator@npm:^7.17.9": version: 7.17.9 resolution: "@babel/generator@npm:7.17.9" dependencies: @@ -362,7 +362,7 @@ __metadata: languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.11.5, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.16.7, @babel/parser@npm:^7.17.9, @babel/parser@npm:^7.4.3, @babel/parser@npm:^7.7.0": +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.11.5, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.16.7, @babel/parser@npm:^7.17.9, @babel/parser@npm:^7.7.0": version: 7.17.9 resolution: "@babel/parser@npm:7.17.9" bin: @@ -1434,7 +1434,7 @@ __metadata: languageName: node linkType: hard -"@babel/template@npm:^7.16.7, @babel/template@npm:^7.3.3, @babel/template@npm:^7.4.0": +"@babel/template@npm:^7.16.7, @babel/template@npm:^7.3.3": version: 7.16.7 resolution: "@babel/template@npm:7.16.7" dependencies: @@ -1445,7 +1445,7 @@ __metadata: languageName: node linkType: hard -"@babel/traverse@npm:^7.1.0, @babel/traverse@npm:^7.11.5, @babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.16.7, @babel/traverse@npm:^7.16.8, @babel/traverse@npm:^7.17.3, @babel/traverse@npm:^7.17.9, @babel/traverse@npm:^7.4.3, @babel/traverse@npm:^7.7.0": +"@babel/traverse@npm:^7.1.0, @babel/traverse@npm:^7.11.5, @babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.16.7, @babel/traverse@npm:^7.16.8, @babel/traverse@npm:^7.17.3, @babel/traverse@npm:^7.17.9, @babel/traverse@npm:^7.7.0": version: 7.17.9 resolution: "@babel/traverse@npm:7.17.9" dependencies: @@ -1463,7 +1463,7 @@ __metadata: languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.16.0, @babel/types@npm:^7.16.7, @babel/types@npm:^7.16.8, @babel/types@npm:^7.17.0, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.0, @babel/types@npm:^7.4.4, @babel/types@npm:^7.7.0, @babel/types@npm:^7.8.3": +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.16.0, @babel/types@npm:^7.16.7, @babel/types@npm:^7.16.8, @babel/types@npm:^7.17.0, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.7.0, @babel/types@npm:^7.8.3": version: 7.17.0 resolution: "@babel/types@npm:7.17.0" dependencies: @@ -1765,17 +1765,6 @@ __metadata: languageName: node linkType: hard -"@jest/console@npm:^24.9.0": - version: 24.9.0 - resolution: "@jest/console@npm:24.9.0" - dependencies: - "@jest/source-map": ^24.9.0 - chalk: ^2.0.1 - slash: ^2.0.0 - checksum: ee6468c4aeeb8752126e92e20b0ffbf32abda731e9b7865b63b60bd569c3536e9c901efcec4d81c506a7c6fea2a970ace8262190961aba31dedbfeaa3459d78b - languageName: node - linkType: hard - "@jest/console@npm:^25.5.0": version: 25.5.0 resolution: "@jest/console@npm:25.5.0" @@ -1825,18 +1814,6 @@ __metadata: languageName: node linkType: hard -"@jest/environment@npm:^24.9.0": - version: 24.9.0 - resolution: "@jest/environment@npm:24.9.0" - dependencies: - "@jest/fake-timers": ^24.9.0 - "@jest/transform": ^24.9.0 - "@jest/types": ^24.9.0 - jest-mock: ^24.9.0 - checksum: 6a663c05713ad0cd1dc7c5bf715a3e5e655e73ee02497ab0a9dea4fe0855226504535c504d265c054c8b4bafb1216dff0e7e0e3b4ed064bda4c3d6efe74fe369 - languageName: node - linkType: hard - "@jest/environment@npm:^25.5.0": version: 25.5.0 resolution: "@jest/environment@npm:25.5.0" @@ -1848,17 +1825,6 @@ __metadata: languageName: node linkType: hard -"@jest/fake-timers@npm:^24.9.0": - version: 24.9.0 - resolution: "@jest/fake-timers@npm:24.9.0" - dependencies: - "@jest/types": ^24.9.0 - jest-message-util: ^24.9.0 - jest-mock: ^24.9.0 - checksum: d49ab33e28b070d5be75659ed89d4b79e74012c8c28ecf51cf9b89732ba5b2a57129787dd144949c048a0460ed62f1e32079a4b10d896c75bde024699d7a2c5c - languageName: node - linkType: hard - "@jest/fake-timers@npm:^25.5.0": version: 25.5.0 resolution: "@jest/fake-timers@npm:25.5.0" @@ -1919,17 +1885,6 @@ __metadata: languageName: node linkType: hard -"@jest/source-map@npm:^24.9.0": - version: 24.9.0 - resolution: "@jest/source-map@npm:24.9.0" - dependencies: - callsites: ^3.0.0 - graceful-fs: ^4.1.15 - source-map: ^0.6.0 - checksum: 00479faf6854d5d183b94465db1a0876980ced72bf26cb6a2fe8c04977dc2692e6529faa6b64269492d1d9cab51feebaac9d453d1e6bb1306fc15777143b72af - languageName: node - linkType: hard - "@jest/source-map@npm:^25.5.0": version: 25.5.0 resolution: "@jest/source-map@npm:25.5.0" @@ -1941,17 +1896,6 @@ __metadata: languageName: node linkType: hard -"@jest/test-result@npm:^24.9.0": - version: 24.9.0 - resolution: "@jest/test-result@npm:24.9.0" - dependencies: - "@jest/console": ^24.9.0 - "@jest/types": ^24.9.0 - "@types/istanbul-lib-coverage": ^2.0.0 - checksum: 7145c7baa289798881160b3cfa5b2466b2636238a52b77cf46e5468ffe2881fb8fb8d4966155a8d508b26a8d29a302a9eb9037de1a371e5dc9bb6e94837c0ae7 - languageName: node - linkType: hard - "@jest/test-result@npm:^25.5.0": version: 25.5.0 resolution: "@jest/test-result@npm:25.5.0" @@ -1977,30 +1921,6 @@ __metadata: languageName: node linkType: hard -"@jest/transform@npm:^24.9.0": - version: 24.9.0 - resolution: "@jest/transform@npm:24.9.0" - dependencies: - "@babel/core": ^7.1.0 - "@jest/types": ^24.9.0 - babel-plugin-istanbul: ^5.1.0 - chalk: ^2.0.1 - convert-source-map: ^1.4.0 - fast-json-stable-stringify: ^2.0.0 - graceful-fs: ^4.1.15 - jest-haste-map: ^24.9.0 - jest-regex-util: ^24.9.0 - jest-util: ^24.9.0 - micromatch: ^3.1.10 - pirates: ^4.0.1 - realpath-native: ^1.1.0 - slash: ^2.0.0 - source-map: ^0.6.1 - write-file-atomic: 2.4.1 - checksum: 0153bcd6a9b464c85ee8b67c360f745ab8e41b1b363220f1f12ed644a667dceb6666366017f7f849a8f6cde960020b638b8557eae852af0537520b0903881fbd - languageName: node - linkType: hard - "@jest/transform@npm:^25.5.1": version: 25.5.1 resolution: "@jest/transform@npm:25.5.1" @@ -2025,17 +1945,6 @@ __metadata: languageName: node linkType: hard -"@jest/types@npm:^24.9.0": - version: 24.9.0 - resolution: "@jest/types@npm:24.9.0" - dependencies: - "@types/istanbul-lib-coverage": ^2.0.0 - "@types/istanbul-reports": ^1.1.1 - "@types/yargs": ^13.0.0 - checksum: 603698f774cf22f9d16a0e0fac9e10e7db21052aebfa33db154c8a5940e0eb1fa9c079a8c91681041ad3aeee2adfa950608dd0c663130316ba034b8bca7b301c - languageName: node - linkType: hard - "@jest/types@npm:^25.5.0": version: 25.5.0 resolution: "@jest/types@npm:25.5.0" @@ -3158,15 +3067,6 @@ __metadata: languageName: node linkType: hard -"@types/cheerio@npm:^0.22.22": - version: 0.22.31 - resolution: "@types/cheerio@npm:0.22.31" - dependencies: - "@types/node": "*" - checksum: 8d73d22fdd384c290514dad6f9f4a436f5a90bc836bbe9b46fe4f557041a03484f0547291d0347185a806149f465355fc225dc87477b8cf5af5be307bb75e6a4 - languageName: node - linkType: hard - "@types/estree@npm:*": version: 0.0.51 resolution: "@types/estree@npm:0.0.51" @@ -3358,15 +3258,6 @@ __metadata: languageName: node linkType: hard -"@types/yargs@npm:^13.0.0": - version: 13.0.12 - resolution: "@types/yargs@npm:13.0.12" - dependencies: - "@types/yargs-parser": "*" - checksum: 4eb34d8c071892299646e5a3fb02a643f5a5ea8da8f4d1817001882ebbcfa4fbda235b8978732f8eb55fa16433296e2087907fe69678a69125f0dca627a91426 - languageName: node - linkType: hard - "@types/yargs@npm:^15.0.0": version: 15.0.14 resolution: "@types/yargs@npm:15.0.14" @@ -3537,7 +3428,7 @@ __metadata: languageName: node linkType: hard -"acorn-globals@npm:^4.1.0, acorn-globals@npm:^4.3.2": +"acorn-globals@npm:^4.3.2": version: 4.3.4 resolution: "acorn-globals@npm:4.3.4" dependencies: @@ -3588,15 +3479,6 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^5.5.3": - version: 5.7.4 - resolution: "acorn@npm:5.7.4" - bin: - acorn: bin/acorn - checksum: f51392a4d25c7705fadb890f784c59cde4ac1c5452ccd569fa59bd2191b7951b4a6398348ab7ea08a54f0bc0a56c13776710f4e1bae9de441e4d33e2015ad1e0 - languageName: node - linkType: hard - "acorn@npm:^6.0.1": version: 6.4.2 resolution: "acorn@npm:6.4.2" @@ -3968,13 +3850,6 @@ __metadata: languageName: node linkType: hard -"async-limiter@npm:~1.0.0": - version: 1.0.1 - resolution: "async-limiter@npm:1.0.1" - checksum: 2b849695b465d93ad44c116220dee29a5aeb63adac16c1088983c339b0de57d76e82533e8e364a93a9f997f28bbfc6a92948cefc120652bd07f3b59f8d75cf2b - languageName: node - linkType: hard - "asynckit@npm:^0.4.0": version: 0.4.0 resolution: "asynckit@npm:0.4.0" @@ -4112,18 +3987,6 @@ __metadata: languageName: node linkType: hard -"babel-plugin-istanbul@npm:^5.1.0": - version: 5.2.0 - resolution: "babel-plugin-istanbul@npm:5.2.0" - dependencies: - "@babel/helper-plugin-utils": ^7.0.0 - find-up: ^3.0.0 - istanbul-lib-instrument: ^3.3.0 - test-exclude: ^5.2.3 - checksum: 46e31a53d1c08a4b738c988871e94dd83e534b3d49248c45c9e63d04d221aa787d8c4f32576e1fade26dbab7cabeae665cbf5eb067aaef74500048dfef365c80 - languageName: node - linkType: hard - "babel-plugin-istanbul@npm:^6.0.0": version: 6.1.1 resolution: "babel-plugin-istanbul@npm:6.1.1" @@ -4335,15 +4198,6 @@ __metadata: languageName: node linkType: hard -"bindings@npm:^1.5.0": - version: 1.5.0 - resolution: "bindings@npm:1.5.0" - dependencies: - file-uri-to-path: 1.0.0 - checksum: 65b6b48095717c2e6105a021a7da4ea435aa8d3d3cd085cb9e85bcb6e5773cf318c4745c3f7c504412855940b585bdf9b918236612a1c7a7942491de176f1ae7 - languageName: node - linkType: hard - "boolbase@npm:^1.0.0": version: 1.0.0 resolution: "boolbase@npm:1.0.0" @@ -4582,7 +4436,7 @@ __metadata: languageName: node linkType: hard -"chalk@npm:^2.0.0, chalk@npm:^2.0.1, chalk@npm:^2.4.1, chalk@npm:^2.4.2": +"chalk@npm:^2.0.0, chalk@npm:^2.4.1, chalk@npm:^2.4.2": version: 2.4.2 resolution: "chalk@npm:2.4.2" dependencies: @@ -4667,13 +4521,6 @@ __metadata: languageName: node linkType: hard -"circular-json-es6@npm:^2.0.1": - version: 2.0.2 - resolution: "circular-json-es6@npm:2.0.2" - checksum: 26e85f05af97e070595da251dff8e2bef2c9d93f55a398a8e9dcbc5a6375bd2fd45b0199f71d5020aaff8c0560d3509831d548665b50b91ebbcc2cb8ed8cfcad - languageName: node - linkType: hard - "class-utils@npm:^0.3.5": version: 0.3.6 resolution: "class-utils@npm:0.3.6" @@ -5408,13 +5255,6 @@ __metadata: languageName: node linkType: hard -"cssom@npm:0.3.x, cssom@npm:>= 0.3.2 < 0.4.0, cssom@npm:~0.3.6": - version: 0.3.8 - resolution: "cssom@npm:0.3.8" - checksum: 24beb3087c76c0d52dd458be9ee1fbc80ac771478a9baef35dd258cdeb527c68eb43204dd439692bb2b1ae5272fa5f2946d10946edab0d04f1078f85e06bc7f6 - languageName: node - linkType: hard - "cssom@npm:^0.4.1": version: 0.4.4 resolution: "cssom@npm:0.4.4" @@ -5422,12 +5262,10 @@ __metadata: languageName: node linkType: hard -"cssstyle@npm:^1.0.0": - version: 1.4.0 - resolution: "cssstyle@npm:1.4.0" - dependencies: - cssom: 0.3.x - checksum: 7efb9731d68dd042f32e0e3bbc7c1096653ba521f21ab1c5b158862321e4fcbfb51070641b834fadc8dd070a634dd43f328177e00d1b8481b5143a3e09f3d3f6 +"cssom@npm:~0.3.6": + version: 0.3.8 + resolution: "cssom@npm:0.3.8" + checksum: 24beb3087c76c0d52dd458be9ee1fbc80ac771478a9baef35dd258cdeb527c68eb43204dd439692bb2b1ae5272fa5f2946d10946edab0d04f1078f85e06bc7f6 languageName: node linkType: hard @@ -5503,7 +5341,7 @@ __metadata: languageName: node linkType: hard -"data-urls@npm:^1.0.0, data-urls@npm:^1.1.0": +"data-urls@npm:^1.1.0": version: 1.1.0 resolution: "data-urls@npm:1.1.0" dependencies: @@ -5582,15 +5420,6 @@ __metadata: languageName: node linkType: hard -"deep-equal-ident@npm:^1.1.1": - version: 1.1.1 - resolution: "deep-equal-ident@npm:1.1.1" - dependencies: - lodash.isequal: ^3.0 - checksum: cc6a3f6910bd54a0db2f561120a96c55f6b7298ac4e44d11c1064de95d8f399cec32062856ed618154abf826d24ea1d85e720ab4c470356033afd8bf85b18d1e - languageName: node - linkType: hard - "deep-is@npm:^0.1.3, deep-is@npm:~0.1.3": version: 0.1.4 resolution: "deep-is@npm:0.1.4" @@ -5964,31 +5793,6 @@ __metadata: languageName: node linkType: hard -"enzyme-matchers@npm:^7.1.2": - version: 7.1.2 - resolution: "enzyme-matchers@npm:7.1.2" - dependencies: - circular-json-es6: ^2.0.1 - deep-equal-ident: ^1.1.1 - peerDependencies: - enzyme: ">=3.4.0" - checksum: 847727b7c49683b4cb66c47271635318dc99e7e0b4bd23677dfc3a888474d3816420b0981af46839ddeb218e87be6297911e80e34aa2b58f9b8702a916b27fee - languageName: node - linkType: hard - -"enzyme-to-json@npm:^3.3.0": - version: 3.6.2 - resolution: "enzyme-to-json@npm:3.6.2" - dependencies: - "@types/cheerio": ^0.22.22 - lodash: ^4.17.21 - react-is: ^16.12.0 - peerDependencies: - enzyme: ^3.4.0 - checksum: e81f3dc05b5c440da416544a3cbc41fb9e79de0777453e48fe55de822f7d6f56ee08e5173d46a7624cf2781198396509c470bdd616a1ea441e6fa9ddf4396477 - languageName: node - linkType: hard - "err-code@npm:^2.0.2": version: 2.0.3 resolution: "err-code@npm:2.0.3" @@ -6072,7 +5876,7 @@ __metadata: languageName: node linkType: hard -"escodegen@npm:^1.11.1, escodegen@npm:^1.9.1": +"escodegen@npm:^1.11.1": version: 1.14.3 resolution: "escodegen@npm:1.14.3" dependencies: @@ -6742,13 +6546,6 @@ __metadata: languageName: node linkType: hard -"file-uri-to-path@npm:1.0.0": - version: 1.0.0 - resolution: "file-uri-to-path@npm:1.0.0" - checksum: b648580bdd893a008c92c7ecc96c3ee57a5e7b6c4c18a9a09b44fb5d36d79146f8e442578bc0e173dc027adf3987e254ba1dfd6e3ec998b7c282873010502144 - languageName: node - linkType: hard - "fill-range@npm:^4.0.0": version: 4.0.0 resolution: "fill-range@npm:4.0.0" @@ -6865,15 +6662,6 @@ __metadata: languageName: node linkType: hard -"for-each@npm:^0.3.3": - version: 0.3.3 - resolution: "for-each@npm:0.3.3" - dependencies: - is-callable: ^1.1.3 - checksum: 6c48ff2bc63362319c65e2edca4a8e1e3483a2fabc72fbe7feaf8c73db94fc7861bd53bc02c8a66a0c1dd709da6b04eec42e0abdd6b40ce47305ae92a25e5d28 - languageName: node - linkType: hard - "for-in@npm:^1.0.2": version: 1.0.2 resolution: "for-in@npm:1.0.2" @@ -6974,17 +6762,6 @@ __metadata: languageName: node linkType: hard -"fsevents@npm:^1.2.7": - version: 1.2.13 - resolution: "fsevents@npm:1.2.13" - dependencies: - bindings: ^1.5.0 - nan: ^2.12.1 - checksum: ae855aa737aaa2f9167e9f70417cf6e45a5cd11918e1fee9923709a0149be52416d765433b4aeff56c789b1152e718cd1b13ddec6043b78cdda68260d86383c1 - conditions: os=darwin - languageName: node - linkType: hard - "fsevents@npm:^2.1.2, fsevents@npm:~2.3.2": version: 2.3.2 resolution: "fsevents@npm:2.3.2" @@ -6995,16 +6772,6 @@ __metadata: languageName: node linkType: hard -"fsevents@patch:fsevents@^1.2.7#~builtin": - version: 1.2.13 - resolution: "fsevents@patch:fsevents@npm%3A1.2.13#~builtin::version=1.2.13&hash=18f3a7" - dependencies: - bindings: ^1.5.0 - nan: ^2.12.1 - conditions: os=darwin - languageName: node - linkType: hard - "fsevents@patch:fsevents@^2.1.2#~builtin, fsevents@patch:fsevents@~2.3.2#~builtin": version: 2.3.2 resolution: "fsevents@patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=18f3a7" @@ -7317,7 +7084,7 @@ __metadata: languageName: node linkType: hard -"graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6": +"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6": version: 4.2.10 resolution: "graceful-fs@npm:4.2.10" checksum: 3f109d70ae123951905d85032ebeae3c2a5a7a997430df00ea30df0e3a6c60cf6689b109654d6fdacd28810a053348c4d14642da1d075049e6be1ba5216218da @@ -7764,15 +7531,6 @@ __metadata: languageName: node linkType: hard -"invariant@npm:^2.2.4": - version: 2.2.4 - resolution: "invariant@npm:2.2.4" - dependencies: - loose-envify: ^1.0.0 - checksum: cc3182d793aad82a8d1f0af697b462939cb46066ec48bbf1707c150ad5fad6406137e91a262022c269702e01621f35ef60269f6c0d7fd178487959809acdfb14 - languageName: node - linkType: hard - "ip-regex@npm:^2.1.0": version: 2.1.0 resolution: "ip-regex@npm:2.1.0" @@ -7854,7 +7612,7 @@ __metadata: languageName: node linkType: hard -"is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.4": +"is-callable@npm:^1.1.4, is-callable@npm:^1.2.4": version: 1.2.4 resolution: "is-callable@npm:1.2.4" checksum: 1a28d57dc435797dae04b173b65d6d1e77d4f16276e9eff973f994eadcfdc30a017e6a597f092752a083c1103cceb56c91e3dadc6692fedb9898dfaba701575f @@ -8227,13 +7985,6 @@ __metadata: languageName: node linkType: hard -"istanbul-lib-coverage@npm:^2.0.5": - version: 2.0.5 - resolution: "istanbul-lib-coverage@npm:2.0.5" - checksum: c83bf39dc722d2a3e7c98b16643f2fef719fd59adf23441ad8a1e6422bb1f3367ac7d4c42ac45d0d87413476891947b6ffbdecf2184047436336aa0c28bbfc15 - languageName: node - linkType: hard - "istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": version: 3.2.0 resolution: "istanbul-lib-coverage@npm:3.2.0" @@ -8241,21 +7992,6 @@ __metadata: languageName: node linkType: hard -"istanbul-lib-instrument@npm:^3.3.0": - version: 3.3.0 - resolution: "istanbul-lib-instrument@npm:3.3.0" - dependencies: - "@babel/generator": ^7.4.0 - "@babel/parser": ^7.4.3 - "@babel/template": ^7.4.0 - "@babel/traverse": ^7.4.3 - "@babel/types": ^7.4.0 - istanbul-lib-coverage: ^2.0.5 - semver: ^6.0.0 - checksum: 5ff86440c2f4afe83603f899721e43f9bbc0049ebf4e7fd696ea361d0c9ae5c831c656eec07c13f42ba934fc808c78f42a7884f1a08349802bc9bfa5af760571 - languageName: node - linkType: hard - "istanbul-lib-instrument@npm:^4.0.0": version: 4.0.3 resolution: "istanbul-lib-instrument@npm:4.0.3" @@ -8421,33 +8157,6 @@ __metadata: languageName: node linkType: hard -"jest-environment-enzyme@npm:^7.1.2": - version: 7.1.2 - resolution: "jest-environment-enzyme@npm:7.1.2" - dependencies: - jest-environment-jsdom: ^24.0.0 - peerDependencies: - enzyme: 3.x - jest: ">=22.0.0" - react: ^0.13.0 || ^0.14.0 || ^15.0.0 || >=16.x - checksum: fe4b976933706fea79b64eabbd9f3fdcbb432cf94f30209362ae868c53df3641232a775e0e00dfd0e34532ddbfc9689c4535d003dd436c2cc9157e0eca71531e - languageName: node - linkType: hard - -"jest-environment-jsdom@npm:^24.0.0": - version: 24.9.0 - resolution: "jest-environment-jsdom@npm:24.9.0" - dependencies: - "@jest/environment": ^24.9.0 - "@jest/fake-timers": ^24.9.0 - "@jest/types": ^24.9.0 - jest-mock: ^24.9.0 - jest-util: ^24.9.0 - jsdom: ^11.5.1 - checksum: 093e7f25735e52a1ff01673f0e3921e3e8228d2e902762bf102f1c34cd206e9b73aa83dcd0598e101c6cf4c23e99e5c84df84084258268a696c3007d6990f701 - languageName: node - linkType: hard - "jest-environment-jsdom@npm:^25.5.0": version: 25.5.0 resolution: "jest-environment-jsdom@npm:25.5.0" @@ -8476,20 +8185,6 @@ __metadata: languageName: node linkType: hard -"jest-enzyme@npm:^7.1.2": - version: 7.1.2 - resolution: "jest-enzyme@npm:7.1.2" - dependencies: - enzyme-matchers: ^7.1.2 - enzyme-to-json: ^3.3.0 - jest-environment-enzyme: ^7.1.2 - peerDependencies: - enzyme: ">=3.4.0" - jest: ">=22.0.0" - checksum: bf973e7589899336ea0be26216bbfc26da231a2b4819423c625e4edcb01d18dcdc0d04e0de02f6b6c5cc652c520bf0381a755642f02bef2f7a111a2301f83e48 - languageName: node - linkType: hard - "jest-get-type@npm:^25.2.6": version: 25.2.6 resolution: "jest-get-type@npm:25.2.6" @@ -8504,29 +8199,6 @@ __metadata: languageName: node linkType: hard -"jest-haste-map@npm:^24.9.0": - version: 24.9.0 - resolution: "jest-haste-map@npm:24.9.0" - dependencies: - "@jest/types": ^24.9.0 - anymatch: ^2.0.0 - fb-watchman: ^2.0.0 - fsevents: ^1.2.7 - graceful-fs: ^4.1.15 - invariant: ^2.2.4 - jest-serializer: ^24.9.0 - jest-util: ^24.9.0 - jest-worker: ^24.9.0 - micromatch: ^3.1.10 - sane: ^4.0.3 - walker: ^1.0.7 - dependenciesMeta: - fsevents: - optional: true - checksum: 3ec2d60863c315d52a32b2d1df3cc8bb5403f7d8bf159e556c878db09dedc4d1fb4e4d5f56cb67c92663b334d49ef8b768375b0d153adebf4d48a7b6959e71b3 - languageName: node - linkType: hard - "jest-haste-map@npm:^25.5.1": version: 25.5.1 resolution: "jest-haste-map@npm:25.5.1" @@ -8610,22 +8282,6 @@ __metadata: languageName: node linkType: hard -"jest-message-util@npm:^24.9.0": - version: 24.9.0 - resolution: "jest-message-util@npm:24.9.0" - dependencies: - "@babel/code-frame": ^7.0.0 - "@jest/test-result": ^24.9.0 - "@jest/types": ^24.9.0 - "@types/stack-utils": ^1.0.1 - chalk: ^2.0.1 - micromatch: ^3.1.10 - slash: ^2.0.0 - stack-utils: ^1.0.1 - checksum: c173117b245090967db4853c28c3452ad2987a10caf28161abbfeb8d96be13f0d9e25422df10162bcc5e46860887e35ec4b4963f85392c4a625e4c37ad242f0b - languageName: node - linkType: hard - "jest-message-util@npm:^25.5.0": version: 25.5.0 resolution: "jest-message-util@npm:25.5.0" @@ -8642,15 +8298,6 @@ __metadata: languageName: node linkType: hard -"jest-mock@npm:^24.9.0": - version: 24.9.0 - resolution: "jest-mock@npm:24.9.0" - dependencies: - "@jest/types": ^24.9.0 - checksum: 823feac37b003543fe81e05d5d8a1ec69cdf9ae5b797582a3e90424ec476120ce42a11e6b1d8231958e01232d4e40e57207cf2c56197d63d309bdeaf63fcf804 - languageName: node - linkType: hard - "jest-mock@npm:^25.5.0": version: 25.5.0 resolution: "jest-mock@npm:25.5.0" @@ -8672,13 +8319,6 @@ __metadata: languageName: node linkType: hard -"jest-regex-util@npm:^24.9.0": - version: 24.9.0 - resolution: "jest-regex-util@npm:24.9.0" - checksum: 94299972501ae5dfc3932673b263fd15dba5e28698571687a28cc59b5a173edcbf52b992f4d5a6eded9da5b7e1468d263ef96a1564267832799b41c2986fc423 - languageName: node - linkType: hard - "jest-regex-util@npm:^25.2.1, jest-regex-util@npm:^25.2.6": version: 25.2.6 resolution: "jest-regex-util@npm:25.2.6" @@ -8777,13 +8417,6 @@ __metadata: languageName: node linkType: hard -"jest-serializer@npm:^24.9.0": - version: 24.9.0 - resolution: "jest-serializer@npm:24.9.0" - checksum: 56d70bd50ebd71de7a38e1f94ef2fdf1293c3810ef6d372b69238263625d3df1e6749417872bc6be0515e39832f4c40df03c74d20d8f0f43efd14ea21e22178d - languageName: node - linkType: hard - "jest-serializer@npm:^25.5.0": version: 25.5.0 resolution: "jest-serializer@npm:25.5.0" @@ -8816,26 +8449,6 @@ __metadata: languageName: node linkType: hard -"jest-util@npm:^24.9.0": - version: 24.9.0 - resolution: "jest-util@npm:24.9.0" - dependencies: - "@jest/console": ^24.9.0 - "@jest/fake-timers": ^24.9.0 - "@jest/source-map": ^24.9.0 - "@jest/test-result": ^24.9.0 - "@jest/types": ^24.9.0 - callsites: ^3.0.0 - chalk: ^2.0.1 - graceful-fs: ^4.1.15 - is-ci: ^2.0.0 - mkdirp: ^0.5.1 - slash: ^2.0.0 - source-map: ^0.6.0 - checksum: ee84238bfb8c4aa60830b546e0e5dbdff53bbe55a1462f023182130ee7f1f3aac2dce0ab8395ab72b93e5a889fa12a55cebeeab04352a623d00d29c262dfbeb0 - languageName: node - linkType: hard - "jest-util@npm:^25.5.0": version: 25.5.0 resolution: "jest-util@npm:25.5.0" @@ -8969,40 +8582,6 @@ __metadata: languageName: node linkType: hard -"jsdom@npm:^11.5.1": - version: 11.12.0 - resolution: "jsdom@npm:11.12.0" - dependencies: - abab: ^2.0.0 - acorn: ^5.5.3 - acorn-globals: ^4.1.0 - array-equal: ^1.0.0 - cssom: ">= 0.3.2 < 0.4.0" - cssstyle: ^1.0.0 - data-urls: ^1.0.0 - domexception: ^1.0.1 - escodegen: ^1.9.1 - html-encoding-sniffer: ^1.0.2 - left-pad: ^1.3.0 - nwsapi: ^2.0.7 - parse5: 4.0.0 - pn: ^1.1.0 - request: ^2.87.0 - request-promise-native: ^1.0.5 - sax: ^1.2.4 - symbol-tree: ^3.2.2 - tough-cookie: ^2.3.4 - w3c-hr-time: ^1.0.1 - webidl-conversions: ^4.0.2 - whatwg-encoding: ^1.0.3 - whatwg-mimetype: ^2.1.0 - whatwg-url: ^6.4.1 - ws: ^5.2.0 - xml-name-validator: ^3.0.0 - checksum: 1dab757e92ce857df648ebec3dbe487954f886652faf9d97953c3b502958b1e4487e147baef5494718294e8625ae238e68354db710456fa73c394fb93dbfc68b - languageName: node - linkType: hard - "jsdom@npm:^15.2.1": version: 15.2.1 resolution: "jsdom@npm:15.2.1" @@ -9245,13 +8824,6 @@ __metadata: languageName: node linkType: hard -"left-pad@npm:^1.3.0": - version: 1.3.0 - resolution: "left-pad@npm:1.3.0" - checksum: 13fa96e17b70a54836490de22d4bab706e2ed508338bbabecfac72ecce445a74139c5b009a8112252cab8fc4ab7ac4ebd870e5b35bd236b443b12be96f8745ac - languageName: node - linkType: hard - "leven@npm:^3.1.0": version: 3.1.0 resolution: "leven@npm:3.1.0" @@ -9409,31 +8981,6 @@ __metadata: languageName: node linkType: hard -"lodash._baseisequal@npm:^3.0.0": - version: 3.0.7 - resolution: "lodash._baseisequal@npm:3.0.7" - dependencies: - lodash.isarray: ^3.0.0 - lodash.istypedarray: ^3.0.0 - lodash.keys: ^3.0.0 - checksum: aa9b072c96204b42a597bf5840d51d884c38702299c519327d56214fc3108c51d71f8a305dc1c780c90008a51d6d523001486350946c38d082a1e1c9aa57ffd4 - languageName: node - linkType: hard - -"lodash._bindcallback@npm:^3.0.0": - version: 3.0.1 - resolution: "lodash._bindcallback@npm:3.0.1" - checksum: 3916fd72bc02de3643a52d46cf5aaeab4c0b21cd7cb2fb801a8bf9dacdc8532e89b30a4ebafdf65da5fe09d8b0bf898a7416402704fd7262a976703e1c59e549 - languageName: node - linkType: hard - -"lodash._getnative@npm:^3.0.0": - version: 3.9.1 - resolution: "lodash._getnative@npm:3.9.1" - checksum: ba2152bb10bf44beb54fcd273598197972c989c2181b54e533cec1ff1ebebdf8bb02d4ffc3d5a648480a48beb3026db191f5de99adecd7eac36bbd6025c9b048 - languageName: node - linkType: hard - "lodash.debounce@npm:^4.0.8": version: 4.0.8 resolution: "lodash.debounce@npm:4.0.8" @@ -9441,30 +8988,6 @@ __metadata: languageName: node linkType: hard -"lodash.isarguments@npm:^3.0.0": - version: 3.1.0 - resolution: "lodash.isarguments@npm:3.1.0" - checksum: ae1526f3eb5c61c77944b101b1f655f846ecbedcb9e6b073526eba6890dc0f13f09f72e11ffbf6540b602caee319af9ac363d6cdd6be41f4ee453436f04f13b5 - languageName: node - linkType: hard - -"lodash.isarray@npm:^3.0.0": - version: 3.0.4 - resolution: "lodash.isarray@npm:3.0.4" - checksum: 3b298fb76ff16981353f7d0695d8680be9451b74d2e76714ddbd903a90fbaa8e1d84979d0ae99325f5a9033776771154b19e05027ab23de83202251c8abe81b5 - languageName: node - linkType: hard - -"lodash.isequal@npm:^3.0": - version: 3.0.4 - resolution: "lodash.isequal@npm:3.0.4" - dependencies: - lodash._baseisequal: ^3.0.0 - lodash._bindcallback: ^3.0.0 - checksum: 194ca9764f8602a4d86535a568dfd8a69d1e1477d67d50d507d2633c304a6ebf8309440bc2cfe28420647dcf8db76457962a30477e41e0639526ad3aeda0272d - languageName: node - linkType: hard - "lodash.ismatch@npm:^4.4.0": version: 4.4.0 resolution: "lodash.ismatch@npm:4.4.0" @@ -9472,24 +8995,6 @@ __metadata: languageName: node linkType: hard -"lodash.istypedarray@npm:^3.0.0": - version: 3.0.6 - resolution: "lodash.istypedarray@npm:3.0.6" - checksum: 76cc7b897b4b7829ec1f2722c5f05fe511af1096fa6194b4359996cd21d0bf18f58e4fe2f8d146b1f801a66b3a2ce8ddcc07b810ae9b79920256d6e0ff19207b - languageName: node - linkType: hard - -"lodash.keys@npm:^3.0.0": - version: 3.1.2 - resolution: "lodash.keys@npm:3.1.2" - dependencies: - lodash._getnative: ^3.0.0 - lodash.isarguments: ^3.0.0 - lodash.isarray: ^3.0.0 - checksum: ac7c02c793334c48161a8e8a1f12576c73ee50d1371e75680afc6c2d3740d5e9bdc899517e6c0034014eaa2512c5f433a2e6985c9e16cf28b5c9013ec81bd35e - languageName: node - linkType: hard - "lodash.map@npm:^4.5.1": version: 4.6.0 resolution: "lodash.map@npm:4.6.0" @@ -9573,7 +9078,7 @@ __metadata: languageName: node linkType: hard -"loose-envify@npm:^1.0.0, loose-envify@npm:^1.1.0, loose-envify@npm:^1.4.0": +"loose-envify@npm:^1.1.0, loose-envify@npm:^1.4.0": version: 1.4.0 resolution: "loose-envify@npm:1.4.0" dependencies: @@ -9779,7 +9284,7 @@ __metadata: languageName: node linkType: hard -"micromatch@npm:^3.1.10, micromatch@npm:^3.1.4": +"micromatch@npm:^3.1.4": version: 3.1.10 resolution: "micromatch@npm:3.1.10" dependencies: @@ -9953,7 +9458,7 @@ __metadata: languageName: node linkType: hard -"mkdirp@npm:0.x, mkdirp@npm:^0.5.1": +"mkdirp@npm:0.x": version: 0.5.6 resolution: "mkdirp@npm:0.5.6" dependencies: @@ -10118,7 +9623,7 @@ __metadata: languageName: node linkType: hard -"nan@npm:^2.12.1, nan@npm:^2.14.2": +"nan@npm:^2.14.2": version: 2.15.0 resolution: "nan@npm:2.15.0" dependencies: @@ -10382,7 +9887,7 @@ __metadata: languageName: node linkType: hard -"nwsapi@npm:^2.0.7, nwsapi@npm:^2.2.0": +"nwsapi@npm:^2.2.0": version: 2.2.0 resolution: "nwsapi@npm:2.2.0" checksum: 5ef4a9bc0c1a5b7f2e014aa6a4b359a257503b796618ed1ef0eb852098f77e772305bb0e92856e4bbfa3e6c75da48c0113505c76f144555ff38867229c2400a7 @@ -10485,17 +9990,6 @@ __metadata: languageName: node linkType: hard -"object.getownpropertydescriptors@npm:^2.1.1": - version: 2.1.3 - resolution: "object.getownpropertydescriptors@npm:2.1.3" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.3 - es-abstract: ^1.19.1 - checksum: 1467873456fd367a0eb91350caff359a8f05ceb069b4535a1846aa1f74f477a49ae704f6c89c0c14cc0ae1518ee3a0aa57c7f733a8e7b2b06b34a818e9593d2f - languageName: node - linkType: hard - "object.hasown@npm:^1.1.0": version: 1.1.0 resolution: "object.hasown@npm:1.1.0" @@ -10780,13 +10274,6 @@ __metadata: languageName: node linkType: hard -"parse5@npm:4.0.0": - version: 4.0.0 - resolution: "parse5@npm:4.0.0" - checksum: 2123cec690689fed44e6c76aa8a08215d2dadece7eff7b35156dda7485e6a232c9b737313688ee715eb0678b6a87a31026927dd74690154f8a0811059845ba46 - languageName: node - linkType: hard - "parse5@npm:5.1.0": version: 5.1.0 resolution: "parse5@npm:5.1.0" @@ -11307,7 +10794,6 @@ __metadata: eslint-plugin-react: ^7.29.4 eslint-plugin-react-hooks: ^4.4.0 husky: ^7.0.4 - jest-enzyme: ^7.1.2 lint-staged: ^12.3.7 prettier: ^2.6.2 pretty-quick: ^3.1.3 @@ -11362,16 +10848,6 @@ __metadata: languageName: node linkType: hard -"read-pkg-up@npm:^4.0.0": - version: 4.0.0 - resolution: "read-pkg-up@npm:4.0.0" - dependencies: - find-up: ^3.0.0 - read-pkg: ^3.0.0 - checksum: dd867d9a912707bc11340aebc91780be9f36f34ee1d27a5dafb8520e0cb6344138b80eb8bf8325bebf519d26ecf14cbf6190d9e5f765f0120da5ede4013f4d13 - languageName: node - linkType: hard - "read-pkg-up@npm:^7.0.1": version: 7.0.1 resolution: "read-pkg-up@npm:7.0.1" @@ -11441,15 +10917,6 @@ __metadata: languageName: node linkType: hard -"realpath-native@npm:^1.1.0": - version: 1.1.0 - resolution: "realpath-native@npm:1.1.0" - dependencies: - util.promisify: ^1.0.0 - checksum: 75ef0595dea6186384b785a9e0993c58ec604f8be2e39b602fec6d7837c7f770af4a4eb3c81f864a7d81c518a7167a6eaabbc7695b7a88c56e1ef04b91c1d586 - languageName: node - linkType: hard - "realpath-native@npm:^2.0.0": version: 2.0.0 resolution: "realpath-native@npm:2.0.0" @@ -11599,7 +11066,7 @@ __metadata: languageName: node linkType: hard -"request-promise-native@npm:^1.0.5, request-promise-native@npm:^1.0.7": +"request-promise-native@npm:^1.0.7": version: 1.0.9 resolution: "request-promise-native@npm:1.0.9" dependencies: @@ -11612,7 +11079,7 @@ __metadata: languageName: node linkType: hard -"request@npm:^2.87.0, request@npm:^2.88.0": +"request@npm:^2.88.0": version: 2.88.2 resolution: "request@npm:2.88.2" dependencies: @@ -12008,13 +11475,6 @@ __metadata: languageName: node linkType: hard -"sax@npm:^1.2.4": - version: 1.2.4 - resolution: "sax@npm:1.2.4" - checksum: d3df7d32b897a2c2f28e941f732c71ba90e27c24f62ee918bd4d9a8cfb3553f2f81e5493c7f0be94a11c1911b643a9108f231dd6f60df3fa9586b5d2e3e9e1fe - languageName: node - linkType: hard - "saxes@npm:^3.1.9": version: 3.1.11 resolution: "saxes@npm:3.1.11" @@ -12207,13 +11667,6 @@ __metadata: languageName: node linkType: hard -"slash@npm:^2.0.0": - version: 2.0.0 - resolution: "slash@npm:2.0.0" - checksum: 512d4350735375bd11647233cb0e2f93beca6f53441015eea241fe784d8068281c3987fbaa93e7ef1c38df68d9c60013045c92837423c69115297d6169aa85e6 - languageName: node - linkType: hard - "slash@npm:^3.0.0": version: 3.0.0 resolution: "slash@npm:3.0.0" @@ -12954,18 +12407,6 @@ __metadata: languageName: node linkType: hard -"test-exclude@npm:^5.2.3": - version: 5.2.3 - resolution: "test-exclude@npm:5.2.3" - dependencies: - glob: ^7.1.3 - minimatch: ^3.0.4 - read-pkg-up: ^4.0.0 - require-main-filename: ^2.0.0 - checksum: 3a67bee51b0afb0b7a51b649a7dacd920d929de2b3eccb52fa818f0b0bf2ebfced1d1a77a206b74f95c50f6682e313eedb8000cfdd5ac2f9cc6ed8a32fc4ff2e - languageName: node - linkType: hard - "test-exclude@npm:^6.0.0": version: 6.0.0 resolution: "test-exclude@npm:6.0.0" @@ -13104,7 +12545,7 @@ __metadata: languageName: node linkType: hard -"tough-cookie@npm:^2.3.3, tough-cookie@npm:^2.3.4, tough-cookie@npm:~2.5.0": +"tough-cookie@npm:^2.3.3, tough-cookie@npm:~2.5.0": version: 2.5.0 resolution: "tough-cookie@npm:2.5.0" dependencies: @@ -13597,19 +13038,6 @@ __metadata: languageName: node linkType: hard -"util.promisify@npm:^1.0.0": - version: 1.1.1 - resolution: "util.promisify@npm:1.1.1" - dependencies: - call-bind: ^1.0.0 - define-properties: ^1.1.3 - for-each: ^0.3.3 - has-symbols: ^1.0.1 - object.getownpropertydescriptors: ^2.1.1 - checksum: ea371c30b90576862487ae4efd7182aa5855019549a4019d82629acc2709e8ccb0f38944403eebec622fff8ebb44ac3f46a52d745d5f543d30606132a4905f96 - languageName: node - linkType: hard - "utility-types@npm:^3.10.0": version: 3.10.0 resolution: "utility-types@npm:3.10.0" @@ -13738,7 +13166,7 @@ __metadata: languageName: node linkType: hard -"whatwg-encoding@npm:^1.0.1, whatwg-encoding@npm:^1.0.3, whatwg-encoding@npm:^1.0.5": +"whatwg-encoding@npm:^1.0.1, whatwg-encoding@npm:^1.0.5": version: 1.0.5 resolution: "whatwg-encoding@npm:1.0.5" dependencies: @@ -13747,24 +13175,13 @@ __metadata: languageName: node linkType: hard -"whatwg-mimetype@npm:^2.1.0, whatwg-mimetype@npm:^2.2.0, whatwg-mimetype@npm:^2.3.0": +"whatwg-mimetype@npm:^2.2.0, whatwg-mimetype@npm:^2.3.0": version: 2.3.0 resolution: "whatwg-mimetype@npm:2.3.0" checksum: 23eb885940bcbcca4ff841c40a78e9cbb893ec42743993a42bf7aed16085b048b44b06f3402018931687153550f9a32d259dfa524e4f03577ab898b6965e5383 languageName: node linkType: hard -"whatwg-url@npm:^6.4.1": - version: 6.5.0 - resolution: "whatwg-url@npm:6.5.0" - dependencies: - lodash.sortby: ^4.7.0 - tr46: ^1.0.1 - webidl-conversions: ^4.0.2 - checksum: a10bd5e29f4382cd19789c2a7bbce25416e606b6fefc241c7fe34a2449de5bc5709c165bd13634eda433942d917ca7386a52841780b82dc37afa8141c31a8ebd - languageName: node - linkType: hard - "whatwg-url@npm:^7.0.0": version: 7.1.0 resolution: "whatwg-url@npm:7.1.0" @@ -13880,17 +13297,6 @@ __metadata: languageName: node linkType: hard -"write-file-atomic@npm:2.4.1": - version: 2.4.1 - resolution: "write-file-atomic@npm:2.4.1" - dependencies: - graceful-fs: ^4.1.11 - imurmurhash: ^0.1.4 - signal-exit: ^3.0.2 - checksum: 9a032212214fb281fa7004e53115dfe38cd6f7191902ac7b691524c42f565f9083f2bb810aa30936b25559ed9f9b1772a2e385c29e5e7e4ef1253388610acdf1 - languageName: node - linkType: hard - "write-file-atomic@npm:^3.0.0": version: 3.0.3 resolution: "write-file-atomic@npm:3.0.3" @@ -13903,15 +13309,6 @@ __metadata: languageName: node linkType: hard -"ws@npm:^5.2.0": - version: 5.2.3 - resolution: "ws@npm:5.2.3" - dependencies: - async-limiter: ~1.0.0 - checksum: bdb2223a40c2c68cf91b25a6c9b8c67d5275378ec6187f343314d3df7530e55b77cb9fe79fb1c6a9758389ac5aefc569d24236924b5c65c5dbbaff409ef739fc - languageName: node - linkType: hard - "ws@npm:^7.0.0": version: 7.5.7 resolution: "ws@npm:7.5.7"