From 7c38133a360c0c97db6406becdc1bf939e1001e7 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sun, 29 Jan 2023 17:00:13 -0500 Subject: [PATCH 01/45] feat(ui-devtools): initial commit --- .eslintrc.js | 27 +- .nvmrc | 2 +- .storybook/main.js | 12 + .storybook/preview.js | 9 + .vscode/extensions.json | 3 + .vscode/settings.json | 17 + package.json | 26 +- src/DevTools/DevTools.tsx | 84 + src/DevTools/Extension/Extension.tsx | 73 + .../Extension/assets/jotai-mascot.png | Bin 0 -> 36713 bytes .../Extension/components/Shell/Shell.tsx | 61 + .../components/AtomViewer/AtomViewer.tsx | 38 + .../Shell/components/AtomViewer/atoms.ts | 28 + .../components/AtomDetail/AtomDetail.tsx | 50 + .../components/DisplayAtomDetails.tsx | 49 + .../components/AtomDependentsList.tsx | 50 + .../components/components/AtomMetaDetails.tsx | 51 + .../components/AtomParseDeepNestedValue.tsx | 83 + .../components/AtomParseRawValue.tsx | 40 + .../components/MemoizedValueRenderer.tsx | 39 + .../AtomViewer/components/AtomDetail/index.ts | 1 + .../components/AtomList/AtomList.tsx | 127 + .../AtomList/components/AtomListItem.tsx | 46 + .../AtomViewer/components/AtomList/index.ts | 1 + .../Shell/components/AtomViewer/index.ts | 1 + .../utils/filter-atoms-by-string.ts | 20 + .../Shell/components/Header/Header.tsx | 58 + .../Header/components/TabsHeader.tsx | 32 + .../Header/components/ThemeToggle.tsx | 18 + .../Shell/components/Header/index.ts | 1 + .../Shell/components/PanelResizeHandle.tsx | 18 + .../Shell/components/ShellResizeBar.tsx | 55 + .../Extension/components/Shell/index.ts | 1 + .../Extension/components/Shell/styles.ts | 21 + src/DevTools/Extension/index.ts | 1 + src/DevTools/atoms/devtools-options.ts | 48 + src/DevTools/atoms/is-shell-open-atom.ts | 6 + src/DevTools/atoms/shell-styles.ts | 12 + src/DevTools/atoms/user-custom-store.ts | 12 + src/DevTools/atoms/values-atom.ts | 17 + src/DevTools/constants.ts | 15 + src/DevTools/hooks/useAtomsSnapshots.ts | 33 + src/DevTools/hooks/useThemeMode.tsx | 6 + src/DevTools/hooks/useUserStore.ts | 19 + src/DevTools/index.ts | 1 + src/DevTools/internal-jotai-store.ts | 19 + src/DevTools/utils/getAtomByKey.ts | 9 + src/DevTools/utils/getTypeOfAtomValue.ts | 50 + src/DevTools/utils/index.ts | 4 + src/DevTools/utils/parseAtomValue.ts | 60 + src/DevTools/utils/parseDebugLabel.ts | 5 + src/index.ts | 1 + src/stories/Demos/Async.tsx | 49 + src/stories/Demos/Counter.tsx | 32 + src/stories/Demos/DemoApp.tsx | 54 + src/stories/Demos/Random.tsx | 59 + src/stories/Demos/Todos.tsx | 152 + src/stories/Demos/demo-store.ts | 8 + src/stories/DevTools.stories.tsx | 23 + src/types.ts | 22 + src/utils/types.ts | 12 - src/utils/useAtomsDevtools.ts | 9 +- src/utils/useAtomsSnapshot.ts | 2 +- src/utils/useGotoAtomsSnapshot.ts | 2 +- tsconfig.build.json | 3 +- types/global.d.ts | 5 + yarn.lock | 7876 ++++++++++++++++- 67 files changed, 9562 insertions(+), 206 deletions(-) create mode 100644 .storybook/main.js create mode 100644 .storybook/preview.js create mode 100644 .vscode/extensions.json create mode 100644 .vscode/settings.json create mode 100644 src/DevTools/DevTools.tsx create mode 100644 src/DevTools/Extension/Extension.tsx create mode 100644 src/DevTools/Extension/assets/jotai-mascot.png create mode 100644 src/DevTools/Extension/components/Shell/Shell.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/atoms.ts create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/AtomDetail.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomDependentsList.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/index.ts create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/index.ts create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/index.ts create mode 100644 src/DevTools/Extension/components/Shell/components/AtomViewer/utils/filter-atoms-by-string.ts create mode 100644 src/DevTools/Extension/components/Shell/components/Header/Header.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/Header/components/TabsHeader.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/Header/components/ThemeToggle.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/Header/index.ts create mode 100644 src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/ShellResizeBar.tsx create mode 100644 src/DevTools/Extension/components/Shell/index.ts create mode 100644 src/DevTools/Extension/components/Shell/styles.ts create mode 100644 src/DevTools/Extension/index.ts create mode 100644 src/DevTools/atoms/devtools-options.ts create mode 100644 src/DevTools/atoms/is-shell-open-atom.ts create mode 100644 src/DevTools/atoms/shell-styles.ts create mode 100644 src/DevTools/atoms/user-custom-store.ts create mode 100644 src/DevTools/atoms/values-atom.ts create mode 100644 src/DevTools/constants.ts create mode 100644 src/DevTools/hooks/useAtomsSnapshots.ts create mode 100644 src/DevTools/hooks/useThemeMode.tsx create mode 100644 src/DevTools/hooks/useUserStore.ts create mode 100644 src/DevTools/index.ts create mode 100644 src/DevTools/internal-jotai-store.ts create mode 100644 src/DevTools/utils/getAtomByKey.ts create mode 100644 src/DevTools/utils/getTypeOfAtomValue.ts create mode 100644 src/DevTools/utils/index.ts create mode 100644 src/DevTools/utils/parseAtomValue.ts create mode 100644 src/DevTools/utils/parseDebugLabel.ts create mode 100644 src/stories/Demos/Async.tsx create mode 100644 src/stories/Demos/Counter.tsx create mode 100644 src/stories/Demos/DemoApp.tsx create mode 100644 src/stories/Demos/Random.tsx create mode 100644 src/stories/Demos/Todos.tsx create mode 100644 src/stories/Demos/demo-store.ts create mode 100644 src/stories/DevTools.stories.tsx create mode 100644 src/types.ts diff --git a/.eslintrc.js b/.eslintrc.js index be8192b4..f8754089 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -9,6 +9,7 @@ module.exports = { 'plugin:react-hooks/recommended', 'plugin:import/recommended', 'plugin:import/typescript', + 'plugin:storybook/recommended', ], plugins: [ '@typescript-eslint', @@ -37,22 +38,40 @@ module.exports = { 'prefer-const': 'error', curly: ['warn', 'multi-line', 'consistent'], 'no-console': 'off', - 'import/no-unresolved': ['error', { commonjs: true, amd: true }], + 'import/no-unresolved': [ + 'error', + { + commonjs: true, + amd: true, + }, + ], 'import/export': 'error', '@typescript-eslint/no-duplicate-imports': ['error'], '@typescript-eslint/explicit-module-boundary-types': 'off', '@typescript-eslint/no-unused-vars': [ 'warn', - { argsIgnorePattern: '^_', varsIgnorePattern: '^_' }, + { + argsIgnorePattern: '^_', + varsIgnorePattern: '^_', + }, ], '@typescript-eslint/no-use-before-define': 'off', '@typescript-eslint/no-empty-function': 'off', '@typescript-eslint/no-explicit-any': 'off', - 'jest/consistent-test-it': ['error', { fn: 'it', withinDescribe: 'it' }], + 'jest/consistent-test-it': [ + 'error', + { + fn: 'it', + withinDescribe: 'it', + }, + ], 'import/order': [ 'error', { - alphabetize: { order: 'asc', caseInsensitive: true }, + alphabetize: { + order: 'asc', + caseInsensitive: true, + }, groups: [ 'builtin', 'external', diff --git a/.nvmrc b/.nvmrc index ecb0f8a9..d7cb9ec3 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -18.13.0 \ No newline at end of file +16.13.2 \ No newline at end of file diff --git a/.storybook/main.js b/.storybook/main.js new file mode 100644 index 00000000..c0c828e4 --- /dev/null +++ b/.storybook/main.js @@ -0,0 +1,12 @@ +module.exports = { + stories: ['../src/**/*.stories.mdx', '../src/**/*.stories.@(js|jsx|ts|tsx)'], + addons: [ + '@storybook/addon-links', + '@storybook/addon-essentials', + '@storybook/addon-interactions', + ], + framework: '@storybook/react', + docs: { + autodocs: true, + }, +}; diff --git a/.storybook/preview.js b/.storybook/preview.js new file mode 100644 index 00000000..d3914580 --- /dev/null +++ b/.storybook/preview.js @@ -0,0 +1,9 @@ +export const parameters = { + actions: { argTypesRegex: '^on[A-Z].*' }, + controls: { + matchers: { + color: /(background|color)$/i, + date: /Date$/, + }, + }, +}; diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 00000000..d7df89c9 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,3 @@ +{ + "recommendations": ["esbenp.prettier-vscode", "dbaeumer.vscode-eslint"] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..30b9f4b0 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,17 @@ +{ + "editor.formatOnSave": true, + "[javascript,typescript]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "files.autoSave": "onFocusChange", + "editor.smoothScrolling": true, + "eslint.validate": [ + "javascript", + "javascriptreact", + "typescript", + "typescriptreact" + ], + "editor.codeActionsOnSave": { + "source.fixAll.eslint": true + } +} diff --git a/package.json b/package.json index 9b1dc932..ce96e908 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,9 @@ "release": "release-it", "release:next": "yarn run release --preRelease=next", "release:minor": "yarn run release minor", - "release:patch": "yarn run release patch" + "release:patch": "yarn run release patch", + "storybook": "start-storybook -p 6006", + "build-storybook": "build-storybook" }, "repository": { "type": "git", @@ -83,9 +85,18 @@ "registry": "https://registry.npmjs.org" }, "devDependencies": { + "@babel/core": "^7.20.12", "@commitlint/cli": "^17.4.0", "@commitlint/config-conventional": "^17.4.0", "@release-it/conventional-changelog": "^5.1.1", + "@storybook/addon-actions": "^6.5.15", + "@storybook/addon-essentials": "^6.5.15", + "@storybook/addon-interactions": "^6.5.15", + "@storybook/addon-links": "^6.5.15", + "@storybook/builder-webpack4": "^6.5.15", + "@storybook/manager-webpack4": "^6.5.15", + "@storybook/react": "^6.5.15", + "@storybook/testing-library": "^0.0.13", "@swc/core": "^1.3.25", "@swc/jest": "^0.2.24", "@testing-library/react": "^13.4.0", @@ -95,6 +106,7 @@ "@types/react-dom": "^18.0.10", "@typescript-eslint/eslint-plugin": "^5.48.0", "@typescript-eslint/parser": "^5.48.0", + "babel-loader": "^8.3.0", "esbuild-plugin-replace": "^1.3.0", "eslint": "^8.31.0", "eslint-config-prettier": "^8.6.0", @@ -105,6 +117,7 @@ "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-react": "^7.31.11", "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-storybook": "^0.6.10", "husky": "^8.0.0", "jest": "^29.3.1", "jest-environment-jsdom": "^29.3.1", @@ -126,6 +139,15 @@ "react": ">=17.0.0" }, "dependencies": { - "@redux-devtools/extension": "^3.2.3" + "@emotion/react": "^11.10.5", + "@fontsource/inter": "^4.5.15", + "@fontsource/jetbrains-mono": "^4.5.12", + "@mantine/core": "^5.10.1", + "@mantine/hooks": "^5.10.1", + "@mantine/prism": "^5.10.1", + "@redux-devtools/extension": "^3.2.3", + "@tabler/icons": "^1.119.0", + "react-resizable-panels": "^0.0.35", + "superjson": "^1.12.2" } } diff --git a/src/DevTools/DevTools.tsx b/src/DevTools/DevTools.tsx new file mode 100644 index 00000000..fa118ea1 --- /dev/null +++ b/src/DevTools/DevTools.tsx @@ -0,0 +1,84 @@ +import { StrictMode, useEffect, useState } from 'react'; +import { + ColorScheme, + ColorSchemeProvider, + MantineProvider, + MantineThemeOverride, +} from '@mantine/core'; +import { + DevToolsOptions, + useSetDevToolsOptions, +} from './atoms/devtools-options'; +import { Extension, ExtensionProps } from './Extension'; +import '@fontsource/inter/latin-400.css'; +import '@fontsource/inter/latin-500.css'; +import '@fontsource/inter/latin-600.css'; +import '@fontsource/inter/latin-700.css'; +import '@fontsource/jetbrains-mono/latin-400.css'; +import '@fontsource/jetbrains-mono/latin-600.css'; +import '@fontsource/jetbrains-mono/latin-700.css'; +import { + InternalDevToolsContext, + internalJotaiStore, +} from './internal-jotai-store'; + +const theme: MantineThemeOverride = { + primaryColor: 'dark', + activeStyles: { transform: 'scale(1)' }, + fontFamily: + 'Inter, JetBrains Mono, -apple-system, BlinkMacSystemFont, Segoe, sans-serif', + fontFamilyMonospace: + 'JetBrains Mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace', + headings: { + fontFamily: + 'Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji', + }, +}; + +export type DevToolsProps = ExtensionProps & { + theme?: 'dark' | 'light'; + options?: DevToolsOptions; +}; + +export const DevTools = ({ + store, + isInitialOpen, + theme: userColorScheme = 'light', + options, +}: DevToolsProps): JSX.Element => { + const [colorScheme, setColorScheme] = useState(userColorScheme); + const setDevToolsOptions = useSetDevToolsOptions(); + + const toggleColorScheme = (value?: ColorScheme) => + setColorScheme(value || (colorScheme === 'dark' ? 'light' : 'dark')); + + useEffect(() => { + setColorScheme(userColorScheme); + }, [userColorScheme]); + + useEffect(() => { + // Should we consider caching these options in the future instead of allowing users to change these? + setDevToolsOptions(options); + }, [setDevToolsOptions, options]); + + const theme_ = { + ...theme, + colorScheme, + }; + + return ( + + + {/* FIXME remove `withGlobalStyles` - this changes themes outside of this component and may impact userland */} + + + + + + + + ); +}; diff --git a/src/DevTools/Extension/Extension.tsx b/src/DevTools/Extension/Extension.tsx new file mode 100644 index 00000000..bf2eec9c --- /dev/null +++ b/src/DevTools/Extension/Extension.tsx @@ -0,0 +1,73 @@ +import { useEffect } from 'react'; +import { ActionIcon, Sx } from '@mantine/core'; +import { useAtom, useSetAtom } from 'jotai/react'; +import { Store } from 'src/types'; +import { isShellOpenAtom } from '../atoms/is-shell-open-atom'; +import { + devtoolsJotaiStoreOptions, + useDevtoolsJotaiStoreOptions, +} from '../internal-jotai-store'; +import logo from './assets/jotai-mascot.png'; +import { Shell } from './components/Shell'; + +const shellTriggerButtonStyles: Sx = () => ({ + position: 'fixed', + left: 10, + bottom: 10, + borderRadius: '50%', + padding: '2rem', + zIndex: 99999, + img: { + height: '2rem', + }, +}); + +const ShellTriggerButton = () => { + const setIsShellOpen = useSetAtom(isShellOpenAtom, devtoolsJotaiStoreOptions); + + return ( + setIsShellOpen(true)} + sx={shellTriggerButtonStyles} + > + Jotai Mascot + + ); +}; + +export type ExtensionProps = { + // false by default + isInitialOpen?: boolean; + store?: Store; + // TODO Allow user to pass theme + // theme?: 'dark' | 'light'; +}; + +export const Extension = ({ + isInitialOpen = false, + store, +}: ExtensionProps): JSX.Element => { + const [isShellOpen, setIsShellOpen] = useAtom( + isShellOpenAtom, + useDevtoolsJotaiStoreOptions(), + ); + + useEffect(() => { + // Avoid setting the initial value if the value is found in the local storage + if (typeof isShellOpen !== 'boolean') { + setIsShellOpen(isInitialOpen); + } + // Intentionally disabled + // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); + + return ( + <> + {!isShellOpen && } + {isShellOpen ? : null} + + ); +}; diff --git a/src/DevTools/Extension/assets/jotai-mascot.png b/src/DevTools/Extension/assets/jotai-mascot.png new file mode 100644 index 0000000000000000000000000000000000000000..86c3dd48a15a0bbf8e48e25107652c72b9c75143 GIT binary patch literal 36713 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%0DVs*Un@c#w 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 literal 0 HcmV?d00001 diff --git a/src/DevTools/Extension/components/Shell/Shell.tsx b/src/DevTools/Extension/components/Shell/Shell.tsx new file mode 100644 index 00000000..dfc502f3 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/Shell.tsx @@ -0,0 +1,61 @@ +import { useEffect, useRef } from 'react'; +import { Tabs } from '@mantine/core'; +import { useAtomValue } from 'jotai/react'; +import { Store } from 'src/types'; +import { shellStylesAtom } from '../../../atoms/shell-styles'; +import { useSetCustomStore } from '../../../atoms/user-custom-store'; +import { TabKeys, shellStyleDefaults } from '../../../constants'; +import { devtoolsJotaiStoreOptions } from '../../../internal-jotai-store'; +import { AtomViewer } from './components/AtomViewer'; +import { Header } from './components/Header'; +import { ShellResizeBar } from './components/ShellResizeBar'; +import { shellStyles } from './styles'; + +type ShellProps = { + store?: Store; +}; + +export const Shell = ({ store }: ShellProps) => { + const setUserStore = useSetCustomStore(); + + useEffect(() => { + setUserStore(store); + }, [setUserStore, store]); + + const shellRef = useRef(null); + const { height } = useAtomValue(shellStylesAtom, devtoolsJotaiStoreOptions); + + useEffect(() => { + // Allocating more height at the end of the content allows users to scroll down fully + // FIXME should we handle a use-case where there is padding set around `body`? + document.body.style.paddingBottom = height + 'px'; + + return () => { + document.body.style.paddingBottom = `0px`; + }; + }, [height]); + + return ( + + +

+ + + + + + ); +}; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx new file mode 100644 index 00000000..6bb5096f --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx @@ -0,0 +1,38 @@ +import { memo } from 'react'; +import { Flex, Sx } from '@mantine/core'; +import { Panel, PanelGroup } from 'react-resizable-panels'; +import { PanelResizeHandle } from '../PanelResizeHandle'; +import { AtomDetail } from './components/AtomDetail'; +import { AtomList } from './components/AtomList'; + +const panelStyles = { overflow: 'auto' }; +const atomListWrapperStyles: Sx = (theme) => ({ + // Hide the overlap of this div's bg + borderBottomLeftRadius: '0.5rem', + background: + theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.colors.gray[2], +}); + +export const AtomViewer = memo(() => { + return ( + + + + + + + + + + + + + + ); +}); diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/atoms.ts b/src/DevTools/Extension/components/Shell/components/AtomViewer/atoms.ts new file mode 100644 index 00000000..1f5fd135 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/atoms.ts @@ -0,0 +1,28 @@ +import { atom } from 'jotai/vanilla'; +import { atomWithDefault } from 'jotai/vanilla/utils'; +import { AnyAtom, ValuesAtomTuple } from 'src/types'; +import { valuesAtom } from '../../../../../atoms/values-atom'; +import { filterAtomsByString } from './utils/filter-atoms-by-string'; + +type SelectedAtomAtomData = { atomKey: string; atom: AnyAtom }; + +export const selectedAtomAtom = atom( + undefined, +); + +// used to preserve search input across tab switch +const searchInputInternalValueAtom = atom(''); + +export const filteredValuesAtom = atomWithDefault((get) => { + return filterAtomsByString( + get(searchInputInternalValueAtom), + get(valuesAtom), + ); +}); + +export const searchInputAtom = atom( + (get) => get(searchInputInternalValueAtom), + (_, set, searchInput: string) => { + set(searchInputInternalValueAtom, searchInput); + }, +); diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/AtomDetail.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/AtomDetail.tsx new file mode 100644 index 00000000..4c6994d5 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/AtomDetail.tsx @@ -0,0 +1,50 @@ +import { Suspense, memo } from 'react'; +import { Box, LoaderProps, LoadingOverlay, Sx, Text } from '@mantine/core'; +import { useAtomValue } from 'jotai/react'; +import { useThemeMode } from '../../../../../../../hooks/useThemeMode'; +import { devtoolsJotaiStoreOptions } from '../../../../../../../internal-jotai-store'; +import { selectedAtomAtom } from '../../atoms'; +import { DisplayAtomDetails } from './components/DisplayAtomDetails'; + +const messageBoxWrapperStyles: Sx = { + position: 'relative', + top: '50%', + transform: 'translateY(-50%)', +}; + +export const AtomDetail = memo((): JSX.Element => { + const selectedAtomData = useAtomValue( + selectedAtomAtom, + devtoolsJotaiStoreOptions, + ); + + const loaderProps: LoaderProps = { + color: useThemeMode('dark', 'white'), + }; + + if (!selectedAtomData) { + return ( + + + Select an atom from the left panel to view the details{' '} + + + ); + } + + return ( + + } + > + + + ); +}); + +AtomDetail.displayName = 'AtomDetail'; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx new file mode 100644 index 00000000..700e0bb1 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx @@ -0,0 +1,49 @@ +import { Stack } from '@mantine/core'; +import { useAtomValue } from 'jotai/react'; +import { AnyAtom } from 'src/types'; +import { useDevToolsOptionsValue } from '../../../../../../../../atoms/devtools-options'; +import { useUserStoreOptions } from '../../../../../../../../hooks/useUserStore'; +import { getTypeOfAtomValue } from '../../../../../../../../utils/getTypeOfAtomValue'; +import { AtomDependentsList } from './components/AtomDependentsList'; +import { AtomMetaDetails } from './components/AtomMetaDetails'; +import { AtomParseDeepNestedValue } from './components/AtomParseDeepNestedValue'; +import { AtomParseRawValueValue } from './components/AtomParseRawValue'; + +type DisplayAtomDetailsProps = { + atom: AnyAtom; +}; + +export const DisplayAtomDetails = ({ atom }: DisplayAtomDetailsProps) => { + const atomValue = useAtomValue(atom, useUserStoreOptions()); + const devtoolsOptions = useDevToolsOptionsValue(); + const atomValueType = getTypeOfAtomValue(atomValue); + + const shouldDisplayDeepNestedValue = + devtoolsOptions.atomValueParser === 'deep-nested'; + + const shouldDisplayRawValue = devtoolsOptions.atomValueParser === 'raw'; + + return ( + + + + {shouldDisplayRawValue && ( + + )} + + {shouldDisplayDeepNestedValue && ( + + )} + + {/* TODO add dependencies list */} + + + + ); +}; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomDependentsList.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomDependentsList.tsx new file mode 100644 index 00000000..a01ce818 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomDependentsList.tsx @@ -0,0 +1,50 @@ +import { useMemo } from 'react'; +import { Box, Code, List, Text } from '@mantine/core'; +import { AnyAtom } from 'src/types'; +import { useAtomsSnapshots } from '../../../../../../../../../hooks/useAtomsSnapshots'; +import { parseDebugLabel } from '../../../../../../../../../utils/parseDebugLabel'; + +type AtomDependentsListProps = { + atom: AnyAtom; +}; + +export const AtomDependentsList = ({ + atom, +}: AtomDependentsListProps): JSX.Element => { + const { dependents } = useAtomsSnapshots(); + + const depsForAtom = useMemo(() => { + const arr = Array.from(dependents.get(atom) || []); + return arr.filter((a) => a.toString() !== atom.toString()); + }, [dependents, atom]); + + const listOfDependents = useMemo( + () => + depsForAtom.map((value, i) => { + const key = `${i}-${value.toString()}-dependents-list`; + return ( + + {parseDebugLabel(value?.debugLabel)} + + ); + }), + [depsForAtom], + ); + + return ( + + + Dependents + + {listOfDependents.length ? ( + + {listOfDependents} + + ) : ( + + No dependents + + )} + + ); +}; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx new file mode 100644 index 00000000..62fe105e --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx @@ -0,0 +1,51 @@ +import { memo } from 'react'; +import { Box, Code, Text, Title } from '@mantine/core'; +import { unlabeledAtomLabel } from '../../../../../../../../../constants'; +import { AtomValueType } from '../../../../../../../../../utils/getTypeOfAtomValue'; +import { parseDebugLabel } from '../../../../../../../../../utils/parseDebugLabel'; + +type AtomDetailItemProps = { + label: string; + value: string; +}; + +const DisplayAtomDetailsItem = ({ label, value }: AtomDetailItemProps) => { + return ( + + + {label} + + {value} + + ); +}; + +type AtomMetaDetailsProps = { + debugLabel?: string; + atomValueType: AtomValueType; +}; + +export const AtomMetaDetails = memo( + ({ + debugLabel = unlabeledAtomLabel, + atomValueType, + }: AtomMetaDetailsProps): JSX.Element => { + return ( + + + Atom Details + + + Meta + + + + + ); + }, +); + +AtomMetaDetails.displayName = 'AtomMetaDetails'; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx new file mode 100644 index 00000000..4f28d99d --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx @@ -0,0 +1,83 @@ +import { memo, useEffect, useState } from 'react'; +import { Box, Text } from '@mantine/core'; +import { useAtomValue } from 'jotai/react'; +import { AnyAtom } from 'src/types'; +import { useUserStore } from '../../../../../../../../../hooks/useUserStore'; +import { AtomValueType } from '../../../../../../../../../utils/getTypeOfAtomValue'; +import { deepParseAtomValue } from '../../../../../../../../../utils/parseAtomValue'; +import { + MemoizedValueRenderer, + getPrismLanguageType, +} from './MemoizedValueRenderer'; + +type ParseAndDisplayAtomValueProps = { + atom: AnyAtom; +}; + +const useAtomValueSubscribe = (atom: AnyAtom) => { + const store = useUserStore(); + // We use `useAtomValue` because it supports async atoms too + // Should we support nested async atoms? + const atomValue = useAtomValue(atom, { store }); + + const [nextValue, setNextValue] = useState(() => + deepParseAtomValue(atomValue, store), + ); + + useEffect(() => { + const cb = () => { + setNextValue(deepParseAtomValue(atomValue, store)); + }; + + // Perhaps there is a more efficient way to subscribe more granularly to atom updates? + // We could explore the store.sub approach and figure out how to unsubscribe + const unsubscribe = store.dev_subscribe_state?.(cb); + cb(); + return unsubscribe; + }, [store, setNextValue, atomValue]); + + return nextValue; +}; + +// This component assumes that user has picked the "deep-nested" parser +const ParseAndDisplayAtomValue = memo( + ({ atom }: ParseAndDisplayAtomValueProps): JSX.Element => { + const nextValue = useAtomValueSubscribe(atom); + const prismLanguageType = getPrismLanguageType(nextValue); + + return ( + + ); + }, +); + +type AtomParseDeepNestedValueProps = { + atom: AnyAtom; + atomValueType: AtomValueType; +}; + +export const AtomParseDeepNestedValue = ({ + atom, + atomValueType, +}: AtomParseDeepNestedValueProps): JSX.Element => { + return ( + + + Parsed value + + {/* TODO investigate if this could ever be the case given that the parent component is wrapped with suspense */} + {atomValueType === 'promise' ? ( + No Preview available + ) : ( + + )} + + ); +}; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx new file mode 100644 index 00000000..3e87846a --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx @@ -0,0 +1,40 @@ +import { Box, Text } from '@mantine/core'; +import { AnyAtomValue } from 'src/types'; +import { AtomValueType } from '../../../../../../../../../utils/getTypeOfAtomValue'; +import { + MemoizedValueRenderer, + getPrismLanguageType, +} from './MemoizedValueRenderer'; + +type AtomParseRawValueValueProps = { + atomValue: AnyAtomValue; + atomValueType: AtomValueType; +}; + +export const AtomParseRawValueValue = ({ + atomValue, + atomValueType, +}: AtomParseRawValueValueProps): JSX.Element => { + const prismLanguageType = getPrismLanguageType(atomValue); + + return ( + + + Raw value + + {/* TODO investigate if this could ever be the case given that the parent component is wrapped with suspense */} + {atomValueType === 'promise' ? ( + No Preview available + ) : ( + + )} + + ); +}; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx new file mode 100644 index 00000000..d1262e53 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx @@ -0,0 +1,39 @@ +import { memo } from 'react'; +import { Code } from '@mantine/core'; +import { Prism, PrismProps } from '@mantine/prism'; +import { AnyAtomValue } from 'src/types'; +import { getTypeOfAtomValue } from '../../../../../../../../../utils'; + +// List of types to render in JavaScript syntax +const javaScriptLanguageTypes = ['object', 'array', 'null']; + +export const getPrismLanguageType = ( + atomValue: AnyAtomValue, +): PrismProps['language'] | 'text' => { + const type = getTypeOfAtomValue(atomValue); + + if (javaScriptLanguageTypes.includes(type)) { + return 'javascript'; + } + + return 'text'; +}; + +type MemoizedValueRendererProps = { + value: string; + prismLanguageType: ReturnType; +}; + +export const MemoizedValueRenderer = memo( + ({ prismLanguageType, value }: MemoizedValueRendererProps): JSX.Element => { + if (prismLanguageType === 'text') { + return {value}; + } + + return ( + + {value} + + ); + }, +); diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/index.ts b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/index.ts new file mode 100644 index 00000000..cc518d10 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/index.ts @@ -0,0 +1 @@ +export * from './AtomDetail'; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx new file mode 100644 index 00000000..0cc89d06 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx @@ -0,0 +1,127 @@ +import { + ChangeEventHandler, + memo, + useCallback, + useEffect, + useMemo, + useRef, +} from 'react'; +import { Box, Group, Sx, Text, TextInput } from '@mantine/core'; +import { IconAlertCircle } from '@tabler/icons'; +import { useAtom, useAtomValue } from 'jotai/react'; +import { useSyncSnapshotValuesToAtom } from '../../../../../../../hooks/useAtomsSnapshots'; +import { useDevtoolsJotaiStoreOptions } from '../../../../../../../internal-jotai-store'; +import { + filteredValuesAtom, + searchInputAtom, + selectedAtomAtom, +} from '../../atoms'; +import { AtomListItem } from './components/AtomListItem'; + +const textStyles: Sx = { + position: 'sticky', + top: 0, +}; + +const SearchAtoms = memo(() => { + const [userInput, setUserInput] = useAtom( + searchInputAtom, + useDevtoolsJotaiStoreOptions(), + ); + + const handleOnChange: ChangeEventHandler = (event) => { + const { + target: { value }, + } = event; + setUserInput(value); + }; + + return ( + + ); +}); + +const atomItemsWrapperStyle = { overflow: 'auto' }; + +export const AtomList = () => { + useSyncSnapshotValuesToAtom(); + + const values = useAtomValue( + filteredValuesAtom, + useDevtoolsJotaiStoreOptions(), + ); + const [selectedAtomData, setSelectedAtomAtom] = useAtom( + selectedAtomAtom, + useDevtoolsJotaiStoreOptions(), + ); + + const valuesRef = useRef(values); + + useEffect(() => { + valuesRef.current = values; + }, [values]); + + const handleOnClick = useCallback( + (pos: number) => { + if (!valuesRef.current[pos]) { + // This should almost never occur + // Atom pos and valuesRef.current are out-of-sync if it occurs + throw new Error(`Unable to find atom at ${pos} index`); + } + + setSelectedAtomAtom((currValue) => { + // TODO Should we find this by atom key instead? + const foundAtom = valuesRef.current[pos]?.[0]; + + if (!foundAtom || currValue?.atomKey === foundAtom?.toString()) { + return undefined; + } + + return { atomKey: foundAtom?.toString(), atom: foundAtom }; + }); + }, + [setSelectedAtomAtom], + ); + + const atomItems = useMemo( + () => + values.map(([atom], i) => { + return ( + + ); + }), + [values, selectedAtomData, handleOnClick], + ); + + const noResultsFound = !values.length; + + return ( + <> + + {atomItems} + {noResultsFound && ( + + + + No Atoms found! + + + )} + + ); +}; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx new file mode 100644 index 00000000..41e255d1 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx @@ -0,0 +1,46 @@ +import { memo, useCallback, useMemo } from 'react'; +import { NavLink, Sx, Text } from '@mantine/core'; +import { IconChevronRight } from '@tabler/icons'; +import { useThemeMode } from '../../../../../../../../hooks/useThemeMode'; +import { parseDebugLabel } from '../../../../../../../../utils/parseDebugLabel'; + +type AtomListItemProps = { + label?: string; + onClick: (pos: number) => void; + atomKey: string; + pos: number; + isActive: boolean; +}; + +const navLinkStyles: Sx = { + fontFamily: 'JetBrains Mono', + borderRadius: 5, +}; + +export const AtomListItem = memo( + ({ label, onClick, pos, isActive }: AtomListItemProps) => { + return ( + ( + {parseDebugLabel(label)} + ), + [label], + )} + variant="filled" + sx={navLinkStyles} + active={isActive} + color={useThemeMode('dark', 'gray')} + onClick={useCallback(() => onClick(pos), [onClick, pos])} + rightSection={useMemo( + () => ( + + ), + [], + )} + /> + ); + }, +); + +AtomListItem.displayName = 'AtomListItem'; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/index.ts b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/index.ts new file mode 100644 index 00000000..e9627171 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/index.ts @@ -0,0 +1 @@ +export * from './AtomList'; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/index.ts b/src/DevTools/Extension/components/Shell/components/AtomViewer/index.ts new file mode 100644 index 00000000..20bff927 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/index.ts @@ -0,0 +1 @@ +export * from './AtomViewer'; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/utils/filter-atoms-by-string.ts b/src/DevTools/Extension/components/Shell/components/AtomViewer/utils/filter-atoms-by-string.ts new file mode 100644 index 00000000..333f4dd8 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/utils/filter-atoms-by-string.ts @@ -0,0 +1,20 @@ +import { ValuesAtomTuple } from 'src/types'; +import { unlabeledAtomLabel } from '../../../../../../constants'; + +export const filterAtomsByString = ( + searchString: string, + defaultAtoms: ValuesAtomTuple[], +) => { + const normalizedStr = searchString.trim().toLocaleLowerCase(); + if (!normalizedStr) { + return defaultAtoms; + } + + return defaultAtoms.filter((atomTuple) => { + const normalizedLabel = ( + atomTuple[0].debugLabel || unlabeledAtomLabel + ).toLocaleLowerCase(); + + return normalizedLabel.includes(normalizedStr); + }); +}; diff --git a/src/DevTools/Extension/components/Shell/components/Header/Header.tsx b/src/DevTools/Extension/components/Shell/components/Header/Header.tsx new file mode 100644 index 00000000..96839160 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/Header/Header.tsx @@ -0,0 +1,58 @@ +import { memo } from 'react'; +import { ActionIcon, Badge, Box, Flex, Group, Sx, Title } from '@mantine/core'; +import { IconMinus } from '@tabler/icons'; +import { useSetAtom } from 'jotai/react'; +import { isShellOpenAtom } from '../../../../../atoms/is-shell-open-atom'; +import { useDevtoolsJotaiStoreOptions } from '../../../../../internal-jotai-store'; +import { TabsHeader } from './components/TabsHeader'; +import { ThemeToggle } from './components/ThemeToggle'; + +const headerStyles: Sx = { + position: 'sticky', + top: 0, + zIndex: 1, + width: '100%', +}; + +const logoStyles: Sx = { userSelect: 'none' }; + +export const Header = memo(() => { + const setIsShellOpen = useSetAtom( + isShellOpenAtom, + useDevtoolsJotaiStoreOptions(), + ); + + return ( + + + + + πŸ‘» Jōtai DevTools + + + Alpha + + + + + + setIsShellOpen(false)} + > + + + + + + + ); +}); +Header.displayName = 'Header'; diff --git a/src/DevTools/Extension/components/Shell/components/Header/components/TabsHeader.tsx b/src/DevTools/Extension/components/Shell/components/Header/components/TabsHeader.tsx new file mode 100644 index 00000000..3e316e37 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/Header/components/TabsHeader.tsx @@ -0,0 +1,32 @@ +import { memo } from 'react'; +import { Tabs } from '@mantine/core'; +import { IconLayoutList } from '@tabler/icons'; +import { TabKeys } from '../../../../../../constants'; + +export const TabsHeader = memo(() => { + return ( + + }> + Atom Viewer + + + {/* TODO Add these features */} + {/* } + disabled + > + Time travel + + } + disabled + > + Atom Graph + */} + + ); +}); + +TabsHeader.displayName = 'TabsHeader'; diff --git a/src/DevTools/Extension/components/Shell/components/Header/components/ThemeToggle.tsx b/src/DevTools/Extension/components/Shell/components/Header/components/ThemeToggle.tsx new file mode 100644 index 00000000..721703a1 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/Header/components/ThemeToggle.tsx @@ -0,0 +1,18 @@ +import { ActionIcon, useMantineColorScheme } from '@mantine/core'; +import { IconMoonStars, IconSun } from '@tabler/icons'; + +export const ThemeToggle = () => { + const { colorScheme, toggleColorScheme } = useMantineColorScheme(); + const dark = colorScheme === 'dark'; + + return ( + toggleColorScheme()} + title="Toggle color scheme" + > + {dark ? : } + + ); +}; diff --git a/src/DevTools/Extension/components/Shell/components/Header/index.ts b/src/DevTools/Extension/components/Shell/components/Header/index.ts new file mode 100644 index 00000000..266dec8a --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/Header/index.ts @@ -0,0 +1 @@ +export * from './Header'; diff --git a/src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx b/src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx new file mode 100644 index 00000000..1f303b5e --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx @@ -0,0 +1,18 @@ +import { Box } from '@mantine/core'; +import { PanelResizeHandle as ReactPanelResizeHandle } from 'react-resizable-panels'; + +export const PanelResizeHandle = () => { + return ( + + + + ); +}; diff --git a/src/DevTools/Extension/components/Shell/components/ShellResizeBar.tsx b/src/DevTools/Extension/components/Shell/components/ShellResizeBar.tsx new file mode 100644 index 00000000..a4cf2824 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/ShellResizeBar.tsx @@ -0,0 +1,55 @@ +import { MouseEventHandler, RefObject } from 'react'; +import { Box } from '@mantine/core'; +import { useSetAtom } from 'jotai/react'; +import { shellStylesAtom } from '../../../../atoms/shell-styles'; +import { shellStyleDefaults } from '../../../../constants'; +import { devtoolsJotaiStoreOptions } from '../../../../internal-jotai-store'; + +type ShellResizeBarProps = { + // element: HTMLDivElement | null; + shellRef?: RefObject | null; +}; + +export const ShellResizeBar = ({ shellRef }: ShellResizeBarProps) => { + const setShellStyle = useSetAtom(shellStylesAtom, devtoolsJotaiStoreOptions); + const handleMouseDown: MouseEventHandler = ( + mouseDownEvent, + ) => { + const startY = mouseDownEvent.clientY; + const { height = 500 } = shellRef?.current?.getBoundingClientRect() || {}; + const updateDimensions = (event: MouseEvent) => { + event.preventDefault(); + const nextHeight = height + startY - event.clientY; + + setShellStyle((prev) => ({ + ...prev, + isDragging: true, + height: Math.max(nextHeight, shellStyleDefaults.minHeight), + })); + }; + + const unsub = () => { + setShellStyle((prev) => ({ ...prev, isDragging: false })); + document.removeEventListener('mousemove', updateDimensions, false); + document.removeEventListener('mouseUp', unsub, false); + }; + + document.addEventListener('mousemove', updateDimensions, false); + document.addEventListener('mouseup', unsub, false); + }; + + return ( + + ); +}; diff --git a/src/DevTools/Extension/components/Shell/index.ts b/src/DevTools/Extension/components/Shell/index.ts new file mode 100644 index 00000000..535fad8a --- /dev/null +++ b/src/DevTools/Extension/components/Shell/index.ts @@ -0,0 +1 @@ +export * from './Shell'; diff --git a/src/DevTools/Extension/components/Shell/styles.ts b/src/DevTools/Extension/components/Shell/styles.ts new file mode 100644 index 00000000..4f4ba99a --- /dev/null +++ b/src/DevTools/Extension/components/Shell/styles.ts @@ -0,0 +1,21 @@ +import { Sx } from '@mantine/core'; + +export const shellStyles: Sx = (theme) => ({ + position: 'fixed', + left: 0, + bottom: 0, + // subtract margins + width: 'calc(100% - 20px)', + // TODO Do we need this + // userSelect: isDragging ? 'none' : 'auto', + borderColor: + theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[3], + borderWidth: 1, + borderStyle: 'solid', + // Changing this may cause overlaps of bg in nested divs + borderRadius: '0.5rem', + background: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white, + display: 'flex', + flexDirection: 'column', + zIndex: 99999, +}); diff --git a/src/DevTools/Extension/index.ts b/src/DevTools/Extension/index.ts new file mode 100644 index 00000000..ed6786a6 --- /dev/null +++ b/src/DevTools/Extension/index.ts @@ -0,0 +1 @@ +export * from './Extension'; diff --git a/src/DevTools/atoms/devtools-options.ts b/src/DevTools/atoms/devtools-options.ts new file mode 100644 index 00000000..1ec0ee2e --- /dev/null +++ b/src/DevTools/atoms/devtools-options.ts @@ -0,0 +1,48 @@ +import { useAtomValue, useSetAtom } from 'jotai/react'; +import { atom } from 'jotai/vanilla'; +import { useDevtoolsJotaiStoreOptions } from '../internal-jotai-store'; + +export type DevToolsOptions = { + /** + * Parsing strategy for AtomViewer. Defaults to `raw` + */ + atomValueParser?: /** + * parses the top level atom value but doesn't parse values of atoms within atoms + */ + | 'raw' + /** + * parses values of atoms within atoms. Comes with linear performance curve + * the bigger the object, the slower the performance + */ + | 'deep-nested'; +}; + +const defaultDevToolsOptions: DevToolsOptions = { + atomValueParser: 'raw', +}; + +const internalDevToolsOptions = atom(defaultDevToolsOptions); + +export const devToolsOptionsAtom = atom< + DevToolsOptions, + [DevToolsOptions | undefined], + void +>( + (get) => { + return get(internalDevToolsOptions); + }, + (_, set, options) => { + const patchWithDefaultsDevToolsOptions = { + ...defaultDevToolsOptions, + ...options, + }; + + set(internalDevToolsOptions, patchWithDefaultsDevToolsOptions); + }, +); + +export const useSetDevToolsOptions = () => + useSetAtom(devToolsOptionsAtom, useDevtoolsJotaiStoreOptions()); + +export const useDevToolsOptionsValue = () => + useAtomValue(devToolsOptionsAtom, useDevtoolsJotaiStoreOptions()); diff --git a/src/DevTools/atoms/is-shell-open-atom.ts b/src/DevTools/atoms/is-shell-open-atom.ts new file mode 100644 index 00000000..5a6e0193 --- /dev/null +++ b/src/DevTools/atoms/is-shell-open-atom.ts @@ -0,0 +1,6 @@ +import { atomWithStorage } from 'jotai/vanilla/utils'; + +export const isShellOpenAtom = atomWithStorage( + 'jotai-devtools-is-shell-open', + false, +); diff --git a/src/DevTools/atoms/shell-styles.ts b/src/DevTools/atoms/shell-styles.ts new file mode 100644 index 00000000..d2a70b92 --- /dev/null +++ b/src/DevTools/atoms/shell-styles.ts @@ -0,0 +1,12 @@ +import { atom } from 'jotai/vanilla'; +import { shellStyleDefaults } from '../constants'; + +type ShellStyleAtomData = { + height: number; + isDragging: boolean; +}; + +export const shellStylesAtom = atom({ + height: shellStyleDefaults.defaultHeight, + isDragging: false, +}); diff --git a/src/DevTools/atoms/user-custom-store.ts b/src/DevTools/atoms/user-custom-store.ts new file mode 100644 index 00000000..aef4cea8 --- /dev/null +++ b/src/DevTools/atoms/user-custom-store.ts @@ -0,0 +1,12 @@ +import { useAtomValue, useSetAtom } from 'jotai/react'; +import { atom } from 'jotai/vanilla'; +import { Store } from 'src/types'; +import { useDevtoolsJotaiStoreOptions } from '../internal-jotai-store'; + +const userCustomStoreAtom = atom(undefined); + +export const useUserCustomStoreValue = () => + useAtomValue(userCustomStoreAtom, useDevtoolsJotaiStoreOptions()); + +export const useSetCustomStore = () => + useSetAtom(userCustomStoreAtom, useDevtoolsJotaiStoreOptions()); diff --git a/src/DevTools/atoms/values-atom.ts b/src/DevTools/atoms/values-atom.ts new file mode 100644 index 00000000..1fc85ecc --- /dev/null +++ b/src/DevTools/atoms/values-atom.ts @@ -0,0 +1,17 @@ +import { useAtom, useAtomValue } from 'jotai/react'; +import { atom } from 'jotai/vanilla'; +import { ValuesAtomTuple } from 'src/types'; +import { useDevtoolsJotaiStoreOptions } from '../internal-jotai-store'; + +export const valuesAtom = atom([]); + +/** + * @internal + * + * @returns [ValuesAtomTuple, Setter] + */ +export const useSnapshotValues = () => + useAtom(valuesAtom, useDevtoolsJotaiStoreOptions()); + +export const useSnapshotValuesValue = () => + useAtomValue(valuesAtom, useDevtoolsJotaiStoreOptions()); diff --git a/src/DevTools/constants.ts b/src/DevTools/constants.ts new file mode 100644 index 00000000..2dbf61a6 --- /dev/null +++ b/src/DevTools/constants.ts @@ -0,0 +1,15 @@ +// storing this as a constants to reuse it across the Shell +// This could be searched by user on the Atom viewer as well +export const unlabeledAtomLabel = ''; + +export const shellStyleDefaults = { + minHeight: 200, // in px + maxHeight: '90%', + defaultHeight: 370, // in px +}; + +export enum TabKeys { + AtomViewer = 'atom-viewer', + TimeTravel = 'time-travel', + AtomGraph = 'atom-graph', +} diff --git a/src/DevTools/hooks/useAtomsSnapshots.ts b/src/DevTools/hooks/useAtomsSnapshots.ts new file mode 100644 index 00000000..abff6d9c --- /dev/null +++ b/src/DevTools/hooks/useAtomsSnapshots.ts @@ -0,0 +1,33 @@ +import { useEffect, useMemo } from 'react'; +import { Options } from 'src/types'; +import { useAtomsSnapshot as useJotaiAtomsSnapshot } from '../../utils'; +import { useSnapshotValues } from '../atoms/values-atom'; +import { useUserStore } from './useUserStore'; + +export const useAtomsSnapshots = () => { + const store = useUserStore(); + const opts: Options = { store }; + + const currentSnapshots = useJotaiAtomsSnapshot(opts); + return currentSnapshots; +}; + +// We're doing this to to prevent creating multiple +// copies for values array and share it via DevtoolsJotaiStore +// The idea is for the entire Shell to share values atom +export const useSyncSnapshotValuesToAtom = () => { + const currentSnapshots = useAtomsSnapshots(); + const [values, setValues] = useSnapshotValues(); + + const valuesArr = useMemo(() => { + const nextValues = Array.from(currentSnapshots.values); + + return nextValues; + }, [currentSnapshots.values]); + + useEffect(() => { + setValues(valuesArr); + }, [setValues, valuesArr]); + + return values; +}; diff --git a/src/DevTools/hooks/useThemeMode.tsx b/src/DevTools/hooks/useThemeMode.tsx new file mode 100644 index 00000000..440e319a --- /dev/null +++ b/src/DevTools/hooks/useThemeMode.tsx @@ -0,0 +1,6 @@ +import { useMantineColorScheme } from '@mantine/core'; + +export const useThemeMode = (light: L, dark: T) => { + const { colorScheme } = useMantineColorScheme(); + return colorScheme === 'light' ? light : dark; +}; diff --git a/src/DevTools/hooks/useUserStore.ts b/src/DevTools/hooks/useUserStore.ts new file mode 100644 index 00000000..e94fca1a --- /dev/null +++ b/src/DevTools/hooks/useUserStore.ts @@ -0,0 +1,19 @@ +import { useStore } from 'jotai/react'; +import { Options } from 'src/types'; +import { useUserCustomStoreValue } from '../atoms/user-custom-store'; + +export const useUserStore = () => { + const possibleUserStore = useUserCustomStoreValue(); + + const userStore = useStore( + // This defaults to user's default store in a `provider-less` mode + possibleUserStore ? { store: possibleUserStore } : undefined, + ); + + return userStore; +}; + +export const useUserStoreOptions = (): Options => { + const store = useUserStore(); + return { store: store }; +}; diff --git a/src/DevTools/index.ts b/src/DevTools/index.ts new file mode 100644 index 00000000..fe4f7591 --- /dev/null +++ b/src/DevTools/index.ts @@ -0,0 +1 @@ +export * from './DevTools'; diff --git a/src/DevTools/internal-jotai-store.ts b/src/DevTools/internal-jotai-store.ts new file mode 100644 index 00000000..cd41208f --- /dev/null +++ b/src/DevTools/internal-jotai-store.ts @@ -0,0 +1,19 @@ +import { createContext, useContext } from 'react'; +import { createStore } from 'jotai/vanilla'; +import { Store } from 'src/types'; + +// Don't use this directly in your components +// use `useDevtoolsJotaiStoreOptions` instead +export const internalJotaiStore = createStore(); + +export const InternalDevToolsContext = createContext(internalJotaiStore); + +export const devtoolsJotaiStoreOptions = { store: internalJotaiStore }; + +export const useInternalStore = (): Store | undefined => { + return useContext(InternalDevToolsContext) || undefined; +}; + +export const useDevtoolsJotaiStoreOptions = () => ({ + store: useInternalStore(), +}); diff --git a/src/DevTools/utils/getAtomByKey.ts b/src/DevTools/utils/getAtomByKey.ts new file mode 100644 index 00000000..af64277b --- /dev/null +++ b/src/DevTools/utils/getAtomByKey.ts @@ -0,0 +1,9 @@ +import { ValuesAtomTuple } from 'src/types'; + +export const getAtomByKey = (values: ValuesAtomTuple[], key?: string) => { + if (typeof key === 'string') { + return values.find(([atom]) => atom.toString() === key); + } + + return undefined; +}; diff --git a/src/DevTools/utils/getTypeOfAtomValue.ts b/src/DevTools/utils/getTypeOfAtomValue.ts new file mode 100644 index 00000000..7d0ab5b7 --- /dev/null +++ b/src/DevTools/utils/getTypeOfAtomValue.ts @@ -0,0 +1,50 @@ +import { WritableAtom } from 'jotai/vanilla'; +import { AnyAtom, AnyAtomValue, WithInitialValue } from 'src/types'; + +const isValueAtom = (value: AnyAtomValue): value is AnyAtom => { + return ( + typeof (value as AnyAtom).read === 'function' || + typeof (value as WritableAtom)?.write === 'function' || + !!(value as WithInitialValue).init || + !!(value as AnyAtom).debugLabel || + (value as AnyAtom).toString().includes('atom') + ); +}; + +type TypeOfReturn = + | 'string' + | 'number' + | 'bigint' + | 'boolean' + | 'symbol' + | 'undefined' + | 'object' + | 'function'; + +export type AtomValueType = + | 'promise' + | 'array' + | 'null' + | 'atom' + | TypeOfReturn; + +export const getTypeOfAtomValue = (value: AnyAtomValue): AtomValueType => { + if (value instanceof Promise) { + return 'promise'; + } + + if (Array.isArray(value)) { + return 'array'; + } + + if (value === null) { + return 'null'; + } + + if (isValueAtom(value)) { + return 'atom'; + } + + const result = typeof value; + return result; +}; diff --git a/src/DevTools/utils/index.ts b/src/DevTools/utils/index.ts new file mode 100644 index 00000000..e15a241d --- /dev/null +++ b/src/DevTools/utils/index.ts @@ -0,0 +1,4 @@ +export * from './getAtomByKey'; +export * from './getTypeOfAtomValue'; +export * from './parseAtomValue'; +export * from './parseDebugLabel'; diff --git a/src/DevTools/utils/parseAtomValue.ts b/src/DevTools/utils/parseAtomValue.ts new file mode 100644 index 00000000..57131180 --- /dev/null +++ b/src/DevTools/utils/parseAtomValue.ts @@ -0,0 +1,60 @@ +import type { AnyAtom, AnyAtomValue, Store } from 'src/types'; +import { getTypeOfAtomValue } from './getTypeOfAtomValue'; + +const deepParseArrayAtom = ( + atomValue: AnyAtomValue[], + userStore: Store, +): AnyAtomValue[] => { + const values = atomValue.map((value: AnyAtomValue) => { + return deepParseAtomValue(value, userStore); + }); + + return values; +}; + +const deepParseObjectAtom = ( + atomValue: Record, + userStore: Store, +): Record => { + const nextValueMap: Record = {}; + for (const property in atomValue) { + const value = atomValue[property]; + nextValueMap[property] = deepParseAtomValue(value, userStore); + } + return nextValueMap; +}; + +// Only call this if `atomValue` type has been identified as Atom +const deepParseAtomAtom = ( + atomValue: AnyAtom, + userStore: Store, +): AnyAtomValue => { + const parsedValue = userStore.get(atomValue); + return deepParseAtomValue(parsedValue, userStore); +}; + +// FIXME replace `type === 'something'` checks with TS guards? +// Don't call this fn recursively, it'll result in an infinite loop +export const deepParseAtomValue = ( + atomValue: AnyAtom | AnyAtomValue, + userStore: Store, +) => { + const type = getTypeOfAtomValue(atomValue); + + if (type === 'atom') { + return deepParseAtomAtom(atomValue as AnyAtom, userStore); + } + + if (type === 'object') { + return deepParseObjectAtom(atomValue as object, userStore); + } + + if (type === 'array') { + return deepParseArrayAtom( + atomValue as unknown as AnyAtomValue[], + userStore, + ); + } + + return atomValue; +}; diff --git a/src/DevTools/utils/parseDebugLabel.ts b/src/DevTools/utils/parseDebugLabel.ts new file mode 100644 index 00000000..beef66ea --- /dev/null +++ b/src/DevTools/utils/parseDebugLabel.ts @@ -0,0 +1,5 @@ +import { unlabeledAtomLabel } from '../constants'; + +export const parseDebugLabel = (label?: string): string => { + return label || unlabeledAtomLabel; +}; diff --git a/src/index.ts b/src/index.ts index 04bca77e..ccf7dd8f 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1 +1,2 @@ +export * from './DevTools'; export * from './utils'; diff --git a/src/stories/Demos/Async.tsx b/src/stories/Demos/Async.tsx new file mode 100644 index 00000000..986e823d --- /dev/null +++ b/src/stories/Demos/Async.tsx @@ -0,0 +1,49 @@ +import { Box, Button, Text, Title } from '@mantine/core'; +import { useAtom } from 'jotai/react'; +import { atom } from 'jotai/vanilla'; +import { demoStoreOptions } from './demo-store'; + +const delayedPromise = (data: any) => + new Promise((resolve) => { + const timeout = setTimeout(() => { + clearTimeout(timeout); + resolve(data); + }, 8000); + }); + +const getRandomNumberBetweenMinAndMax = (min = 1, max = 100) => { + return Math.round(Math.random() * max) + min; +}; +const makeRandomFetchReq = async () => { + const id = getRandomNumberBetweenMinAndMax(); + return fetch(`https://jsonplaceholder.typicode.com/posts/${id}`).then( + (res) => { + return delayedPromise(res.json()); + }, + ); +}; +// const asyncAtom = atom>(Promise.resolve(null)); +const asyncAtom = atom(Promise.resolve(null)); +asyncAtom.debugLabel = 'asyncAtom'; + +export const Async = () => { + const [request, setRequest] = useAtom(asyncAtom, demoStoreOptions); + // const setRequest = useSetAtom(asyncAtom, demoStoreOptions); + + const handleFetchClick = async () => { + setRequest(makeRandomFetchReq); // Will suspend until request resolves + }; + + return ( + + Async + + Out-of-the-box Suspense support. Timeout: 8000 ms + + Request status: {!request ? 'Ready' : 'βœ… Success'} + + + ); +}; diff --git a/src/stories/Demos/Counter.tsx b/src/stories/Demos/Counter.tsx new file mode 100644 index 00000000..d8b68a4e --- /dev/null +++ b/src/stories/Demos/Counter.tsx @@ -0,0 +1,32 @@ +import { useCallback } from 'react'; +import { Box, Button, Code, Title } from '@mantine/core'; +import { useAtom } from 'jotai/react'; +import { atom } from 'jotai/vanilla'; +import { demoStoreOptions } from './demo-store'; + +const countAtom = atom(0); +countAtom.debugLabel = 'countAtom'; + +export const Counter = () => { + const [count, setCount] = useAtom(countAtom, demoStoreOptions); + + return ( + + Counter + + {count} + + + + + ); +}; diff --git a/src/stories/Demos/DemoApp.tsx b/src/stories/Demos/DemoApp.tsx new file mode 100644 index 00000000..bd3661ff --- /dev/null +++ b/src/stories/Demos/DemoApp.tsx @@ -0,0 +1,54 @@ +import { Suspense } from 'react'; +import { Grid, MantineProvider, Text, Title } from '@mantine/core'; +import { DevTools, DevToolsProps } from '../../DevTools'; +import { Async } from './Async'; +import { Counter } from './Counter'; +import { DemoJotaiStoreContext, demoStore } from './demo-store'; +import { Random } from './Random'; +import { Todos } from './Todos'; + +export const DemoApp = (props: DevToolsProps) => { + return ( + + + +
+ + Your suspense loading component... + + } + > + Demos + + Jotai DevTools β€” Early Preview + + + + + + + + + + + + {' '} + + + + + +
+
+
+ ); +}; diff --git a/src/stories/Demos/Random.tsx b/src/stories/Demos/Random.tsx new file mode 100644 index 00000000..d88e0f7a --- /dev/null +++ b/src/stories/Demos/Random.tsx @@ -0,0 +1,59 @@ +import { useCallback } from 'react'; +import { Box, Button, Code, Title } from '@mantine/core'; +import { useAtom, useAtomValue } from 'jotai/react'; +import { atom } from 'jotai/vanilla'; +import { demoStoreOptions } from './demo-store'; + +const countAtom = atom(1); +countAtom.debugLabel = 'countAtom'; + +const nestedObjectAtom = atom((get) => { + return { + nestedObject: { + doubleCount: get(countAtom) * 2, + tripleCount: get(countAtom) * 3, + }, + foo: 'bar', + }; +}); + +nestedObjectAtom.debugLabel = 'nestedObjectAtom'; + +const atomsInAtomsCountAtom = atom(atom(atom((get) => get(countAtom)))); +atomsInAtomsCountAtom.debugLabel = 'atomsInAtomsCountAtom'; +// const circularAtom = atom({ foo: atom({ bar: atom(1) }) }); +// circularAtom.debugLabel = 'circularAtom'; + +export const Random = () => { + const [count, setCount] = useAtom(countAtom, demoStoreOptions); + // We're not displaying these values on the UI + // eslint-disable-next-line @typescript-eslint/no-unused-vars + const nestedObject = useAtomValue(nestedObjectAtom, demoStoreOptions); + // const circular = useAtomValue(circularAtom, demoStoreOptions); + // console.log(circular); + // eslint-disable-next-line @typescript-eslint/no-unused-vars + const atomsInAtomsCount = useAtomValue( + atomsInAtomsCountAtom, + demoStoreOptions, + ); + + return ( + + Random + + {count} + + + + + ); +}; diff --git a/src/stories/Demos/Todos.tsx b/src/stories/Demos/Todos.tsx new file mode 100644 index 00000000..15b52f6f --- /dev/null +++ b/src/stories/Demos/Todos.tsx @@ -0,0 +1,152 @@ +import { FormEvent, useEffect } from 'react'; +import { + ActionIcon, + Box, + Checkbox, + Flex, + List, + Radio, + Text, + TextInput, + Title, +} from '@mantine/core'; +import { IconX } from '@tabler/icons'; +import { useAtom, useSetAtom } from 'jotai/react'; +import { PrimitiveAtom, atom } from 'jotai/vanilla'; +import { demoStoreOptions } from './demo-store'; + +type Todo = { + title: string; + completed: boolean; +}; + +const filterAtom = atom('all'); +// filterAtom.debugLabel = "filterAtom"; + +const initialAtom = atom({ title: 'test', completed: false }); +const todosAtom = atom[]>([initialAtom]); +todosAtom.debugLabel = 'todosAtom'; + +const filteredAtom = atom[]>((get) => { + const filter = get(filterAtom); + const todos = get(todosAtom); + if (filter === 'all') { + return todos; + } else if (filter === 'completed') { + return todos.filter((atom) => get(atom).completed); + } else { + return todos.filter((atom) => !get(atom).completed); + } +}); + +filteredAtom.debugLabel = 'filteredAtom'; + +type RemoveFn = (item: PrimitiveAtom) => void; +type TodoItemProps = { + atom: PrimitiveAtom; + remove: RemoveFn; +}; + +const TodoItem = ({ atom, remove }: TodoItemProps) => { + const [item, setItem] = useAtom(atom, demoStoreOptions); + useEffect(() => { + // atom.debugLabel = 'Todo Item - ' + item.title; + }, [atom]); + const toggleCompleted = () => + setItem((props) => ({ ...props, completed: !props.completed })); + return ( + + + + ({ + textDecoration: item.completed ? 'line-through' : '', + })} + fz="md" + > + {item.title} + + + + remove(atom)} + variant="outline" + color="dark" + size="sm" + > + + + + ); +}; + +const Filter = () => { + const [filter, set] = useAtom(filterAtom, demoStoreOptions); + + return ( + set(value)} value={filter}> + + + + + ); +}; + +type FilteredType = { + remove: RemoveFn; +}; + +const Filtered = (props: FilteredType) => { + const [todos] = useAtom(filteredAtom, demoStoreOptions); + const components = todos.map((atom, i) => ( + + )); + + return <>{components}; +}; + +const TodoList = () => { + // Use `useSetAtom` to avoid re-render + // const [, setTodos] = useAtom(todosAtom) + const setTodos = useSetAtom(todosAtom, demoStoreOptions); + const remove: RemoveFn = (todo) => + setTodos((prev) => prev.filter((item) => item !== todo)); + const add = (e: FormEvent) => { + e.preventDefault(); + const title = e.currentTarget.inputTitle.value; + e.currentTarget.inputTitle.value = ''; + if (title.trim()) { + setTodos((prev) => [...prev, atom({ title, completed: false })]); + } + }; + + return ( +
+ + + + + + + ); +}; + +export const Todos = () => { + return ( + + Todo list + + + ); +}; diff --git a/src/stories/Demos/demo-store.ts b/src/stories/Demos/demo-store.ts new file mode 100644 index 00000000..c70ef17a --- /dev/null +++ b/src/stories/Demos/demo-store.ts @@ -0,0 +1,8 @@ +import { createContext } from 'react'; +import { createStore } from 'jotai/vanilla'; + +export const demoStore = createStore(); +export const DemoJotaiStoreContext = + createContext>(demoStore); + +export const demoStoreOptions = { store: demoStore }; diff --git a/src/stories/DevTools.stories.tsx b/src/stories/DevTools.stories.tsx new file mode 100644 index 00000000..1a664a58 --- /dev/null +++ b/src/stories/DevTools.stories.tsx @@ -0,0 +1,23 @@ +import { Meta, Story } from '@storybook/react'; +import { DevTools, DevToolsProps } from '../DevTools'; +import { DemoApp } from './Demos/DemoApp'; + +export default { + component: DevTools, + title: 'Devtools', + argTypes: { + store: { + control: { + type: false, + }, + }, + }, +} as Meta; + +const Template: Story = (args) => ; + +export const Default = Template.bind({}); + +Default.args = { + isInitialOpen: true, +}; diff --git a/src/types.ts b/src/types.ts new file mode 100644 index 00000000..35a41b24 --- /dev/null +++ b/src/types.ts @@ -0,0 +1,22 @@ +import type { Atom, createStore } from 'jotai/vanilla'; + +export type Store = ReturnType; + +export type Options = { + store?: Store; +}; + +export type AnyAtomValue = unknown; +export type AnyAtom = Atom; +export type AtomsValues = Map; // immutable +export type AtomsDependents = Map>; // immutable +export type AtomsSnapshot = Readonly<{ + values: AtomsValues; + dependents: AtomsDependents; +}>; + +export type WithInitialValue = { + init: Value; +}; + +export type ValuesAtomTuple = [AnyAtom, AnyAtomValue]; diff --git a/src/utils/types.ts b/src/utils/types.ts index 87268f13..c822fdf5 100644 --- a/src/utils/types.ts +++ b/src/utils/types.ts @@ -1,6 +1,4 @@ import type {} from '@redux-devtools/extension'; -import type { useStore } from 'jotai/react'; -import type { Atom } from 'jotai/vanilla'; // FIXME https://github.com/reduxjs/redux-devtools/issues/1097 // This is an INTERNAL type alias. @@ -9,13 +7,3 @@ export type Message = { payload?: any; state?: any; }; - -export type Options = Parameters[0]; -export type AnyAtomValue = unknown; -export type AnyAtom = Atom; -export type AtomsValues = Map; // immutable -export type AtomsDependents = Map>; // immutable -export type AtomsSnapshot = Readonly<{ - values: AtomsValues; - dependents: AtomsDependents; -}>; diff --git a/src/utils/useAtomsDevtools.ts b/src/utils/useAtomsDevtools.ts index f7766b60..6828898b 100644 --- a/src/utils/useAtomsDevtools.ts +++ b/src/utils/useAtomsDevtools.ts @@ -1,11 +1,6 @@ import { useEffect, useRef } from 'react'; -import { - AnyAtom, - AnyAtomValue, - AtomsSnapshot, - Message, - Options, -} from './types'; +import { AnyAtom, AnyAtomValue, AtomsSnapshot, Options } from '../types'; +import { Message } from './types'; import { useAtomsSnapshot } from './useAtomsSnapshot'; import { useGotoAtomsSnapshot } from './useGotoAtomsSnapshot'; diff --git a/src/utils/useAtomsSnapshot.ts b/src/utils/useAtomsSnapshot.ts index 15c83ea4..0bf68366 100644 --- a/src/utils/useAtomsSnapshot.ts +++ b/src/utils/useAtomsSnapshot.ts @@ -5,7 +5,7 @@ import type { AtomsSnapshot, AtomsValues, Options, -} from './types'; +} from '../types'; const isEqualAtomsValues = (left: AtomsValues, right: AtomsValues) => left.size === right.size && diff --git a/src/utils/useGotoAtomsSnapshot.ts b/src/utils/useGotoAtomsSnapshot.ts index 51241ace..08f10891 100644 --- a/src/utils/useGotoAtomsSnapshot.ts +++ b/src/utils/useGotoAtomsSnapshot.ts @@ -1,6 +1,6 @@ import { useCallback } from 'react'; import { useStore } from 'jotai/react'; -import type { AtomsSnapshot, Options } from './types'; +import type { AtomsSnapshot, Options } from '../types'; export function useGotoAtomsSnapshot(options?: Options) { const store = useStore(options); diff --git a/tsconfig.build.json b/tsconfig.build.json index 068bf80d..f02e74b6 100644 --- a/tsconfig.build.json +++ b/tsconfig.build.json @@ -2,7 +2,7 @@ "compilerOptions": { "strict": true, "target": "ESNext", - "jsx": "react", + "jsx": "react-jsx", "module": "es2015", "downlevelIteration": true, "esModuleInterop": true, @@ -13,7 +13,6 @@ "sourceMap": true, "forceConsistentCasingInFileNames": true, "isolatedModules": true, - "exactOptionalPropertyTypes": true, "baseUrl": ".", "paths": { "jotai-devtools": ["./src"], diff --git a/types/global.d.ts b/types/global.d.ts index bae64da2..c8c75106 100644 --- a/types/global.d.ts +++ b/types/global.d.ts @@ -2,3 +2,8 @@ // Do not rename this file or move these types into index.d.ts // @see https://code.visualstudio.com/docs/nodejs/working-with-javascript#_global-variables-and-type-checking declare let __DEV__: boolean; + +declare module '*.png'; +declare module '*.svg'; +declare module '*.jpeg'; +declare module '*.jpg'; diff --git a/yarn.lock b/yarn.lock index 320e58f1..ea0a043c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10,19 +10,41 @@ "@jridgewell/gen-mapping" "^0.1.0" "@jridgewell/trace-mapping" "^0.3.9" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6", "@babel/code-frame@^7.5.5", "@babel/code-frame@^7.8.3": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== dependencies: "@babel/highlight" "^7.18.6" -"@babel/compat-data@^7.20.5": +"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.20.1", "@babel/compat-data@^7.20.5": version "7.20.10" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.10.tgz#9d92fa81b87542fff50e848ed585b4212c1d34ec" integrity sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg== -"@babel/core@^7.11.6", "@babel/core@^7.12.3": +"@babel/core@7.12.9": + version "7.12.9" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.12.9.tgz#fd450c4ec10cdbb980e2928b7aa7a28484593fc8" + integrity sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ== + dependencies: + "@babel/code-frame" "^7.10.4" + "@babel/generator" "^7.12.5" + "@babel/helper-module-transforms" "^7.12.1" + "@babel/helpers" "^7.12.5" + "@babel/parser" "^7.12.7" + "@babel/template" "^7.12.7" + "@babel/traverse" "^7.12.9" + "@babel/types" "^7.12.7" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.1" + json5 "^2.1.2" + lodash "^4.17.19" + resolve "^1.3.2" + semver "^5.4.1" + source-map "^0.5.0" + +"@babel/core@^7.1.0", "@babel/core@^7.11.6", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.20.12", "@babel/core@^7.7.5": version "7.20.12" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.12.tgz#7930db57443c6714ad216953d1356dac0eb8496d" integrity sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg== @@ -43,7 +65,7 @@ json5 "^2.2.2" semver "^6.3.0" -"@babel/generator@^7.20.7", "@babel/generator@^7.7.2": +"@babel/generator@^7.12.11", "@babel/generator@^7.12.5", "@babel/generator@^7.20.7", "@babel/generator@^7.7.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.7.tgz#f8ef57c8242665c5929fe2e8d82ba75460187b4a" integrity sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw== @@ -52,7 +74,22 @@ "@jridgewell/gen-mapping" "^0.3.2" jsesc "^2.5.1" -"@babel/helper-compilation-targets@^7.20.7": +"@babel/helper-annotate-as-pure@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb" + integrity sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-builder-binary-assignment-operator-visitor@^7.18.6": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz#acd4edfd7a566d1d51ea975dff38fd52906981bb" + integrity sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw== + dependencies: + "@babel/helper-explode-assignable-expression" "^7.18.6" + "@babel/types" "^7.18.9" + +"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.0", "@babel/helper-compilation-targets@^7.20.7": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz#a6cd33e93629f5eb473b021aac05df62c4cd09bb" integrity sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ== @@ -63,12 +100,67 @@ lru-cache "^5.1.1" semver "^6.3.0" +"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.20.12", "@babel/helper-create-class-features-plugin@^7.20.5", "@babel/helper-create-class-features-plugin@^7.20.7": + version "7.20.12" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.12.tgz#4349b928e79be05ed2d1643b20b99bb87c503819" + integrity sha512-9OunRkbT0JQcednL0UFvbfXpAsUXiGjUk0a7sN8fUXX7Mue79cUSMjHGDRRi/Vz9vYlpIhLV5fMD5dKoMhhsNQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.19.0" + "@babel/helper-member-expression-to-functions" "^7.20.7" + "@babel/helper-optimise-call-expression" "^7.18.6" + "@babel/helper-replace-supers" "^7.20.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" + "@babel/helper-split-export-declaration" "^7.18.6" + +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.20.5": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.20.5.tgz#5ea79b59962a09ec2acf20a963a01ab4d076ccca" + integrity sha512-m68B1lkg3XDGX5yCvGO0kPx3v9WIYLnzjKfPcQiwntEQa5ZeRkPmo2X/ISJc8qxWGfwUr+kvZAeEzAwLec2r2w== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + regexpu-core "^5.2.1" + +"@babel/helper-define-polyfill-provider@^0.1.5": + version "0.1.5" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.1.5.tgz#3c2f91b7971b9fc11fe779c945c014065dea340e" + integrity sha512-nXuzCSwlJ/WKr8qxzW816gwyT6VZgiJG17zR40fou70yfAcqjoNyTLl/DQ+FExw5Hx5KNqshmN8Ldl/r2N7cTg== + dependencies: + "@babel/helper-compilation-targets" "^7.13.0" + "@babel/helper-module-imports" "^7.12.13" + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/traverse" "^7.13.0" + debug "^4.1.1" + lodash.debounce "^4.0.8" + resolve "^1.14.2" + semver "^6.1.2" + +"@babel/helper-define-polyfill-provider@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz#8612e55be5d51f0cd1f36b4a5a83924e89884b7a" + integrity sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww== + dependencies: + "@babel/helper-compilation-targets" "^7.17.7" + "@babel/helper-plugin-utils" "^7.16.7" + debug "^4.1.1" + lodash.debounce "^4.0.8" + resolve "^1.14.2" + semver "^6.1.2" + "@babel/helper-environment-visitor@^7.18.9": version "7.18.9" resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== -"@babel/helper-function-name@^7.19.0": +"@babel/helper-explode-assignable-expression@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz#41f8228ef0a6f1a036b8dfdfec7ce94f9a6bc096" + integrity sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-function-name@^7.18.9", "@babel/helper-function-name@^7.19.0": version "7.19.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz#941574ed5390682e872e52d3f38ce9d1bef4648c" integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w== @@ -83,14 +175,21 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-module-imports@^7.18.6": +"@babel/helper-member-expression-to-functions@^7.20.7": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.20.7.tgz#a6f26e919582275a93c3aa6594756d71b0bb7f05" + integrity sha512-9J0CxJLq315fEdi4s7xK5TQaNYjZw+nDVpVqr1axNGKzdrdwYBD5b4uKv3n75aABG0rCCTK8Im8Ww7eYfMrZgw== + dependencies: + "@babel/types" "^7.20.7" + +"@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== dependencies: "@babel/types" "^7.18.6" -"@babel/helper-module-transforms@^7.20.11": +"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11": version "7.20.11" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz#df4c7af713c557938c50ea3ad0117a7944b2f1b0" integrity sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg== @@ -104,11 +203,45 @@ "@babel/traverse" "^7.20.10" "@babel/types" "^7.20.7" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.8.0": +"@babel/helper-optimise-call-expression@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz#9369aa943ee7da47edab2cb4e838acf09d290ffe" + integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-plugin-utils@7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" + integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.13.0", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": version "7.20.2" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== +"@babel/helper-remap-async-to-generator@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz#997458a0e3357080e54e1d79ec347f8a8cd28519" + integrity sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-wrap-function" "^7.18.9" + "@babel/types" "^7.18.9" + +"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.20.7": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz#243ecd2724d2071532b2c8ad2f0f9f083bcae331" + integrity sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A== + dependencies: + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-member-expression-to-functions" "^7.20.7" + "@babel/helper-optimise-call-expression" "^7.18.6" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.20.7" + "@babel/types" "^7.20.7" + "@babel/helper-simple-access@^7.20.2": version "7.20.2" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz#0ab452687fe0c2cfb1e2b9e0015de07fc2d62dd9" @@ -116,6 +249,13 @@ dependencies: "@babel/types" "^7.20.2" +"@babel/helper-skip-transparent-expression-wrappers@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz#fbe4c52f60518cab8140d77101f0e63a8a230684" + integrity sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg== + dependencies: + "@babel/types" "^7.20.0" + "@babel/helper-split-export-declaration@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075" @@ -138,6 +278,25 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8" integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw== +"@babel/helper-wrap-function@^7.18.9": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz#75e2d84d499a0ab3b31c33bcfe59d6b8a45f62e3" + integrity sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q== + dependencies: + "@babel/helper-function-name" "^7.19.0" + "@babel/template" "^7.18.10" + "@babel/traverse" "^7.20.5" + "@babel/types" "^7.20.5" + +"@babel/helpers@^7.12.5": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.20.13.tgz#e3cb731fb70dc5337134cadc24cbbad31cc87ad2" + integrity sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg== + dependencies: + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.20.13" + "@babel/types" "^7.20.7" + "@babel/helpers@^7.20.7": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.20.7.tgz#04502ff0feecc9f20ecfaad120a18f011a8e6dce" @@ -161,6 +320,184 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.7.tgz#66fe23b3c8569220817d5feb8b9dcdc95bb4f71b" integrity sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg== +"@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.20.13": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.13.tgz#ddf1eb5a813588d2fb1692b70c6fce75b945c088" + integrity sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw== + +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz#da5b8f9a580acdfbe53494dba45ea389fb09a4d2" + integrity sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.18.9": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz#d9c85589258539a22a901033853101a6198d4ef1" + integrity sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" + "@babel/plugin-proposal-optional-chaining" "^7.20.7" + +"@babel/plugin-proposal-async-generator-functions@^7.20.1": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz#bfb7276d2d573cb67ba379984a2334e262ba5326" + integrity sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA== + dependencies: + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-remap-async-to-generator" "^7.18.9" + "@babel/plugin-syntax-async-generators" "^7.8.4" + +"@babel/plugin-proposal-class-properties@^7.12.1", "@babel/plugin-proposal-class-properties@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" + integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-proposal-class-static-block@^7.18.6": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.20.7.tgz#92592e9029b13b15be0f7ce6a7aedc2879ca45a7" + integrity sha512-AveGOoi9DAjUYYuUAG//Ig69GlazLnoyzMw68VCDux+c1tsnnH/OkYcpz/5xzMkEFC6UxjR5Gw1c+iY2wOGVeQ== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.20.7" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-class-static-block" "^7.14.5" + +"@babel/plugin-proposal-decorators@^7.12.12": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.20.13.tgz#b6bea3b18e88443688fa7ed2cc06d2c60da9f4a7" + integrity sha512-7T6BKHa9Cpd7lCueHBBzP0nkXNina+h5giOZw+a8ZpMfPFY19VjJAjIxyFHuWkhCWgL6QMqRiY/wB1fLXzm6Mw== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.20.12" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-replace-supers" "^7.20.7" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/plugin-syntax-decorators" "^7.19.0" + +"@babel/plugin-proposal-dynamic-import@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz#72bcf8d408799f547d759298c3c27c7e7faa4d94" + integrity sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + +"@babel/plugin-proposal-export-default-from@^7.12.1": + version "7.18.10" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.18.10.tgz#091f4794dbce4027c03cf4ebc64d3fb96b75c206" + integrity sha512-5H2N3R2aQFxkV4PIBUR/i7PUSwgTZjouJKzI8eKswfIjT0PhvzkPn0t0wIS5zn6maQuvtT0t1oHtMUz61LOuow== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + "@babel/plugin-syntax-export-default-from" "^7.18.6" + +"@babel/plugin-proposal-export-namespace-from@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz#5f7313ab348cdb19d590145f9247540e94761203" + integrity sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + +"@babel/plugin-proposal-json-strings@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz#7e8788c1811c393aff762817e7dbf1ebd0c05f0b" + integrity sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-json-strings" "^7.8.3" + +"@babel/plugin-proposal-logical-assignment-operators@^7.18.9": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz#dfbcaa8f7b4d37b51e8bfb46d94a5aea2bb89d83" + integrity sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + +"@babel/plugin-proposal-nullish-coalescing-operator@^7.12.1", "@babel/plugin-proposal-nullish-coalescing-operator@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz#fdd940a99a740e577d6c753ab6fbb43fdb9467e1" + integrity sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + +"@babel/plugin-proposal-numeric-separator@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz#899b14fbafe87f053d2c5ff05b36029c62e13c75" + integrity sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" + +"@babel/plugin-proposal-object-rest-spread@7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz#def9bd03cea0f9b72283dac0ec22d289c7691069" + integrity sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-object-rest-spread" "^7.8.0" + "@babel/plugin-transform-parameters" "^7.12.1" + +"@babel/plugin-proposal-object-rest-spread@^7.12.1", "@babel/plugin-proposal-object-rest-spread@^7.20.2": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz#aa662940ef425779c75534a5c41e9d936edc390a" + integrity sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg== + dependencies: + "@babel/compat-data" "^7.20.5" + "@babel/helper-compilation-targets" "^7.20.7" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-transform-parameters" "^7.20.7" + +"@babel/plugin-proposal-optional-catch-binding@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz#f9400d0e6a3ea93ba9ef70b09e72dd6da638a2cb" + integrity sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + +"@babel/plugin-proposal-optional-chaining@^7.12.7", "@babel/plugin-proposal-optional-chaining@^7.18.9", "@babel/plugin-proposal-optional-chaining@^7.20.7": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.20.7.tgz#49f2b372519ab31728cc14115bb0998b15bfda55" + integrity sha512-T+A7b1kfjtRM51ssoOfS1+wbyCVqorfyZhT99TvxxLMirPShD8CzKMRepMlCBGM5RpHMbn8s+5MMHnPstJH6mQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + +"@babel/plugin-proposal-private-methods@^7.12.1", "@babel/plugin-proposal-private-methods@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz#5209de7d213457548a98436fa2882f52f4be6bea" + integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-proposal-private-property-in-object@^7.12.1", "@babel/plugin-proposal-private-property-in-object@^7.18.6": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.20.5.tgz#309c7668f2263f1c711aa399b5a9a6291eef6135" + integrity sha512-Vq7b9dUA12ByzB4EjQTPo25sFhY+08pQDBSZRtUAkj7lb7jahaHR5igera16QZ+3my1nYR4dKsNdYj5IjPHilQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-create-class-features-plugin" "^7.20.5" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + +"@babel/plugin-proposal-unicode-property-regex@^7.18.6", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz#af613d2cd5e643643b65cded64207b15c85cb78e" + integrity sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" @@ -175,13 +512,62 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.8.3": +"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" +"@babel/plugin-syntax-class-static-block@^7.14.5": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" + integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw== + dependencies: + "@babel/helper-plugin-utils" "^7.14.5" + +"@babel/plugin-syntax-decorators@^7.19.0": + version "7.19.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.19.0.tgz#5f13d1d8fce96951bea01a10424463c9a5b3a599" + integrity sha512-xaBZUEDntt4faL1yN8oIFlhfXeQAWJW7CLKYsHTUqriCUbj8xOra8bfxxKGi/UwExPFBuPdH4XfHc9rGQhrVkQ== + dependencies: + "@babel/helper-plugin-utils" "^7.19.0" + +"@babel/plugin-syntax-dynamic-import@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" + integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-export-default-from@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.18.6.tgz#8df076711a4818c4ce4f23e61d622b0ba2ff84bc" + integrity sha512-Kr//z3ujSVNx6E9z9ih5xXXMqK07VVTuqPmqGe6Mss/zW5XPeLZeSDZoP9ab/hT4wPKqAgjl2PnhPrcpk8Seew== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-syntax-export-namespace-from@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" + integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-syntax-flow@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.18.6.tgz#774d825256f2379d06139be0c723c4dd444f3ca1" + integrity sha512-LUbR+KNTBWCUAqRG9ex5Gnzu2IOkt8jRJbHHXFT9q+L9zm7M/QQbEqXyw1n1pohYvOyWC8CjeyjrSaIwiYjK7A== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-syntax-import-assertions@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz#bb50e0d4bea0957235390641209394e87bdb9cc4" + integrity sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ== + dependencies: + "@babel/helper-plugin-utils" "^7.19.0" + "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" @@ -196,14 +582,21 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.7.2": +"@babel/plugin-syntax-jsx@7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz#9d9d357cc818aa7ae7935917c1257f67677a0926" + integrity sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-jsx@^7.17.12", "@babel/plugin-syntax-jsx@^7.18.6", "@babel/plugin-syntax-jsx@^7.7.2": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": +"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== @@ -217,14 +610,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-numeric-separator@^7.8.3": +"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-object-rest-spread@^7.8.3": +"@babel/plugin-syntax-object-rest-spread@7.8.3", "@babel/plugin-syntax-object-rest-spread@^7.8.0", "@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== @@ -245,20 +638,475 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-top-level-await@^7.8.3": +"@babel/plugin-syntax-private-property-in-object@^7.14.5": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" + integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg== + dependencies: + "@babel/helper-plugin-utils" "^7.14.5" + +"@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.7.2": +"@babel/plugin-syntax-typescript@^7.20.0", "@babel/plugin-syntax-typescript@^7.7.2": version "7.20.0" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz#4e9a0cfc769c85689b77a2e642d24e9f697fc8c7" integrity sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ== dependencies: "@babel/helper-plugin-utils" "^7.19.0" +"@babel/plugin-transform-arrow-functions@^7.12.1", "@babel/plugin-transform-arrow-functions@^7.18.6": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz#bea332b0e8b2dab3dafe55a163d8227531ab0551" + integrity sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + +"@babel/plugin-transform-async-to-generator@^7.18.6": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz#dfee18623c8cb31deb796aa3ca84dda9cea94354" + integrity sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q== + dependencies: + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-remap-async-to-generator" "^7.18.9" + +"@babel/plugin-transform-block-scoped-functions@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz#9187bf4ba302635b9d70d986ad70f038726216a8" + integrity sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-block-scoping@^7.12.12", "@babel/plugin-transform-block-scoping@^7.20.2": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.11.tgz#9f5a3424bd112a3f32fe0cf9364fbb155cff262a" + integrity sha512-tA4N427a7fjf1P0/2I4ScsHGc5jcHPbb30xMbaTke2gxDuWpUfXDuX1FEymJwKk4tuGUvGcejAR6HdZVqmmPyw== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + +"@babel/plugin-transform-classes@^7.12.1", "@babel/plugin-transform-classes@^7.20.2": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.20.7.tgz#f438216f094f6bb31dc266ebfab8ff05aecad073" + integrity sha512-LWYbsiXTPKl+oBlXUGlwNlJZetXD5Am+CyBdqhPsDVjM9Jc8jwBJFrKhHf900Kfk2eZG1y9MAG3UNajol7A4VQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-compilation-targets" "^7.20.7" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.19.0" + "@babel/helper-optimise-call-expression" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-replace-supers" "^7.20.7" + "@babel/helper-split-export-declaration" "^7.18.6" + globals "^11.1.0" + +"@babel/plugin-transform-computed-properties@^7.18.9": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz#704cc2fd155d1c996551db8276d55b9d46e4d0aa" + integrity sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/template" "^7.20.7" + +"@babel/plugin-transform-destructuring@^7.12.1", "@babel/plugin-transform-destructuring@^7.20.2": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz#8bda578f71620c7de7c93af590154ba331415454" + integrity sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + +"@babel/plugin-transform-dotall-regex@^7.18.6", "@babel/plugin-transform-dotall-regex@^7.4.4": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz#b286b3e7aae6c7b861e45bed0a2fafd6b1a4fef8" + integrity sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-duplicate-keys@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz#687f15ee3cdad6d85191eb2a372c4528eaa0ae0e" + integrity sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + +"@babel/plugin-transform-exponentiation-operator@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz#421c705f4521888c65e91fdd1af951bfefd4dacd" + integrity sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw== + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-flow-strip-types@^7.18.6": + version "7.19.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.19.0.tgz#e9e8606633287488216028719638cbbb2f2dde8f" + integrity sha512-sgeMlNaQVbCSpgLSKP4ZZKfsJVnFnNQlUSk6gPYzR/q7tzCgQF2t8RBKAP6cKJeZdveei7Q7Jm527xepI8lNLg== + dependencies: + "@babel/helper-plugin-utils" "^7.19.0" + "@babel/plugin-syntax-flow" "^7.18.6" + +"@babel/plugin-transform-for-of@^7.12.1", "@babel/plugin-transform-for-of@^7.18.8": + version "7.18.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz#6ef8a50b244eb6a0bdbad0c7c61877e4e30097c1" + integrity sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-function-name@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz#cc354f8234e62968946c61a46d6365440fc764e0" + integrity sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ== + dependencies: + "@babel/helper-compilation-targets" "^7.18.9" + "@babel/helper-function-name" "^7.18.9" + "@babel/helper-plugin-utils" "^7.18.9" + +"@babel/plugin-transform-literals@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz#72796fdbef80e56fba3c6a699d54f0de557444bc" + integrity sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + +"@babel/plugin-transform-member-expression-literals@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz#ac9fdc1a118620ac49b7e7a5d2dc177a1bfee88e" + integrity sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-modules-amd@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz#3daccca8e4cc309f03c3a0c4b41dc4b26f55214a" + integrity sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g== + dependencies: + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-plugin-utils" "^7.20.2" + +"@babel/plugin-transform-modules-commonjs@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.20.11.tgz#8cb23010869bf7669fd4b3098598b6b2be6dc607" + integrity sha512-S8e1f7WQ7cimJQ51JkAaDrEtohVEitXjgCGAS2N8S31Y42E+kWwfSz83LYz57QdBm7q9diARVqanIaH2oVgQnw== + dependencies: + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-simple-access" "^7.20.2" + +"@babel/plugin-transform-modules-systemjs@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz#467ec6bba6b6a50634eea61c9c232654d8a4696e" + integrity sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw== + dependencies: + "@babel/helper-hoist-variables" "^7.18.6" + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-validator-identifier" "^7.19.1" + +"@babel/plugin-transform-modules-umd@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz#81d3832d6034b75b54e62821ba58f28ed0aab4b9" + integrity sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ== + dependencies: + "@babel/helper-module-transforms" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-named-capturing-groups-regex@^7.19.1": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz#626298dd62ea51d452c3be58b285d23195ba69a8" + integrity sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.20.5" + "@babel/helper-plugin-utils" "^7.20.2" + +"@babel/plugin-transform-new-target@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz#d128f376ae200477f37c4ddfcc722a8a1b3246a8" + integrity sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-object-super@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz#fb3c6ccdd15939b6ff7939944b51971ddc35912c" + integrity sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-replace-supers" "^7.18.6" + +"@babel/plugin-transform-parameters@^7.12.1", "@babel/plugin-transform-parameters@^7.20.1", "@babel/plugin-transform-parameters@^7.20.7": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz#0ee349e9d1bc96e78e3b37a7af423a4078a7083f" + integrity sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + +"@babel/plugin-transform-property-literals@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz#e22498903a483448e94e032e9bbb9c5ccbfc93a3" + integrity sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-react-display-name@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz#8b1125f919ef36ebdfff061d664e266c666b9415" + integrity sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-react-jsx-development@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz#dbe5c972811e49c7405b630e4d0d2e1380c0ddc5" + integrity sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA== + dependencies: + "@babel/plugin-transform-react-jsx" "^7.18.6" + +"@babel/plugin-transform-react-jsx@^7.12.12", "@babel/plugin-transform-react-jsx@^7.18.6": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.20.13.tgz#f950f0b0c36377503d29a712f16287cedf886cbb" + integrity sha512-MmTZx/bkUrfJhhYAYt3Urjm+h8DQGrPrnKQ94jLo7NLuOU+T89a7IByhKmrb8SKhrIYIQ0FN0CHMbnFRen4qNw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-jsx" "^7.18.6" + "@babel/types" "^7.20.7" + +"@babel/plugin-transform-react-pure-annotations@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz#561af267f19f3e5d59291f9950fd7b9663d0d844" + integrity sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-regenerator@^7.18.6": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz#57cda588c7ffb7f4f8483cc83bdcea02a907f04d" + integrity sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + regenerator-transform "^0.15.1" + +"@babel/plugin-transform-reserved-words@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz#b1abd8ebf8edaa5f7fe6bbb8d2133d23b6a6f76a" + integrity sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-shorthand-properties@^7.12.1", "@babel/plugin-transform-shorthand-properties@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz#6d6df7983d67b195289be24909e3f12a8f664dc9" + integrity sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-spread@^7.12.1", "@babel/plugin-transform-spread@^7.19.0": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz#c2d83e0b99d3bf83e07b11995ee24bf7ca09401e" + integrity sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" + +"@babel/plugin-transform-sticky-regex@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz#c6706eb2b1524028e317720339583ad0f444adcc" + integrity sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-template-literals@^7.12.1", "@babel/plugin-transform-template-literals@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz#04ec6f10acdaa81846689d63fae117dd9c243a5e" + integrity sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + +"@babel/plugin-transform-typeof-symbol@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz#c8cea68263e45addcd6afc9091429f80925762c0" + integrity sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + +"@babel/plugin-transform-typescript@^7.18.6": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.20.13.tgz#e3581b356b8694f6ff450211fe6774eaff8d25ab" + integrity sha512-O7I/THxarGcDZxkgWKMUrk7NK1/WbHAg3Xx86gqS6x9MTrNL6AwIluuZ96ms4xeDe6AVx6rjHbWHP7x26EPQBA== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.20.12" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-typescript" "^7.20.0" + +"@babel/plugin-transform-unicode-escapes@^7.18.10": + version "7.18.10" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz#1ecfb0eda83d09bbcb77c09970c2dd55832aa246" + integrity sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.9" + +"@babel/plugin-transform-unicode-regex@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz#194317225d8c201bbae103364ffe9e2cea36cdca" + integrity sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/preset-env@^7.12.11": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.20.2.tgz#9b1642aa47bb9f43a86f9630011780dab7f86506" + integrity sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg== + dependencies: + "@babel/compat-data" "^7.20.1" + "@babel/helper-compilation-targets" "^7.20.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.18.6" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.18.9" + "@babel/plugin-proposal-async-generator-functions" "^7.20.1" + "@babel/plugin-proposal-class-properties" "^7.18.6" + "@babel/plugin-proposal-class-static-block" "^7.18.6" + "@babel/plugin-proposal-dynamic-import" "^7.18.6" + "@babel/plugin-proposal-export-namespace-from" "^7.18.9" + "@babel/plugin-proposal-json-strings" "^7.18.6" + "@babel/plugin-proposal-logical-assignment-operators" "^7.18.9" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.6" + "@babel/plugin-proposal-numeric-separator" "^7.18.6" + "@babel/plugin-proposal-object-rest-spread" "^7.20.2" + "@babel/plugin-proposal-optional-catch-binding" "^7.18.6" + "@babel/plugin-proposal-optional-chaining" "^7.18.9" + "@babel/plugin-proposal-private-methods" "^7.18.6" + "@babel/plugin-proposal-private-property-in-object" "^7.18.6" + "@babel/plugin-proposal-unicode-property-regex" "^7.18.6" + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-class-properties" "^7.12.13" + "@babel/plugin-syntax-class-static-block" "^7.14.5" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + "@babel/plugin-syntax-import-assertions" "^7.20.0" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + "@babel/plugin-syntax-top-level-await" "^7.14.5" + "@babel/plugin-transform-arrow-functions" "^7.18.6" + "@babel/plugin-transform-async-to-generator" "^7.18.6" + "@babel/plugin-transform-block-scoped-functions" "^7.18.6" + "@babel/plugin-transform-block-scoping" "^7.20.2" + "@babel/plugin-transform-classes" "^7.20.2" + "@babel/plugin-transform-computed-properties" "^7.18.9" + "@babel/plugin-transform-destructuring" "^7.20.2" + "@babel/plugin-transform-dotall-regex" "^7.18.6" + "@babel/plugin-transform-duplicate-keys" "^7.18.9" + "@babel/plugin-transform-exponentiation-operator" "^7.18.6" + "@babel/plugin-transform-for-of" "^7.18.8" + "@babel/plugin-transform-function-name" "^7.18.9" + "@babel/plugin-transform-literals" "^7.18.9" + "@babel/plugin-transform-member-expression-literals" "^7.18.6" + "@babel/plugin-transform-modules-amd" "^7.19.6" + "@babel/plugin-transform-modules-commonjs" "^7.19.6" + "@babel/plugin-transform-modules-systemjs" "^7.19.6" + "@babel/plugin-transform-modules-umd" "^7.18.6" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.19.1" + "@babel/plugin-transform-new-target" "^7.18.6" + "@babel/plugin-transform-object-super" "^7.18.6" + "@babel/plugin-transform-parameters" "^7.20.1" + "@babel/plugin-transform-property-literals" "^7.18.6" + "@babel/plugin-transform-regenerator" "^7.18.6" + "@babel/plugin-transform-reserved-words" "^7.18.6" + "@babel/plugin-transform-shorthand-properties" "^7.18.6" + "@babel/plugin-transform-spread" "^7.19.0" + "@babel/plugin-transform-sticky-regex" "^7.18.6" + "@babel/plugin-transform-template-literals" "^7.18.9" + "@babel/plugin-transform-typeof-symbol" "^7.18.9" + "@babel/plugin-transform-unicode-escapes" "^7.18.10" + "@babel/plugin-transform-unicode-regex" "^7.18.6" + "@babel/preset-modules" "^0.1.5" + "@babel/types" "^7.20.2" + babel-plugin-polyfill-corejs2 "^0.3.3" + babel-plugin-polyfill-corejs3 "^0.6.0" + babel-plugin-polyfill-regenerator "^0.4.1" + core-js-compat "^3.25.1" + semver "^6.3.0" + +"@babel/preset-flow@^7.12.1": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.18.6.tgz#83f7602ba566e72a9918beefafef8ef16d2810cb" + integrity sha512-E7BDhL64W6OUqpuyHnSroLnqyRTcG6ZdOBl1OKI/QK/HJfplqK/S3sq1Cckx7oTodJ5yOXyfw7rEADJ6UjoQDQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-transform-flow-strip-types" "^7.18.6" + +"@babel/preset-modules@^0.1.5": + version "0.1.5" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" + integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" + "@babel/plugin-transform-dotall-regex" "^7.4.4" + "@babel/types" "^7.4.4" + esutils "^2.0.2" + +"@babel/preset-react@^7.12.10": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.18.6.tgz#979f76d6277048dc19094c217b507f3ad517dd2d" + integrity sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-transform-react-display-name" "^7.18.6" + "@babel/plugin-transform-react-jsx" "^7.18.6" + "@babel/plugin-transform-react-jsx-development" "^7.18.6" + "@babel/plugin-transform-react-pure-annotations" "^7.18.6" + +"@babel/preset-typescript@^7.12.7": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz#ce64be3e63eddc44240c6358daefac17b3186399" + integrity sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-transform-typescript" "^7.18.6" + +"@babel/register@^7.12.1": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.18.9.tgz#1888b24bc28d5cc41c412feb015e9ff6b96e439c" + integrity sha512-ZlbnXDcNYHMR25ITwwNKT88JiaukkdVj/nG7r3wnuXkOTHc60Uy05PwMCPre0hSkY68E6zK3xz+vUJSP2jWmcw== + dependencies: + clone-deep "^4.0.1" + find-cache-dir "^2.0.0" + make-dir "^2.1.0" + pirates "^4.0.5" + source-map-support "^0.5.16" + +"@babel/runtime@7.7.2": + version "7.7.2" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.7.2.tgz#111a78002a5c25fc8e3361bedc9529c696b85a6a" + integrity sha512-JONRbXbTXc9WQE2mAZd1p0Z3DZ/6vaQIkgYMSTP3KjRCyd7rCZCcfhCyX+YjwcKxcZ82UrxbRD358bpExNgrjw== + dependencies: + regenerator-runtime "^0.13.2" + +"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.13.10", "@babel/runtime@^7.17.8", "@babel/runtime@^7.18.3", "@babel/runtime@^7.5.0", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.13.tgz#7055ab8a7cff2b8f6058bf6ae45ff84ad2aded4b" + integrity sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA== + dependencies: + regenerator-runtime "^0.13.11" + "@babel/runtime@^7.12.5", "@babel/runtime@^7.20.7", "@babel/runtime@^7.9.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.7.tgz#fcb41a5a70550e04a7b708037c7c32f7f356d8fd" @@ -266,14 +1114,37 @@ dependencies: regenerator-runtime "^0.13.11" -"@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.3.3": +"@babel/runtime@~7.5.4": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.5.5.tgz#74fba56d35efbeca444091c7850ccd494fd2f132" + integrity sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ== + dependencies: + regenerator-runtime "^0.13.2" + +"@babel/template@^7.12.7", "@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.3.3": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.20.7.tgz#a15090c2839a83b02aa996c0b4994005841fd5a8" integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw== dependencies: "@babel/code-frame" "^7.18.6" - "@babel/parser" "^7.20.7" + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" + +"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.20.13", "@babel/traverse@^7.20.5": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.13.tgz#817c1ba13d11accca89478bd5481b2d168d07473" + integrity sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ== + dependencies: + "@babel/code-frame" "^7.18.6" + "@babel/generator" "^7.20.7" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.19.0" + "@babel/helper-hoist-variables" "^7.18.6" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/parser" "^7.20.13" "@babel/types" "^7.20.7" + debug "^4.1.0" + globals "^11.1.0" "@babel/traverse@^7.20.10", "@babel/traverse@^7.20.12", "@babel/traverse@^7.20.7", "@babel/traverse@^7.7.2": version "7.20.12" @@ -291,7 +1162,7 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.19.0", "@babel/types@^7.20.2", "@babel/types@^7.20.7", "@babel/types@^7.3.0", "@babel/types@^7.3.3": +"@babel/types@^7.0.0", "@babel/types@^7.12.11", "@babel/types@^7.12.7", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.2.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.20.7.tgz#54ec75e252318423fc07fb644dc6a58a64c09b7f" integrity sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg== @@ -300,11 +1171,29 @@ "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" +"@base2/pretty-print-object@1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@base2/pretty-print-object/-/pretty-print-object-1.0.1.tgz#371ba8be66d556812dc7fb169ebc3c08378f69d4" + integrity sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA== + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== +"@cnakazawa/watch@^1.0.3": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" + integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== + dependencies: + exec-sh "^0.3.2" + minimist "^1.2.0" + +"@colors/colors@1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" + integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== + "@commitlint/cli@^17.4.0": version "17.4.0" resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-17.4.0.tgz#14a5f9b713a5b60ff1a0cfce66b0bb207954c1ad" @@ -472,6 +1361,146 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" +"@design-systems/utils@2.12.0": + version "2.12.0" + resolved "https://registry.yarnpkg.com/@design-systems/utils/-/utils-2.12.0.tgz#955c108be07cb8f01532207cbfea8f848fa760c9" + integrity sha512-Y/d2Zzr+JJfN6u1gbuBUb1ufBuLMJJRZQk+dRmw8GaTpqKx5uf7cGUYGTwN02dIb3I+Tf+cW8jcGBTRiFxdYFg== + dependencies: + "@babel/runtime" "^7.11.2" + clsx "^1.0.4" + focus-lock "^0.8.0" + react-merge-refs "^1.0.0" + +"@devtools-ds/object-inspector@^1.1.2": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@devtools-ds/object-inspector/-/object-inspector-1.2.1.tgz#2b380ed475d898d2828e7855c2dc2c82f091d326" + integrity sha512-nrAVVj4c4Iv9958oE4HA7Mk6T+4Mn/4xBRlFDeX4Ps6SMzsqO8bKhw/y6+bOfNyb/TYHmC0/pnPS68GDVZcg5Q== + dependencies: + "@babel/runtime" "7.7.2" + "@devtools-ds/object-parser" "^1.2.1" + "@devtools-ds/themes" "^1.2.1" + "@devtools-ds/tree" "^1.2.1" + clsx "1.1.0" + +"@devtools-ds/object-parser@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@devtools-ds/object-parser/-/object-parser-1.2.1.tgz#5ab709a2db807ce99cb12bf35511379d6e47a3b8" + integrity sha512-6qB+THhQfJqXyHn8wpJ1KFxXcbpLTlRyCVmkelhr0c1+MPLZcC+0XJxpVZ1AOEXPa6CWVZThBYSCvnYQEvfCqw== + dependencies: + "@babel/runtime" "~7.5.4" + +"@devtools-ds/themes@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@devtools-ds/themes/-/themes-1.2.1.tgz#060a0a1a2b38f68b01deca62240d2c94585f00dd" + integrity sha512-4/KFsHnokGxUq8CSCchINcVBb6fQ74HtEfNtMuitGtGg3VCRV0kaVSOsz6wzShzhLEaVLd5coSRQKaZj7yx72w== + dependencies: + "@babel/runtime" "~7.5.4" + "@design-systems/utils" "2.12.0" + clsx "1.1.0" + +"@devtools-ds/tree@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@devtools-ds/tree/-/tree-1.2.1.tgz#88d44dbbf96101fd8f18af92e514ed9dd00c8ceb" + integrity sha512-2ZHG28oWJno0gD+20EoSJO0yffm6JS5r7YzYhGMkrnLGvcCRZuwXSxMmIshSPLIR0cjidiAfGCqsrigHIR4ZQA== + dependencies: + "@babel/runtime" "7.7.2" + "@devtools-ds/themes" "^1.2.1" + clsx "1.1.0" + +"@discoveryjs/json-ext@^0.5.3": + version "0.5.7" + resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" + integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw== + +"@emotion/babel-plugin@^11.10.5": + version "11.10.5" + resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.10.5.tgz#65fa6e1790ddc9e23cc22658a4c5dea423c55c3c" + integrity sha512-xE7/hyLHJac7D2Ve9dKroBBZqBT7WuPQmWcq7HSGb84sUuP4mlOWoB8dvVfD9yk5DHkU1m6RW7xSoDtnQHNQeA== + dependencies: + "@babel/helper-module-imports" "^7.16.7" + "@babel/plugin-syntax-jsx" "^7.17.12" + "@babel/runtime" "^7.18.3" + "@emotion/hash" "^0.9.0" + "@emotion/memoize" "^0.8.0" + "@emotion/serialize" "^1.1.1" + babel-plugin-macros "^3.1.0" + convert-source-map "^1.5.0" + escape-string-regexp "^4.0.0" + find-root "^1.1.0" + source-map "^0.5.7" + stylis "4.1.3" + +"@emotion/cache@^11.10.5": + version "11.10.5" + resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.10.5.tgz#c142da9351f94e47527ed458f7bbbbe40bb13c12" + integrity sha512-dGYHWyzTdmK+f2+EnIGBpkz1lKc4Zbj2KHd4cX3Wi8/OWr5pKslNjc3yABKH4adRGCvSX4VDC0i04mrrq0aiRA== + dependencies: + "@emotion/memoize" "^0.8.0" + "@emotion/sheet" "^1.2.1" + "@emotion/utils" "^1.2.0" + "@emotion/weak-memoize" "^0.3.0" + stylis "4.1.3" + +"@emotion/hash@^0.9.0": + version "0.9.0" + resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.0.tgz#c5153d50401ee3c027a57a177bc269b16d889cb7" + integrity sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ== + +"@emotion/memoize@^0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.0.tgz#f580f9beb67176fa57aae70b08ed510e1b18980f" + integrity sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA== + +"@emotion/react@^11.10.5": + version "11.10.5" + resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.10.5.tgz#95fff612a5de1efa9c0d535384d3cfa115fe175d" + integrity sha512-TZs6235tCJ/7iF6/rvTaOH4oxQg2gMAcdHemjwLKIjKz4rRuYe1HJ2TQJKnAcRAfOUDdU8XoDadCe1rl72iv8A== + dependencies: + "@babel/runtime" "^7.18.3" + "@emotion/babel-plugin" "^11.10.5" + "@emotion/cache" "^11.10.5" + "@emotion/serialize" "^1.1.1" + "@emotion/use-insertion-effect-with-fallbacks" "^1.0.0" + "@emotion/utils" "^1.2.0" + "@emotion/weak-memoize" "^0.3.0" + hoist-non-react-statics "^3.3.1" + +"@emotion/serialize@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.1.tgz#0595701b1902feded8a96d293b26be3f5c1a5cf0" + integrity sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA== + dependencies: + "@emotion/hash" "^0.9.0" + "@emotion/memoize" "^0.8.0" + "@emotion/unitless" "^0.8.0" + "@emotion/utils" "^1.2.0" + csstype "^3.0.2" + +"@emotion/sheet@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.2.1.tgz#0767e0305230e894897cadb6c8df2c51e61a6c2c" + integrity sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA== + +"@emotion/unitless@^0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.0.tgz#a4a36e9cbdc6903737cd20d38033241e1b8833db" + integrity sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw== + +"@emotion/use-insertion-effect-with-fallbacks@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.0.tgz#ffadaec35dbb7885bd54de3fa267ab2f860294df" + integrity sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A== + +"@emotion/utils@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.0.tgz#9716eaccbc6b5ded2ea5a90d65562609aab0f561" + integrity sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw== + +"@emotion/weak-memoize@^0.3.0": + version "0.3.0" + resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz#ea89004119dc42db2e1dba0f97d553f7372f6fcb" + integrity sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg== + "@esbuild/android-arm@0.15.18": version "0.15.18" resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.15.18.tgz#266d40b8fdcf87962df8af05b76219bc786b4f80" @@ -497,6 +1526,48 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" +"@floating-ui/core@^1.0.5": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.1.0.tgz#0a1dee4bbce87ff71602625d33f711cafd8afc08" + integrity sha512-zbsLwtnHo84w1Kc8rScAo5GMk1GdecSlrflIbfnEBJwvTSj1SL6kkOYV+nHraMCPEy+RNZZUaZyL8JosDGCtGQ== + +"@floating-ui/dom@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.1.0.tgz#29fea1344fdef15b6ba270a733d20b7134fee5c2" + integrity sha512-TSogMPVxbRe77QCj1dt8NmRiJasPvuc+eT5jnJ6YpLqgOD2zXc5UA3S1qwybN+GVCDNdKfpKy1oj8RpzLJvh6A== + dependencies: + "@floating-ui/core" "^1.0.5" + +"@floating-ui/react-dom-interactions@^0.10.1": + version "0.10.3" + resolved "https://registry.yarnpkg.com/@floating-ui/react-dom-interactions/-/react-dom-interactions-0.10.3.tgz#1d988aad169bf752b54c688db942f12e4fed61c5" + integrity sha512-UEHqdnzyoiWNU5az/tAljr9iXFzN18DcvpMqW+/cXz4FEhDEB1ogLtWldOWCujLerPBnSRocADALafelOReMpw== + dependencies: + "@floating-ui/react-dom" "^1.0.0" + aria-hidden "^1.1.3" + +"@floating-ui/react-dom@^1.0.0": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@floating-ui/react-dom/-/react-dom-1.2.1.tgz#7386c33fa07b0eb2b2a8b3ec9910d70a156f81ef" + integrity sha512-YCLlqibZtgUhxUpxkSp1oekvYgH/jI4KdZEJv85E62twlZHN43xdlQNe6JcF4ROD3/Zu6juNHN+aOygN+6yZjg== + dependencies: + "@floating-ui/dom" "^1.1.0" + +"@fontsource/inter@^4.5.15": + version "4.5.15" + resolved "https://registry.yarnpkg.com/@fontsource/inter/-/inter-4.5.15.tgz#eed1873d68755d3b52d6fcfcfa3493118430a512" + integrity sha512-FzleM9AxZQK2nqsTDtBiY0PMEVWvnKnuu2i09+p6DHvrHsuucoV2j0tmw+kAT3L4hvsLdAIDv6MdGehsPIdT+Q== + +"@fontsource/jetbrains-mono@^4.5.12": + version "4.5.12" + resolved "https://registry.yarnpkg.com/@fontsource/jetbrains-mono/-/jetbrains-mono-4.5.12.tgz#d965dca932f0ecf5379013f4dff3aec7b817b91b" + integrity sha512-LJF1ala1/u+wXZmESFqIk08FA9yGX4/uAAleCHmXUMgEjvNAYFHUQQ7eK5hQQoBOwh99cU5suTrqYqEkgzwzPA== + +"@gar/promisify@^1.0.1": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" + integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== + "@humanwhocodes/config-array@^0.11.8": version "0.11.8" resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.8.tgz#03595ac2075a4dc0f191cc2131de14fbd7d410b9" @@ -537,7 +1608,7 @@ js-yaml "^3.13.1" resolve-from "^5.0.0" -"@istanbuljs/schema@^0.1.2": +"@istanbuljs/schema@^0.1.2", "@istanbuljs/schema@^0.1.3": version "0.1.3" resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== @@ -708,6 +1779,27 @@ jest-haste-map "^29.3.1" slash "^3.0.0" +"@jest/transform@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" + integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^26.6.2" + babel-plugin-istanbul "^6.0.0" + chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-regex-util "^26.0.0" + jest-util "^26.6.2" + micromatch "^4.0.2" + pirates "^4.0.1" + slash "^3.0.0" + source-map "^0.6.1" + write-file-atomic "^3.0.0" + "@jest/transform@^29.3.1": version "29.3.1" resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.3.1.tgz#1e6bd3da4af50b5c82a539b7b1f3770568d6e36d" @@ -729,6 +1821,17 @@ slash "^3.0.0" write-file-atomic "^4.0.1" +"@jest/types@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" + integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + "@jest/types@^27.5.1": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" @@ -760,7 +1863,7 @@ "@jridgewell/set-array" "^1.0.0" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/gen-mapping@^0.3.2": +"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": version "0.3.2" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== @@ -779,6 +1882,14 @@ resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== +"@jridgewell/source-map@^0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb" + integrity sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw== + dependencies: + "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/trace-mapping" "^0.3.9" + "@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10": version "1.4.14" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" @@ -792,7 +1903,7 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.15", "@jridgewell/trace-mapping@^0.3.9": +"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.14", "@jridgewell/trace-mapping@^0.3.15", "@jridgewell/trace-mapping@^0.3.9": version "0.3.17" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== @@ -800,6 +1911,86 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" +"@mantine/core@^5.10.1": + version "5.10.1" + resolved "https://registry.yarnpkg.com/@mantine/core/-/core-5.10.1.tgz#98cbfbb13493e0d57051f3ddc22777931ca5b35f" + integrity sha512-ZVVrakV8QUFxAUNh8LCyJS6gKKpQbXSh2OQ757L/Q07aYNaYFvgwuSyI7+p32oGrgc+RZ53KroB7zZUVj/hvEw== + dependencies: + "@floating-ui/react-dom-interactions" "^0.10.1" + "@mantine/styles" "5.10.1" + "@mantine/utils" "5.10.1" + "@radix-ui/react-scroll-area" "1.0.2" + react-textarea-autosize "8.3.4" + +"@mantine/hooks@^5.10.1": + version "5.10.1" + resolved "https://registry.yarnpkg.com/@mantine/hooks/-/hooks-5.10.1.tgz#0227441a818144932dd6e8fd8f53eb7525dfe005" + integrity sha512-Fhl2f5z/F+NVzZgPUPP9tP4NUUMeTBpmlmlo3mPuQztw1kmXdxtBjD1MzRS7A84FuaJNo2wxLhQ+Gnjtf3hZ8A== + +"@mantine/prism@^5.10.1": + version "5.10.1" + resolved "https://registry.yarnpkg.com/@mantine/prism/-/prism-5.10.1.tgz#3f3ad4b4fe70fc86b3b0d5f2703ed2bba8682552" + integrity sha512-E2bxsiuTLsMHd4209uO0RJmjuJwKI+3K2Jg/B0WmEPGY5Je/CBDxaDzZTazfQAuLZXVD16/BdWMTl840ZzCQrQ== + dependencies: + "@mantine/utils" "5.10.1" + prism-react-renderer "^1.2.1" + +"@mantine/styles@5.10.1": + version "5.10.1" + resolved "https://registry.yarnpkg.com/@mantine/styles/-/styles-5.10.1.tgz#84915938349117be04ccc725aa73f1b1c947e95c" + integrity sha512-sKJG+shOJMEYlnpLuRd1Qlu0kK9GHpYd85+q+3Wa5/IZ9jLkOeYVxLV1vnhSnhVrIxbQzrti2klSKHZBg3KpIw== + dependencies: + clsx "1.1.1" + csstype "3.0.9" + +"@mantine/utils@5.10.1": + version "5.10.1" + resolved "https://registry.yarnpkg.com/@mantine/utils/-/utils-5.10.1.tgz#95e77b29d27a596970cf8ae33665185b4a92d2a8" + integrity sha512-PfzSpbipAwF5g5zoyC2Htxf2b9TFFwP6c9dK1jlrBzqtkeQK1axZ72Vbc1jKjGWYutVBbOWuk40GKUwYoDFVTw== + +"@mdx-js/mdx@^1.6.22": + version "1.6.22" + resolved "https://registry.yarnpkg.com/@mdx-js/mdx/-/mdx-1.6.22.tgz#8a723157bf90e78f17dc0f27995398e6c731f1ba" + integrity sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA== + dependencies: + "@babel/core" "7.12.9" + "@babel/plugin-syntax-jsx" "7.12.1" + "@babel/plugin-syntax-object-rest-spread" "7.8.3" + "@mdx-js/util" "1.6.22" + babel-plugin-apply-mdx-type-prop "1.6.22" + babel-plugin-extract-import-names "1.6.22" + camelcase-css "2.0.1" + detab "2.0.4" + hast-util-raw "6.0.1" + lodash.uniq "4.5.0" + mdast-util-to-hast "10.0.1" + remark-footnotes "2.0.0" + remark-mdx "1.6.22" + remark-parse "8.0.3" + remark-squeeze-paragraphs "4.0.0" + style-to-object "0.3.0" + unified "9.2.0" + unist-builder "2.0.3" + unist-util-visit "2.0.3" + +"@mdx-js/react@^1.6.22": + version "1.6.22" + resolved "https://registry.yarnpkg.com/@mdx-js/react/-/react-1.6.22.tgz#ae09b4744fddc74714ee9f9d6f17a66e77c43573" + integrity sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg== + +"@mdx-js/util@1.6.22": + version "1.6.22" + resolved "https://registry.yarnpkg.com/@mdx-js/util/-/util-1.6.22.tgz#219dfd89ae5b97a8801f015323ffa4b62f45718b" + integrity sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA== + +"@mrmlnc/readdir-enhanced@^2.2.1": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" + integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== + dependencies: + call-me-maybe "^1.0.1" + glob-to-regexp "^0.3.0" + "@nodelib/fs.scandir@2.1.5": version "2.1.5" resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" @@ -813,6 +2004,11 @@ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== +"@nodelib/fs.stat@^1.1.2": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" + integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== + "@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": version "1.2.8" resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" @@ -821,6 +2017,22 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@npmcli/fs@^1.0.0": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" + integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== + dependencies: + "@gar/promisify" "^1.0.1" + semver "^7.3.5" + +"@npmcli/move-file@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" + integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== + dependencies: + mkdirp "^1.0.4" + rimraf "^3.0.2" + "@octokit/auth-token@^3.0.0": version "3.0.2" resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-3.0.2.tgz#a0fc8de149fd15876e1ac78f6525c1c5ab48435f" @@ -934,6 +2146,21 @@ tiny-glob "^0.2.9" tslib "^2.4.0" +"@pmmmwh/react-refresh-webpack-plugin@^0.5.3": + version "0.5.10" + resolved "https://registry.yarnpkg.com/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.10.tgz#2eba163b8e7dbabb4ce3609ab5e32ab63dda3ef8" + integrity sha512-j0Ya0hCFZPd4x40qLzbhGsh9TMtdb+CJQiso+WxLOPNasohq9cc5SNUcwsZaRH6++Xh91Xkm/xHCkuIiIu0LUA== + dependencies: + ansi-html-community "^0.0.8" + common-path-prefix "^3.0.0" + core-js-pure "^3.23.3" + error-stack-parser "^2.0.6" + find-up "^5.0.0" + html-entities "^2.1.0" + loader-utils "^2.0.4" + schema-utils "^3.0.0" + source-map "^0.7.3" + "@pnpm/network.ca-file@^1.0.1": version "1.0.2" resolved "https://registry.yarnpkg.com/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz#2ab05e09c1af0cdf2fcf5035bea1484e222f7983" @@ -949,6 +2176,96 @@ "@pnpm/network.ca-file" "^1.0.1" config-chain "^1.1.11" +"@radix-ui/number@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@radix-ui/number/-/number-1.0.0.tgz#4c536161d0de750b3f5d55860fc3de46264f897b" + integrity sha512-Ofwh/1HX69ZfJRiRBMTy7rgjAzHmwe4kW9C9Y99HTRUcYLUuVT0KESFj15rPjRgKJs20GPq8Bm5aEDJ8DuA3vA== + dependencies: + "@babel/runtime" "^7.13.10" + +"@radix-ui/primitive@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@radix-ui/primitive/-/primitive-1.0.0.tgz#e1d8ef30b10ea10e69c76e896f608d9276352253" + integrity sha512-3e7rn8FDMin4CgeL7Z/49smCA3rFYY3Ha2rUQ7HRWFadS5iCRw08ZgVT1LaNTCNqgvrUiyczLflrVrF0SRQtNA== + dependencies: + "@babel/runtime" "^7.13.10" + +"@radix-ui/react-compose-refs@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-compose-refs/-/react-compose-refs-1.0.0.tgz#37595b1f16ec7f228d698590e78eeed18ff218ae" + integrity sha512-0KaSv6sx787/hK3eF53iOkiSLwAGlFMx5lotrqD2pTjB18KbybKoEIgkNZTKC60YECDQTKGTRcDBILwZVqVKvA== + dependencies: + "@babel/runtime" "^7.13.10" + +"@radix-ui/react-context@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-context/-/react-context-1.0.0.tgz#f38e30c5859a9fb5e9aa9a9da452ee3ed9e0aee0" + integrity sha512-1pVM9RfOQ+n/N5PJK33kRSKsr1glNxomxONs5c49MliinBY6Yw2Q995qfBUUo0/Mbg05B/sGA0gkgPI7kmSHBg== + dependencies: + "@babel/runtime" "^7.13.10" + +"@radix-ui/react-direction@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-direction/-/react-direction-1.0.0.tgz#a2e0b552352459ecf96342c79949dd833c1e6e45" + integrity sha512-2HV05lGUgYcA6xgLQ4BKPDmtL+QbIZYH5fCOTAOOcJ5O0QbWS3i9lKaurLzliYUDhORI2Qr3pyjhJh44lKA3rQ== + dependencies: + "@babel/runtime" "^7.13.10" + +"@radix-ui/react-presence@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-presence/-/react-presence-1.0.0.tgz#814fe46df11f9a468808a6010e3f3ca7e0b2e84a" + integrity sha512-A+6XEvN01NfVWiKu38ybawfHsBjWum42MRPnEuqPsBZ4eV7e/7K321B5VgYMPv3Xx5An6o1/l9ZuDBgmcmWK3w== + dependencies: + "@babel/runtime" "^7.13.10" + "@radix-ui/react-compose-refs" "1.0.0" + "@radix-ui/react-use-layout-effect" "1.0.0" + +"@radix-ui/react-primitive@1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@radix-ui/react-primitive/-/react-primitive-1.0.1.tgz#c1ebcce283dd2f02e4fbefdaa49d1cb13dbc990a" + integrity sha512-fHbmislWVkZaIdeF6GZxF0A/NH/3BjrGIYj+Ae6eTmTCr7EB0RQAAVEiqsXK6p3/JcRqVSBQoceZroj30Jj3XA== + dependencies: + "@babel/runtime" "^7.13.10" + "@radix-ui/react-slot" "1.0.1" + +"@radix-ui/react-scroll-area@1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@radix-ui/react-scroll-area/-/react-scroll-area-1.0.2.tgz#26c906d351b56835c0301126b24574c9e9c7b93b" + integrity sha512-k8VseTxI26kcKJaX0HPwkvlNBPTs56JRdYzcZ/vzrNUkDlvXBy8sMc7WvCpYzZkHgb+hd72VW9MqkqecGtuNgg== + dependencies: + "@babel/runtime" "^7.13.10" + "@radix-ui/number" "1.0.0" + "@radix-ui/primitive" "1.0.0" + "@radix-ui/react-compose-refs" "1.0.0" + "@radix-ui/react-context" "1.0.0" + "@radix-ui/react-direction" "1.0.0" + "@radix-ui/react-presence" "1.0.0" + "@radix-ui/react-primitive" "1.0.1" + "@radix-ui/react-use-callback-ref" "1.0.0" + "@radix-ui/react-use-layout-effect" "1.0.0" + +"@radix-ui/react-slot@1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@radix-ui/react-slot/-/react-slot-1.0.1.tgz#e7868c669c974d649070e9ecbec0b367ee0b4d81" + integrity sha512-avutXAFL1ehGvAXtPquu0YK5oz6ctS474iM3vNGQIkswrVhdrS52e3uoMQBzZhNRAIE0jBnUyXWNmSjGHhCFcw== + dependencies: + "@babel/runtime" "^7.13.10" + "@radix-ui/react-compose-refs" "1.0.0" + +"@radix-ui/react-use-callback-ref@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.0.0.tgz#9e7b8b6b4946fe3cbe8f748c82a2cce54e7b6a90" + integrity sha512-GZtyzoHz95Rhs6S63D2t/eqvdFCm7I+yHMLVQheKM7nBD8mbZIt+ct1jz4536MDnaOGKIxynJ8eHTkVGVVkoTg== + dependencies: + "@babel/runtime" "^7.13.10" + +"@radix-ui/react-use-layout-effect@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.0.0.tgz#2fc19e97223a81de64cd3ba1dc42ceffd82374dc" + integrity sha512-6Tpkq+R6LOlmQb1R5NNETLG0B4YP0wc+klfXafpUCj6JGyaUc8il7/kUZ7m59rGbXGczE9Bs+iz2qloqsZBduQ== + dependencies: + "@babel/runtime" "^7.13.10" + "@redux-devtools/extension@^3.2.3": version "3.2.4" resolved "https://registry.yarnpkg.com/@redux-devtools/extension/-/extension-3.2.4.tgz#24fd4a98cec2cb805373accb33afa7854476b636" @@ -991,6 +2308,869 @@ dependencies: "@sinonjs/commons" "^1.7.0" +"@storybook/addon-actions@6.5.15", "@storybook/addon-actions@^6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-6.5.15.tgz#ba737561dbf8a358ea8bc588f3da9fddd1a4267e" + integrity sha512-cnLzVK1S+EydFDSuvxMmMAxVqNXijBGdV9QTgsu6ys5sOkoiXRETKZmxuN8/ZRbkfc4N+1KAylSCZOOHzBQTBQ== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/components" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/theming" "6.5.15" + core-js "^3.8.2" + fast-deep-equal "^3.1.3" + global "^4.4.0" + lodash "^4.17.21" + polished "^4.2.2" + prop-types "^15.7.2" + react-inspector "^5.1.0" + regenerator-runtime "^0.13.7" + telejson "^6.0.8" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + uuid-browser "^3.1.0" + +"@storybook/addon-backgrounds@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addon-backgrounds/-/addon-backgrounds-6.5.15.tgz#bb97df61a9436f6f5a61f751f4f3fedcfe19fb84" + integrity sha512-9ddB3QIL8mRurf7TvYG1P9i1sW0b8Iik3kGlHggKogHER9WJPzbiUeH0XDjkASSa4rMCZdYn5CZKNkIAoJ2jdA== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/components" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/theming" "6.5.15" + core-js "^3.8.2" + global "^4.4.0" + memoizerific "^1.11.3" + regenerator-runtime "^0.13.7" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + +"@storybook/addon-controls@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addon-controls/-/addon-controls-6.5.15.tgz#2a1f590d5624f658561b8e0ff144667248baf907" + integrity sha512-q5y0TvD0stvQoJZ2PnFmmKIRNSOI4/k2NKyZq//J2cBUBcP1reYlFxdsNwLZWmAFpSIkc2+nsliEzNxU1WByoA== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/components" "6.5.15" + "@storybook/core-common" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/node-logger" "6.5.15" + "@storybook/store" "6.5.15" + "@storybook/theming" "6.5.15" + core-js "^3.8.2" + lodash "^4.17.21" + ts-dedent "^2.0.0" + +"@storybook/addon-docs@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-6.5.15.tgz#d5f4b991636953f30daea6aa89d5bfdfa97b9116" + integrity sha512-k3LAu+wVp6pNhfh6B1soCRl6+7sNTNxtqy6WTrIeVJVCGbXbyc5s7gQ48gJ4WAk6meoDEZbypiP4NK1El03YLg== + dependencies: + "@babel/plugin-transform-react-jsx" "^7.12.12" + "@babel/preset-env" "^7.12.11" + "@jest/transform" "^26.6.2" + "@mdx-js/react" "^1.6.22" + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/components" "6.5.15" + "@storybook/core-common" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/docs-tools" "6.5.15" + "@storybook/mdx1-csf" "^0.0.1" + "@storybook/node-logger" "6.5.15" + "@storybook/postinstall" "6.5.15" + "@storybook/preview-web" "6.5.15" + "@storybook/source-loader" "6.5.15" + "@storybook/store" "6.5.15" + "@storybook/theming" "6.5.15" + babel-loader "^8.0.0" + core-js "^3.8.2" + fast-deep-equal "^3.1.3" + global "^4.4.0" + lodash "^4.17.21" + regenerator-runtime "^0.13.7" + remark-external-links "^8.0.0" + remark-slug "^6.0.0" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + +"@storybook/addon-essentials@^6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addon-essentials/-/addon-essentials-6.5.15.tgz#cfbf6cacfbc7d14ac30aab118efcac818f0814ba" + integrity sha512-m3EY6BhUk6Z9Et7P5wGaRGNoEDHzJIOsLbGS/4IXvIoDfrqmNIilqUQl8kfDqpVdBSFprvpacHpKpLosu9H37w== + dependencies: + "@storybook/addon-actions" "6.5.15" + "@storybook/addon-backgrounds" "6.5.15" + "@storybook/addon-controls" "6.5.15" + "@storybook/addon-docs" "6.5.15" + "@storybook/addon-measure" "6.5.15" + "@storybook/addon-outline" "6.5.15" + "@storybook/addon-toolbars" "6.5.15" + "@storybook/addon-viewport" "6.5.15" + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/core-common" "6.5.15" + "@storybook/node-logger" "6.5.15" + core-js "^3.8.2" + regenerator-runtime "^0.13.7" + ts-dedent "^2.0.0" + +"@storybook/addon-interactions@^6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addon-interactions/-/addon-interactions-6.5.15.tgz#d176a47fa45bbc41cd9ecd4f672bdd19af49bbe5" + integrity sha512-9mDhkKJeWPvfrSBvuE5zn3DAKTXw37ZT21jkQzIt+dUEu0X3jCLY1dWel3Rbr9JI/PLnUnANDHOY/YtFUfrK9Q== + dependencies: + "@devtools-ds/object-inspector" "^1.1.2" + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/components" "6.5.15" + "@storybook/core-common" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/instrumenter" "6.5.15" + "@storybook/theming" "6.5.15" + core-js "^3.8.2" + global "^4.4.0" + jest-mock "^27.0.6" + polished "^4.2.2" + ts-dedent "^2.2.0" + +"@storybook/addon-links@^6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-6.5.15.tgz#97508726090a006f6c042a687ec89496c96436c4" + integrity sha512-L7Q3u/xEUuy1uPq8ttjDfvDj19Hr2Crq/Us0RfowfGAAzOb7fCoiUJDP37ADtRUlCYyuKM5V/nHxN8eGpWtugw== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/router" "6.5.15" + "@types/qs" "^6.9.5" + core-js "^3.8.2" + global "^4.4.0" + prop-types "^15.7.2" + qs "^6.10.0" + regenerator-runtime "^0.13.7" + ts-dedent "^2.0.0" + +"@storybook/addon-measure@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addon-measure/-/addon-measure-6.5.15.tgz#a174bf498168e52469f602a8d6ba6160d4b8a9d6" + integrity sha512-j77WX/v6qpWK8ZuYscWLIc+Am4/WOJRsVgyXLIw1EZIviQsjoXPo7mmyoTneEIbbHfPtWlLRbtmkjh8DAVDrCA== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/components" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + core-js "^3.8.2" + global "^4.4.0" + +"@storybook/addon-outline@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addon-outline/-/addon-outline-6.5.15.tgz#7cf9127f3d321136d6780ea2db525b4fd2678281" + integrity sha512-8yGEZQOYypnliU3rsakoZlgT4Pkq8iOhX9JclVXZL/fJMQWFQGCsXqlLaRn8sx7qsa+21PPxY5bd2+Hv/Au4zQ== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/components" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + core-js "^3.8.2" + global "^4.4.0" + regenerator-runtime "^0.13.7" + ts-dedent "^2.0.0" + +"@storybook/addon-toolbars@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addon-toolbars/-/addon-toolbars-6.5.15.tgz#6c11c9cbcc958ffe881c04cd5f04c2f47ed22f44" + integrity sha512-btwDTgElmaaT0dBRASABbTpq6m1UiQXQmLUmxfjLxVC3I2SK5tyJKbPQ2hVLFAQHK4cQn4u45BxdZ5LDpJ830A== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/components" "6.5.15" + "@storybook/theming" "6.5.15" + core-js "^3.8.2" + regenerator-runtime "^0.13.7" + +"@storybook/addon-viewport@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-6.5.15.tgz#c30d0f865d86658c380d31f1ae3589392046e23b" + integrity sha512-oOiVzgFMlTnzPLVoHWQNzWdmpksrUyT6Aq8ZOyBPNMQ0RN2doIgFr7W53nZ1OBB5cPQx9q2FgWwzJ7Tawo+iVA== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/components" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/theming" "6.5.15" + core-js "^3.8.2" + global "^4.4.0" + memoizerific "^1.11.3" + prop-types "^15.7.2" + regenerator-runtime "^0.13.7" + +"@storybook/addons@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-6.5.15.tgz#3c3fafbf3c9ce2182d652cb6682f6581ba6580e1" + integrity sha512-xT31SuSX+kYGyxCNK2nqL7WTxucs3rSmhiCLovJcUjYk+QquV3c2c53Ki7lwwdDbzfXFcNAe0HJ4hoTN4jhn0Q== + dependencies: + "@storybook/api" "6.5.15" + "@storybook/channels" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/router" "6.5.15" + "@storybook/theming" "6.5.15" + "@types/webpack-env" "^1.16.0" + core-js "^3.8.2" + global "^4.4.0" + regenerator-runtime "^0.13.7" + +"@storybook/api@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/api/-/api-6.5.15.tgz#a189dac82a57ae9cfac43c887207b1075a2a2e96" + integrity sha512-BBE0KXKvj1/3jTghbIoWfrcDM0t+xO7EYtWWAXD6XlhGsZVD2Dy82Z52ONyLulMDRpMWl0OYy3h6A1YnFUH25w== + dependencies: + "@storybook/channels" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/router" "6.5.15" + "@storybook/semver" "^7.3.2" + "@storybook/theming" "6.5.15" + core-js "^3.8.2" + fast-deep-equal "^3.1.3" + global "^4.4.0" + lodash "^4.17.21" + memoizerific "^1.11.3" + regenerator-runtime "^0.13.7" + store2 "^2.12.0" + telejson "^6.0.8" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + +"@storybook/builder-webpack4@6.5.15", "@storybook/builder-webpack4@^6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/builder-webpack4/-/builder-webpack4-6.5.15.tgz#8050b2eec84e055eee9b181e067d9a8aa76e252a" + integrity sha512-1ZkMECUUdiYplhlgyUF5fqW3XU7eWNDJbuPUguyDOeidgJ111WZzBcLuKj+SNrzdNNgXwROCWAFybiNnX33YHQ== + dependencies: + "@babel/core" "^7.12.10" + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/channel-postmessage" "6.5.15" + "@storybook/channels" "6.5.15" + "@storybook/client-api" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/components" "6.5.15" + "@storybook/core-common" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/node-logger" "6.5.15" + "@storybook/preview-web" "6.5.15" + "@storybook/router" "6.5.15" + "@storybook/semver" "^7.3.2" + "@storybook/store" "6.5.15" + "@storybook/theming" "6.5.15" + "@storybook/ui" "6.5.15" + "@types/node" "^14.0.10 || ^16.0.0" + "@types/webpack" "^4.41.26" + autoprefixer "^9.8.6" + babel-loader "^8.0.0" + case-sensitive-paths-webpack-plugin "^2.3.0" + core-js "^3.8.2" + css-loader "^3.6.0" + file-loader "^6.2.0" + find-up "^5.0.0" + fork-ts-checker-webpack-plugin "^4.1.6" + glob "^7.1.6" + glob-promise "^3.4.0" + global "^4.4.0" + html-webpack-plugin "^4.0.0" + pnp-webpack-plugin "1.6.4" + postcss "^7.0.36" + postcss-flexbugs-fixes "^4.2.1" + postcss-loader "^4.2.0" + raw-loader "^4.0.2" + stable "^0.1.8" + style-loader "^1.3.0" + terser-webpack-plugin "^4.2.3" + ts-dedent "^2.0.0" + url-loader "^4.1.1" + util-deprecate "^1.0.2" + webpack "4" + webpack-dev-middleware "^3.7.3" + webpack-filter-warnings-plugin "^1.2.1" + webpack-hot-middleware "^2.25.1" + webpack-virtual-modules "^0.2.2" + +"@storybook/channel-postmessage@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-6.5.15.tgz#a9d614be56bededf7cec41b833c46d35958b6d2b" + integrity sha512-gMpA8LWT8lC4z5KWnaMh03aazEwtDO7GtY5kZVru+EEMgExGmaR82qgekwmLmgLj2nRJEv0o138o9IqYUcou8w== + dependencies: + "@storybook/channels" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/core-events" "6.5.15" + core-js "^3.8.2" + global "^4.4.0" + qs "^6.10.0" + telejson "^6.0.8" + +"@storybook/channel-websocket@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/channel-websocket/-/channel-websocket-6.5.15.tgz#3fa090412d122428a7bc3d622e4cd36fdac7dd78" + integrity sha512-K85KEgzo5ahzJNJjyUbSNyuRmkeC8glJX2hCg2j9HiJ9rasX53qugkODrKDlWAeheulo3kR13VSuAqIuwVbmbw== + dependencies: + "@storybook/channels" "6.5.15" + "@storybook/client-logger" "6.5.15" + core-js "^3.8.2" + global "^4.4.0" + telejson "^6.0.8" + +"@storybook/channels@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-6.5.15.tgz#586681b6ec458124da084c39bc8c518d9e96b10b" + integrity sha512-gPpsBgirv2NCXbH4WbYqdkI0JLE96aiVuu7UEWfn9yu071pQ9CLHbhXGD9fSFNrfOkyBBY10ppSE7uCXw3Wexg== + dependencies: + core-js "^3.8.2" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + +"@storybook/client-api@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-6.5.15.tgz#70f3ced6d0fcc7b71217cae858bf81c3b2c50eba" + integrity sha512-0ZGpRgVz7rdbCguBqBpwObXbsVY5qlSTWDzzIBpmz8EkxW/MtK5wEyeq+0L0O+DTn41FwvH5yCGLAENpzWD8BQ== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/channel-postmessage" "6.5.15" + "@storybook/channels" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/store" "6.5.15" + "@types/qs" "^6.9.5" + "@types/webpack-env" "^1.16.0" + core-js "^3.8.2" + fast-deep-equal "^3.1.3" + global "^4.4.0" + lodash "^4.17.21" + memoizerific "^1.11.3" + qs "^6.10.0" + regenerator-runtime "^0.13.7" + store2 "^2.12.0" + synchronous-promise "^2.0.15" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + +"@storybook/client-logger@6.5.15", "@storybook/client-logger@^6.4.0": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-6.5.15.tgz#0d9878af893a3493b6ee108cc097ae1436d7da4d" + integrity sha512-0uyxKvodq+FycGv6aUwC1wUR6suXf2+7ywMFAOlYolI4UvNj8NyU/5AfgKT5XnxYAgPmoCiAjOE700TrfHrosw== + dependencies: + core-js "^3.8.2" + global "^4.4.0" + +"@storybook/components@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/components/-/components-6.5.15.tgz#8145be807bf48c1d010f29114411f390a9e3228f" + integrity sha512-bHTT0Oa3s4g+MBMaLBbX9ofMtb1AW59AzIUNGrfqW1XqJMGuUHMiJ7TSo+i5dRSFpbFygnwMEG9LfHxpR2Z0Dw== + dependencies: + "@storybook/client-logger" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/theming" "6.5.15" + core-js "^3.8.2" + memoizerific "^1.11.3" + qs "^6.10.0" + regenerator-runtime "^0.13.7" + util-deprecate "^1.0.2" + +"@storybook/core-client@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-6.5.15.tgz#57d86a07f920ab0cb058820dbcb1f48cc9dc6257" + integrity sha512-i9t4WONy2MxJwLI1FIp5ck7b52EXyJfALnxUn4O/3GTkw09J0NOKi2DPjefUsi7IB5MzFpDjDH9vw/XiTM+OZw== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/channel-postmessage" "6.5.15" + "@storybook/channel-websocket" "6.5.15" + "@storybook/client-api" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/preview-web" "6.5.15" + "@storybook/store" "6.5.15" + "@storybook/ui" "6.5.15" + airbnb-js-shims "^2.2.1" + ansi-to-html "^0.6.11" + core-js "^3.8.2" + global "^4.4.0" + lodash "^4.17.21" + qs "^6.10.0" + regenerator-runtime "^0.13.7" + ts-dedent "^2.0.0" + unfetch "^4.2.0" + util-deprecate "^1.0.2" + +"@storybook/core-common@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-6.5.15.tgz#3ab524c7abdae52024caeb5c0349a764cb08769f" + integrity sha512-uits9o6qwHTPnjsNZP25f7hWmUBGRJ7FXtxxtEaNSmtiwk50KWxBaro7wt505lJ1Gb9vOhpNPhS7y3IxdsXNmQ== + dependencies: + "@babel/core" "^7.12.10" + "@babel/plugin-proposal-class-properties" "^7.12.1" + "@babel/plugin-proposal-decorators" "^7.12.12" + "@babel/plugin-proposal-export-default-from" "^7.12.1" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.12.1" + "@babel/plugin-proposal-object-rest-spread" "^7.12.1" + "@babel/plugin-proposal-optional-chaining" "^7.12.7" + "@babel/plugin-proposal-private-methods" "^7.12.1" + "@babel/plugin-proposal-private-property-in-object" "^7.12.1" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-transform-arrow-functions" "^7.12.1" + "@babel/plugin-transform-block-scoping" "^7.12.12" + "@babel/plugin-transform-classes" "^7.12.1" + "@babel/plugin-transform-destructuring" "^7.12.1" + "@babel/plugin-transform-for-of" "^7.12.1" + "@babel/plugin-transform-parameters" "^7.12.1" + "@babel/plugin-transform-shorthand-properties" "^7.12.1" + "@babel/plugin-transform-spread" "^7.12.1" + "@babel/preset-env" "^7.12.11" + "@babel/preset-react" "^7.12.10" + "@babel/preset-typescript" "^7.12.7" + "@babel/register" "^7.12.1" + "@storybook/node-logger" "6.5.15" + "@storybook/semver" "^7.3.2" + "@types/node" "^14.0.10 || ^16.0.0" + "@types/pretty-hrtime" "^1.0.0" + babel-loader "^8.0.0" + babel-plugin-macros "^3.0.1" + babel-plugin-polyfill-corejs3 "^0.1.0" + chalk "^4.1.0" + core-js "^3.8.2" + express "^4.17.1" + file-system-cache "^1.0.5" + find-up "^5.0.0" + fork-ts-checker-webpack-plugin "^6.0.4" + fs-extra "^9.0.1" + glob "^7.1.6" + handlebars "^4.7.7" + interpret "^2.2.0" + json5 "^2.1.3" + lazy-universal-dotenv "^3.0.1" + picomatch "^2.3.0" + pkg-dir "^5.0.0" + pretty-hrtime "^1.0.3" + resolve-from "^5.0.0" + slash "^3.0.0" + telejson "^6.0.8" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + webpack "4" + +"@storybook/core-events@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-6.5.15.tgz#c12f645b50231c50eb9b26038aa67ab92b1ba24e" + integrity sha512-B1Ba6l5W7MeNclclqMMTMHgYgfdpB5SIhNCQFnzIz8blynzRhNFMdxvbAl6Je5G0S4xydYYd7Lno2kXQebs7HA== + dependencies: + core-js "^3.8.2" + +"@storybook/core-server@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/core-server/-/core-server-6.5.15.tgz#217c40d7a33708b9ac69f73dd51ed9d2f031d19d" + integrity sha512-m+pZwHhCjwryeqTptyyKHSbIjnnPGKoRSnkqLTOpKQf8llZMnNQWUFrn4fx6UDKzxFQ2st2+laV8O2QbMs8qwQ== + dependencies: + "@discoveryjs/json-ext" "^0.5.3" + "@storybook/builder-webpack4" "6.5.15" + "@storybook/core-client" "6.5.15" + "@storybook/core-common" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/csf-tools" "6.5.15" + "@storybook/manager-webpack4" "6.5.15" + "@storybook/node-logger" "6.5.15" + "@storybook/semver" "^7.3.2" + "@storybook/store" "6.5.15" + "@storybook/telemetry" "6.5.15" + "@types/node" "^14.0.10 || ^16.0.0" + "@types/node-fetch" "^2.5.7" + "@types/pretty-hrtime" "^1.0.0" + "@types/webpack" "^4.41.26" + better-opn "^2.1.1" + boxen "^5.1.2" + chalk "^4.1.0" + cli-table3 "^0.6.1" + commander "^6.2.1" + compression "^1.7.4" + core-js "^3.8.2" + cpy "^8.1.2" + detect-port "^1.3.0" + express "^4.17.1" + fs-extra "^9.0.1" + global "^4.4.0" + globby "^11.0.2" + ip "^2.0.0" + lodash "^4.17.21" + node-fetch "^2.6.7" + open "^8.4.0" + pretty-hrtime "^1.0.3" + prompts "^2.4.0" + regenerator-runtime "^0.13.7" + serve-favicon "^2.5.0" + slash "^3.0.0" + telejson "^6.0.8" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + watchpack "^2.2.0" + webpack "4" + ws "^8.2.3" + x-default-browser "^0.4.0" + +"@storybook/core@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/core/-/core-6.5.15.tgz#82e0998d908fc9e66a659e1217072c425d63f9b6" + integrity sha512-T9TjLxbb5P/XvLEoj0dnbtexJa0V3pqCifRlIUNkTJO0nU3PdGLMcKMSyIYWjkthAJ9oBrajnodV0UveM/epTg== + dependencies: + "@storybook/core-client" "6.5.15" + "@storybook/core-server" "6.5.15" + +"@storybook/csf-tools@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/csf-tools/-/csf-tools-6.5.15.tgz#dc5d0fe946c25d60bf201e5180c4fc81b24f763b" + integrity sha512-2LwSD7yE/ccXBc58K4vdKw/oJJg6IpC4WD51rBt2mAl5JUCkxhOq7wG/Z8Wy1lZw2LVuKNTmjVou5blGRI/bTg== + dependencies: + "@babel/core" "^7.12.10" + "@babel/generator" "^7.12.11" + "@babel/parser" "^7.12.11" + "@babel/plugin-transform-react-jsx" "^7.12.12" + "@babel/preset-env" "^7.12.11" + "@babel/traverse" "^7.12.11" + "@babel/types" "^7.12.11" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/mdx1-csf" "^0.0.1" + core-js "^3.8.2" + fs-extra "^9.0.1" + global "^4.4.0" + regenerator-runtime "^0.13.7" + ts-dedent "^2.0.0" + +"@storybook/csf@0.0.2--canary.4566f4d.1": + version "0.0.2--canary.4566f4d.1" + resolved "https://registry.yarnpkg.com/@storybook/csf/-/csf-0.0.2--canary.4566f4d.1.tgz#dac52a21c40ef198554e71fe4d20d61e17f65327" + integrity sha512-9OVvMVh3t9znYZwb0Svf/YQoxX2gVOeQTGe2bses2yj+a3+OJnCrUF3/hGv6Em7KujtOdL2LL+JnG49oMVGFgQ== + dependencies: + lodash "^4.17.15" + +"@storybook/csf@^0.0.1": + version "0.0.1" + resolved "https://registry.yarnpkg.com/@storybook/csf/-/csf-0.0.1.tgz#95901507dc02f0bc6f9ac8ee1983e2fc5bb98ce6" + integrity sha512-USTLkZze5gkel8MYCujSRBVIrUQ3YPBrLOx7GNk/0wttvVtlzWXAq9eLbQ4p/NicGxP+3T7KPEMVV//g+yubpw== + dependencies: + lodash "^4.17.15" + +"@storybook/docs-tools@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/docs-tools/-/docs-tools-6.5.15.tgz#c9a3954719c45c3748abd6aaa735e33f5c961912" + integrity sha512-8w78NFOtlJGuIa9vPPsr87J9iQUGmLFh7CrMS2+t9LxW+0oH5MZ8QqPQUHNuTuKsYN3r+QAmmi2pj0auZmCoKA== + dependencies: + "@babel/core" "^7.12.10" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/store" "6.5.15" + core-js "^3.8.2" + doctrine "^3.0.0" + lodash "^4.17.21" + regenerator-runtime "^0.13.7" + +"@storybook/instrumenter@6.5.15", "@storybook/instrumenter@^6.4.0": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/instrumenter/-/instrumenter-6.5.15.tgz#4dcb826201fcc09465fd5d6e37bd9147ec1dcfd0" + integrity sha512-93WyH0s63RCv496eHjQ5dWFXoExXg9dlNMe7i4/FVVbWeDdb1pPVIHsLn28WxOiVQahQEAW2EA7Mao3BiBWg+A== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/core-events" "6.5.15" + core-js "^3.8.2" + global "^4.4.0" + +"@storybook/manager-webpack4@6.5.15", "@storybook/manager-webpack4@^6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/manager-webpack4/-/manager-webpack4-6.5.15.tgz#09808b87b510591390765af708ab511ff63a1e5c" + integrity sha512-zRvBTMoaFO6MvHDsDLnt3tsFENhpY3k+e/UIPdqbIDMbUPGGQzxJucAM9aS/kbVSO5IVs8IflVxbeeB/uTIIfA== + dependencies: + "@babel/core" "^7.12.10" + "@babel/plugin-transform-template-literals" "^7.12.1" + "@babel/preset-react" "^7.12.10" + "@storybook/addons" "6.5.15" + "@storybook/core-client" "6.5.15" + "@storybook/core-common" "6.5.15" + "@storybook/node-logger" "6.5.15" + "@storybook/theming" "6.5.15" + "@storybook/ui" "6.5.15" + "@types/node" "^14.0.10 || ^16.0.0" + "@types/webpack" "^4.41.26" + babel-loader "^8.0.0" + case-sensitive-paths-webpack-plugin "^2.3.0" + chalk "^4.1.0" + core-js "^3.8.2" + css-loader "^3.6.0" + express "^4.17.1" + file-loader "^6.2.0" + find-up "^5.0.0" + fs-extra "^9.0.1" + html-webpack-plugin "^4.0.0" + node-fetch "^2.6.7" + pnp-webpack-plugin "1.6.4" + read-pkg-up "^7.0.1" + regenerator-runtime "^0.13.7" + resolve-from "^5.0.0" + style-loader "^1.3.0" + telejson "^6.0.8" + terser-webpack-plugin "^4.2.3" + ts-dedent "^2.0.0" + url-loader "^4.1.1" + util-deprecate "^1.0.2" + webpack "4" + webpack-dev-middleware "^3.7.3" + webpack-virtual-modules "^0.2.2" + +"@storybook/mdx1-csf@^0.0.1": + version "0.0.1" + resolved "https://registry.yarnpkg.com/@storybook/mdx1-csf/-/mdx1-csf-0.0.1.tgz#d4184e3f6486fade9f7a6bfaf934d9bc07718d5b" + integrity sha512-4biZIWWzoWlCarMZmTpqcJNgo/RBesYZwGFbQeXiGYsswuvfWARZnW9RE9aUEMZ4XPn7B1N3EKkWcdcWe/K2tg== + dependencies: + "@babel/generator" "^7.12.11" + "@babel/parser" "^7.12.11" + "@babel/preset-env" "^7.12.11" + "@babel/types" "^7.12.11" + "@mdx-js/mdx" "^1.6.22" + "@types/lodash" "^4.14.167" + js-string-escape "^1.0.1" + loader-utils "^2.0.0" + lodash "^4.17.21" + prettier ">=2.2.1 <=2.3.0" + ts-dedent "^2.0.0" + +"@storybook/node-logger@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-6.5.15.tgz#d99695e8d5f8cf434e8fdcca719b5b5fa5c88e2e" + integrity sha512-LQjjbfMuUXm7wZTBKb+iGeCNnej4r1Jb2NxG3Svu2bVhaoB6u33jHAcbmhXpXW1jghzW3kQwOU7BoLuJiRRFIw== + dependencies: + "@types/npmlog" "^4.1.2" + chalk "^4.1.0" + core-js "^3.8.2" + npmlog "^5.0.1" + pretty-hrtime "^1.0.3" + +"@storybook/postinstall@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/postinstall/-/postinstall-6.5.15.tgz#90989c8049357a6df6f38c933172210c9c6caf8c" + integrity sha512-l7pApTgLD10OedNOyuf4vUdVCHLOSaIUIL9gdJl1WaSFHiUpJvvzBIh5M4aRICYPbnuExQc8y2GAjERKO4Ep+g== + dependencies: + core-js "^3.8.2" + +"@storybook/preview-web@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/preview-web/-/preview-web-6.5.15.tgz#5f47899dff1580ed3dc1b5a7bfdf67d6574536fc" + integrity sha512-gIHABSAD0JS0iRaG67BnSDq/q8Zf4fFwEWBQOSYgcEx2TzhAUeSkhGZUQHdlOTCwuA2PpXT0/cWDH8u2Ev+msg== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/channel-postmessage" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/store" "6.5.15" + ansi-to-html "^0.6.11" + core-js "^3.8.2" + global "^4.4.0" + lodash "^4.17.21" + qs "^6.10.0" + regenerator-runtime "^0.13.7" + synchronous-promise "^2.0.15" + ts-dedent "^2.0.0" + unfetch "^4.2.0" + util-deprecate "^1.0.2" + +"@storybook/react-docgen-typescript-plugin@1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0": + version "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" + resolved "https://registry.yarnpkg.com/@storybook/react-docgen-typescript-plugin/-/react-docgen-typescript-plugin-1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0.tgz#3103532ff494fb7dc3cf835f10740ecf6a26c0f9" + integrity sha512-eVg3BxlOm2P+chijHBTByr90IZVUtgRW56qEOLX7xlww2NBuKrcavBlcmn+HH7GIUktquWkMPtvy6e0W0NgA5w== + dependencies: + debug "^4.1.1" + endent "^2.0.1" + find-cache-dir "^3.3.1" + flat-cache "^3.0.4" + micromatch "^4.0.2" + react-docgen-typescript "^2.1.1" + tslib "^2.0.0" + +"@storybook/react@^6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/react/-/react-6.5.15.tgz#83e645b16a4d241ec84a8d0015b1a7a2d55c5091" + integrity sha512-iQta2xOs/oK0sw/zpn3g/huvOmvggzi8z2/WholmUmmRiSQRo9lOhRXH0u13T4ja4fEa+u7m58G83xOG6i73Kw== + dependencies: + "@babel/preset-flow" "^7.12.1" + "@babel/preset-react" "^7.12.10" + "@pmmmwh/react-refresh-webpack-plugin" "^0.5.3" + "@storybook/addons" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/core" "6.5.15" + "@storybook/core-common" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/docs-tools" "6.5.15" + "@storybook/node-logger" "6.5.15" + "@storybook/react-docgen-typescript-plugin" "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" + "@storybook/semver" "^7.3.2" + "@storybook/store" "6.5.15" + "@types/estree" "^0.0.51" + "@types/node" "^14.14.20 || ^16.0.0" + "@types/webpack-env" "^1.16.0" + acorn "^7.4.1" + acorn-jsx "^5.3.1" + acorn-walk "^7.2.0" + babel-plugin-add-react-displayname "^0.0.5" + babel-plugin-react-docgen "^4.2.1" + core-js "^3.8.2" + escodegen "^2.0.0" + fs-extra "^9.0.1" + global "^4.4.0" + html-tags "^3.1.0" + lodash "^4.17.21" + prop-types "^15.7.2" + react-element-to-jsx-string "^14.3.4" + react-refresh "^0.11.0" + read-pkg-up "^7.0.1" + regenerator-runtime "^0.13.7" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + webpack ">=4.43.0 <6.0.0" + +"@storybook/router@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/router/-/router-6.5.15.tgz#bf01d35bdd4603bf188629a6578489e313a312fd" + integrity sha512-9t8rI8t7/Krolau29gsdjdbRQ66orONIyP0efp0EukVgv6reNFzb/U14ARrl0uHys6Tl5Xyece9FoakQUdn8Kg== + dependencies: + "@storybook/client-logger" "6.5.15" + core-js "^3.8.2" + memoizerific "^1.11.3" + qs "^6.10.0" + regenerator-runtime "^0.13.7" + +"@storybook/semver@^7.3.2": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/semver/-/semver-7.3.2.tgz#f3b9c44a1c9a0b933c04e66d0048fcf2fa10dac0" + integrity sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg== + dependencies: + core-js "^3.6.5" + find-up "^4.1.0" + +"@storybook/source-loader@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/source-loader/-/source-loader-6.5.15.tgz#363a9b2812a2cef6cc5cb948e55d8a2624e18643" + integrity sha512-MaWzki40g0/7NWmJgUBhOp+e7y8Ohw6G/bRr/rcDP7eXSnud6ThYylXv0QqBScLPPTy8txjmBClCoqdLGyvLWQ== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + core-js "^3.8.2" + estraverse "^5.2.0" + global "^4.4.0" + loader-utils "^2.0.4" + lodash "^4.17.21" + prettier ">=2.2.1 <=2.3.0" + regenerator-runtime "^0.13.7" + +"@storybook/store@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/store/-/store-6.5.15.tgz#d6ca7a3165442aabfde335f243bdd179d53bca1a" + integrity sha512-r6cYTf6GtbqgdI4ZG3xuWdJAAu5fJ3xAWMiDkHyoK2u+R2TeYXIsJvgn0BPrW87sZhELIkg4ckdFECmATs3kpQ== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + core-js "^3.8.2" + fast-deep-equal "^3.1.3" + global "^4.4.0" + lodash "^4.17.21" + memoizerific "^1.11.3" + regenerator-runtime "^0.13.7" + slash "^3.0.0" + stable "^0.1.8" + synchronous-promise "^2.0.15" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + +"@storybook/telemetry@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/telemetry/-/telemetry-6.5.15.tgz#852050c1e54bf704a104e47e4e498d999096e0e7" + integrity sha512-WHMRG6xMkEGscn1q4SotwzV8hxM1g3zHyXPN77iosY5zpOIn/qAzvkmW28V1DPH9jPWMZMizBgG1TIQvUpduXg== + dependencies: + "@storybook/client-logger" "6.5.15" + "@storybook/core-common" "6.5.15" + chalk "^4.1.0" + core-js "^3.8.2" + detect-package-manager "^2.0.1" + fetch-retry "^5.0.2" + fs-extra "^9.0.1" + global "^4.4.0" + isomorphic-unfetch "^3.1.0" + nanoid "^3.3.1" + read-pkg-up "^7.0.1" + regenerator-runtime "^0.13.7" + +"@storybook/testing-library@^0.0.13": + version "0.0.13" + resolved "https://registry.yarnpkg.com/@storybook/testing-library/-/testing-library-0.0.13.tgz#417c87d4ea62895092ec5fdf67027ae201254f45" + integrity sha512-vRMeIGer4EjJkTgI8sQyK9W431ekPWYCWL//OmSDJ64IT3h7FnW7Xg6p+eqM3oII98/O5pcya5049GxnjaPtxw== + dependencies: + "@storybook/client-logger" "^6.4.0" + "@storybook/instrumenter" "^6.4.0" + "@testing-library/dom" "^8.3.0" + "@testing-library/user-event" "^13.2.1" + ts-dedent "^2.2.0" + +"@storybook/theming@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-6.5.15.tgz#048461b37ad0c29dc8d91a065a6bf1c90067524c" + integrity sha512-pgdW0lVZKKXQ4VhIfLHycMmwFSVOY7vLTKnytag4Y8Yz+aXm0bwDN/QxPntFzDH47F1Rcy2ywNnvty8ooDTvuA== + dependencies: + "@storybook/client-logger" "6.5.15" + core-js "^3.8.2" + memoizerific "^1.11.3" + regenerator-runtime "^0.13.7" + +"@storybook/ui@6.5.15": + version "6.5.15" + resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-6.5.15.tgz#e4d80465116e53d48d2c3bb616909c37f5405181" + integrity sha512-OO+TWZmI8ebWA1C3JBKNvbUbsgvt4GppqsGlkf5CTBZrT/MzmMlYiooLAtlY1ZPcMtTd5ynLxvroHWBEnMOk2A== + dependencies: + "@storybook/addons" "6.5.15" + "@storybook/api" "6.5.15" + "@storybook/channels" "6.5.15" + "@storybook/client-logger" "6.5.15" + "@storybook/components" "6.5.15" + "@storybook/core-events" "6.5.15" + "@storybook/router" "6.5.15" + "@storybook/semver" "^7.3.2" + "@storybook/theming" "6.5.15" + core-js "^3.8.2" + memoizerific "^1.11.3" + qs "^6.10.0" + regenerator-runtime "^0.13.7" + resolve-from "^5.0.0" + "@swc/core-darwin-arm64@1.3.25": version "1.3.25" resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.25.tgz#01ce7b8a88b545a4fc5283ed6f96b22c5733d6c4" @@ -1072,6 +3252,25 @@ dependencies: defer-to-connect "^2.0.1" +"@tabler/icons@^1.119.0": + version "1.119.0" + resolved "https://registry.yarnpkg.com/@tabler/icons/-/icons-1.119.0.tgz#8c590bc5a563c8673a78ccd451bedabd584b376e" + integrity sha512-Fk3Qq4w2SXcTjc/n1cuL5bccPkylrOMo7cYpQIf/yw6zP76LQV9dtLcHQUjFiUnaYuswR645CnURIhlafyAh9g== + +"@testing-library/dom@^8.3.0": + version "8.20.0" + resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-8.20.0.tgz#914aa862cef0f5e89b98cc48e3445c4c921010f6" + integrity sha512-d9ULIT+a4EXLX3UU8FBjauG9NnsZHkHztXoIcTsOKoOw030fyjheN9svkTULjJxtYag9DZz5Jz5qkWZDPxTFwA== + dependencies: + "@babel/code-frame" "^7.10.4" + "@babel/runtime" "^7.12.5" + "@types/aria-query" "^5.0.1" + aria-query "^5.0.0" + chalk "^4.1.0" + dom-accessibility-api "^0.5.9" + lz-string "^1.4.4" + pretty-format "^27.0.2" + "@testing-library/dom@^8.5.0": version "8.19.1" resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-8.19.1.tgz#0e2dafd281dedb930bb235eac1045470b4129d0e" @@ -1095,6 +3294,13 @@ "@testing-library/dom" "^8.5.0" "@types/react-dom" "^18.0.0" +"@testing-library/user-event@^13.2.1": + version "13.5.0" + resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-13.5.0.tgz#69d77007f1e124d55314a2b73fd204b333b13295" + integrity sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg== + dependencies: + "@babel/runtime" "^7.12.5" + "@tootallnate/once@1": version "1.1.2" resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" @@ -1163,6 +3369,55 @@ dependencies: "@babel/types" "^7.3.0" +"@types/eslint-scope@^3.7.3": + version "3.7.4" + resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.4.tgz#37fc1223f0786c39627068a12e94d6e6fc61de16" + integrity sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA== + dependencies: + "@types/eslint" "*" + "@types/estree" "*" + +"@types/eslint@*": + version "8.4.10" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.4.10.tgz#19731b9685c19ed1552da7052b6f668ed7eb64bb" + integrity sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/estree@*": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.0.tgz#5fb2e536c1ae9bf35366eed879e827fa59ca41c2" + integrity sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ== + +"@types/estree@^0.0.51": + version "0.0.51" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" + integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== + +"@types/glob@*": + version "8.0.1" + resolved "https://registry.yarnpkg.com/@types/glob/-/glob-8.0.1.tgz#6e3041640148b7764adf21ce5c7138ad454725b0" + integrity sha512-8bVUjXZvJacUFkJXHdyZ9iH1Eaj5V7I8c4NdH5sQJsdXkqT4CA5Dhb4yb4VE/3asyx4L9ayZr1NIhTsWHczmMw== + dependencies: + "@types/minimatch" "^5.1.2" + "@types/node" "*" + +"@types/glob@^7.1.1": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" + integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA== + dependencies: + "@types/minimatch" "*" + "@types/node" "*" + +"@types/graceful-fs@^4.1.2": + version "4.1.6" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae" + integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw== + dependencies: + "@types/node" "*" + "@types/graceful-fs@^4.1.3": version "4.1.5" resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" @@ -1170,11 +3425,28 @@ dependencies: "@types/node" "*" +"@types/hast@^2.0.0": + version "2.3.4" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.4.tgz#8aa5ef92c117d20d974a82bdfb6a648b08c0bafc" + integrity sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g== + dependencies: + "@types/unist" "*" + +"@types/html-minifier-terser@^5.0.0": + version "5.1.2" + resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz#693b316ad323ea97eed6b38ed1a3cc02b1672b57" + integrity sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w== + "@types/http-cache-semantics@^4.0.1": version "4.0.1" resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812" integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ== +"@types/is-function@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@types/is-function/-/is-function-1.0.1.tgz#2d024eace950c836d9e3335a66b97960ae41d022" + integrity sha512-A79HEEiwXTFtfY+Bcbo58M2GRYzCr9itHWzbzHVFNEYCcoU/MMGwYYf721gBrnhpj1s6RGVVha/IgNFnR0Iw/Q== + "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.4" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" @@ -1211,7 +3483,7 @@ "@types/tough-cookie" "*" parse5 "^7.0.0" -"@types/json-schema@^7.0.9": +"@types/json-schema@*", "@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.11" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== @@ -1221,31 +3493,86 @@ resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== +"@types/lodash@^4.14.167": + version "4.14.191" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.191.tgz#09511e7f7cba275acd8b419ddac8da9a6a79e2fa" + integrity sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ== + +"@types/mdast@^3.0.0": + version "3.0.10" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.10.tgz#4724244a82a4598884cbbe9bcfd73dff927ee8af" + integrity sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA== + dependencies: + "@types/unist" "*" + +"@types/minimatch@*", "@types/minimatch@^5.1.2": + version "5.1.2" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" + integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA== + "@types/minimist@^1.2.0": version "1.2.2" resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== +"@types/node-fetch@^2.5.7": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.2.tgz#d1a9c5fd049d9415dce61571557104dec3ec81da" + integrity sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A== + dependencies: + "@types/node" "*" + form-data "^3.0.0" + "@types/node@*", "@types/node@^18.11.18": version "18.11.18" resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.18.tgz#8dfb97f0da23c2293e554c5a50d61ef134d7697f" integrity sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA== +"@types/node@^14.0.10 || ^16.0.0", "@types/node@^14.14.20 || ^16.0.0": + version "16.18.11" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.11.tgz#cbb15c12ca7c16c85a72b6bdc4d4b01151bb3cae" + integrity sha512-3oJbGBUWuS6ahSnEq1eN2XrCyf4YsWI8OyCvo7c64zQJNplk3mO84t53o8lfTk+2ji59g5ycfc6qQ3fdHliHuA== + "@types/normalize-package-data@^2.4.0": version "2.4.1" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== +"@types/npmlog@^4.1.2": + version "4.1.4" + resolved "https://registry.yarnpkg.com/@types/npmlog/-/npmlog-4.1.4.tgz#30eb872153c7ead3e8688c476054ddca004115f6" + integrity sha512-WKG4gTr8przEZBiJ5r3s8ZIAoMXNbOgQ+j/d5O4X3x6kZJRLNvyUJuUK/KoG3+8BaOHPhp2m7WC6JKKeovDSzQ== + +"@types/parse-json@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== + +"@types/parse5@^5.0.0": + version "5.0.3" + resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-5.0.3.tgz#e7b5aebbac150f8b5fdd4a46e7f0bd8e65e19109" + integrity sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw== + "@types/prettier@^2.1.5": version "2.7.2" resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.2.tgz#6c2324641cc4ba050a8c710b2b251b377581fbf0" integrity sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg== +"@types/pretty-hrtime@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@types/pretty-hrtime/-/pretty-hrtime-1.0.1.tgz#72a26101dc567b0d68fd956cf42314556e42d601" + integrity sha512-VjID5MJb1eGKthz2qUerWT8+R4b9N+CHvGCzg9fn4kWZgaF9AhdYikQio3R7wV8YY1NsQKPaCwKz1Yff+aHNUQ== + "@types/prop-types@*": version "15.7.5" resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf" integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== +"@types/qs@^6.9.5": + version "6.9.7" + resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.7.tgz#63bb7d067db107cc1e457c303bc25d511febf6cb" + integrity sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw== + "@types/react-dom@^18.0.0", "@types/react-dom@^18.0.10": version "18.0.10" resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.0.10.tgz#3b66dec56aa0f16a6cc26da9e9ca96c35c0b4352" @@ -1272,21 +3599,76 @@ resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91" integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== +"@types/source-list-map@*": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" + integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA== + "@types/stack-utils@^2.0.0": version "2.0.1" resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== +"@types/tapable@^1", "@types/tapable@^1.0.5": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.8.tgz#b94a4391c85666c7b73299fd3ad79d4faa435310" + integrity sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ== + "@types/tough-cookie@*": version "4.0.2" resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397" integrity sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw== +"@types/uglify-js@*": + version "3.17.1" + resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.17.1.tgz#e0ffcef756476410e5bce2cb01384ed878a195b5" + integrity sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g== + dependencies: + source-map "^0.6.1" + +"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2", "@types/unist@^2.0.3": + version "2.0.6" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.6.tgz#250a7b16c3b91f672a24552ec64678eeb1d3a08d" + integrity sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ== + +"@types/webpack-env@^1.16.0": + version "1.18.0" + resolved "https://registry.yarnpkg.com/@types/webpack-env/-/webpack-env-1.18.0.tgz#ed6ecaa8e5ed5dfe8b2b3d00181702c9925f13fb" + integrity sha512-56/MAlX5WMsPVbOg7tAxnYvNYMMWr/QJiIp6BxVSW3JJXUVzzOn64qW8TzQyMSqSUFM2+PVI4aUHcHOzIz/1tg== + +"@types/webpack-sources@*": + version "3.2.0" + resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-3.2.0.tgz#16d759ba096c289034b26553d2df1bf45248d38b" + integrity sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg== + dependencies: + "@types/node" "*" + "@types/source-list-map" "*" + source-map "^0.7.3" + +"@types/webpack@^4.41.26", "@types/webpack@^4.41.8": + version "4.41.33" + resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.33.tgz#16164845a5be6a306bcbe554a8e67f9cac215ffc" + integrity sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g== + dependencies: + "@types/node" "*" + "@types/tapable" "^1" + "@types/uglify-js" "*" + "@types/webpack-sources" "*" + anymatch "^3.0.0" + source-map "^0.6.0" + "@types/yargs-parser@*": version "21.0.0" resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== +"@types/yargs@^15.0.0": + version "15.0.15" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.15.tgz#e609a2b1ef9e05d90489c2f5f45bbfb2be092158" + integrity sha512-IziEYMU9XoVj8hWg7k+UJrXALkGFjWJhn5QFEv9q4p+v40oZhSuC135M38st8XPjICL7Ey4TV64ferBGUoJhBg== + dependencies: + "@types/yargs-parser" "*" + "@types/yargs@^16.0.0": version "16.0.5" resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.5.tgz#12cc86393985735a283e387936398c2f9e5f88e3" @@ -1334,6 +3716,14 @@ "@typescript-eslint/types" "5.48.0" "@typescript-eslint/visitor-keys" "5.48.0" +"@typescript-eslint/scope-manager@5.48.2": + version "5.48.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.48.2.tgz#bb7676cb78f1e94921eaab637a4b5d596f838abc" + integrity sha512-zEUFfonQid5KRDKoI3O+uP1GnrFd4tIHlvs+sTJXiWuypUWMuDaottkJuR612wQfOkjYbsaskSIURV9xo4f+Fw== + dependencies: + "@typescript-eslint/types" "5.48.2" + "@typescript-eslint/visitor-keys" "5.48.2" + "@typescript-eslint/type-utils@5.48.0": version "5.48.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.48.0.tgz#40496dccfdc2daa14a565f8be80ad1ae3882d6d6" @@ -1349,6 +3739,11 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.48.0.tgz#d725da8dfcff320aab2ac6f65c97b0df30058449" integrity sha512-UTe67B0Ypius0fnEE518NB2N8gGutIlTojeTg4nt0GQvikReVkurqxd2LvYa9q9M5MQ6rtpNyWTBxdscw40Xhw== +"@typescript-eslint/types@5.48.2": + version "5.48.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.48.2.tgz#635706abb1ec164137f92148f06f794438c97b8e" + integrity sha512-hE7dA77xxu7ByBc6KCzikgfRyBCTst6dZQpwaTy25iMYOnbNljDT4hjhrGEJJ0QoMjrfqrx+j1l1B9/LtKeuqA== + "@typescript-eslint/typescript-estree@5.48.0": version "5.48.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.48.0.tgz#a7f04bccb001003405bb5452d43953a382c2fac2" @@ -1362,6 +3757,19 @@ semver "^7.3.7" tsutils "^3.21.0" +"@typescript-eslint/typescript-estree@5.48.2": + version "5.48.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.48.2.tgz#6e206b462942b32383582a6c9251c05021cc21b0" + integrity sha512-bibvD3z6ilnoVxUBFEgkO0k0aFvUc4Cttt0dAreEr+nrAHhWzkO83PEVVuieK3DqcgL6VAK5dkzK8XUVja5Zcg== + dependencies: + "@typescript-eslint/types" "5.48.2" + "@typescript-eslint/visitor-keys" "5.48.2" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + semver "^7.3.7" + tsutils "^3.21.0" + "@typescript-eslint/utils@5.48.0", "@typescript-eslint/utils@^5.10.0": version "5.48.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.48.0.tgz#eee926af2733f7156ad8d15e51791e42ce300273" @@ -1376,6 +3784,20 @@ eslint-utils "^3.0.0" semver "^7.3.7" +"@typescript-eslint/utils@^5.45.0": + version "5.48.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.48.2.tgz#3777a91dcb22b8499a25519e06eef2e9569295a3" + integrity sha512-2h18c0d7jgkw6tdKTlNaM7wyopbLRBiit8oAxoP89YnuBOzCZ8g8aBCaCqq7h208qUTroL7Whgzam7UY3HVLow== + dependencies: + "@types/json-schema" "^7.0.9" + "@types/semver" "^7.3.12" + "@typescript-eslint/scope-manager" "5.48.2" + "@typescript-eslint/types" "5.48.2" + "@typescript-eslint/typescript-estree" "5.48.2" + eslint-scope "^5.1.1" + eslint-utils "^3.0.0" + semver "^7.3.7" + "@typescript-eslint/visitor-keys@5.48.0": version "5.48.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.48.0.tgz#4446d5e7f6cadde7140390c0e284c8702d944904" @@ -1384,6 +3806,290 @@ "@typescript-eslint/types" "5.48.0" eslint-visitor-keys "^3.3.0" +"@typescript-eslint/visitor-keys@5.48.2": + version "5.48.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.48.2.tgz#c247582a0bcce467461d7b696513bf9455000060" + integrity sha512-z9njZLSkwmjFWUelGEwEbdf4NwKvfHxvGC0OcGN1Hp/XNDIcJ7D5DpPNPv6x6/mFvc1tQHsaWmpD/a4gOvvCJQ== + dependencies: + "@typescript-eslint/types" "5.48.2" + eslint-visitor-keys "^3.3.0" + +"@webassemblyjs/ast@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7" + integrity sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw== + dependencies: + "@webassemblyjs/helper-numbers" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + +"@webassemblyjs/ast@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" + integrity sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA== + dependencies: + "@webassemblyjs/helper-module-context" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/wast-parser" "1.9.0" + +"@webassemblyjs/floating-point-hex-parser@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" + integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== + +"@webassemblyjs/floating-point-hex-parser@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" + integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA== + +"@webassemblyjs/helper-api-error@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" + integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== + +"@webassemblyjs/helper-api-error@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" + integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw== + +"@webassemblyjs/helper-buffer@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" + integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== + +"@webassemblyjs/helper-buffer@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" + integrity sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA== + +"@webassemblyjs/helper-code-frame@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz#647f8892cd2043a82ac0c8c5e75c36f1d9159f27" + integrity sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA== + dependencies: + "@webassemblyjs/wast-printer" "1.9.0" + +"@webassemblyjs/helper-fsm@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8" + integrity sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw== + +"@webassemblyjs/helper-module-context@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz#25d8884b76839871a08a6c6f806c3979ef712f07" + integrity sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g== + dependencies: + "@webassemblyjs/ast" "1.9.0" + +"@webassemblyjs/helper-numbers@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" + integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ== + dependencies: + "@webassemblyjs/floating-point-hex-parser" "1.11.1" + "@webassemblyjs/helper-api-error" "1.11.1" + "@xtuc/long" "4.2.2" + +"@webassemblyjs/helper-wasm-bytecode@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" + integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== + +"@webassemblyjs/helper-wasm-bytecode@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" + integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw== + +"@webassemblyjs/helper-wasm-section@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a" + integrity sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + +"@webassemblyjs/helper-wasm-section@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" + integrity sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-buffer" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/wasm-gen" "1.9.0" + +"@webassemblyjs/ieee754@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614" + integrity sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ== + dependencies: + "@xtuc/ieee754" "^1.2.0" + +"@webassemblyjs/ieee754@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" + integrity sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg== + dependencies: + "@xtuc/ieee754" "^1.2.0" + +"@webassemblyjs/leb128@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5" + integrity sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw== + dependencies: + "@xtuc/long" "4.2.2" + +"@webassemblyjs/leb128@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" + integrity sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw== + dependencies: + "@xtuc/long" "4.2.2" + +"@webassemblyjs/utf8@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff" + integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ== + +"@webassemblyjs/utf8@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" + integrity sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w== + +"@webassemblyjs/wasm-edit@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6" + integrity sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/helper-wasm-section" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + "@webassemblyjs/wasm-opt" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + "@webassemblyjs/wast-printer" "1.11.1" + +"@webassemblyjs/wasm-edit@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf" + integrity sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-buffer" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/helper-wasm-section" "1.9.0" + "@webassemblyjs/wasm-gen" "1.9.0" + "@webassemblyjs/wasm-opt" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + "@webassemblyjs/wast-printer" "1.9.0" + +"@webassemblyjs/wasm-gen@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" + integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/ieee754" "1.11.1" + "@webassemblyjs/leb128" "1.11.1" + "@webassemblyjs/utf8" "1.11.1" + +"@webassemblyjs/wasm-gen@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" + integrity sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/ieee754" "1.9.0" + "@webassemblyjs/leb128" "1.9.0" + "@webassemblyjs/utf8" "1.9.0" + +"@webassemblyjs/wasm-opt@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" + integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + +"@webassemblyjs/wasm-opt@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" + integrity sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-buffer" "1.9.0" + "@webassemblyjs/wasm-gen" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + +"@webassemblyjs/wasm-parser@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" + integrity sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-api-error" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/ieee754" "1.11.1" + "@webassemblyjs/leb128" "1.11.1" + "@webassemblyjs/utf8" "1.11.1" + +"@webassemblyjs/wasm-parser@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" + integrity sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-api-error" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/ieee754" "1.9.0" + "@webassemblyjs/leb128" "1.9.0" + "@webassemblyjs/utf8" "1.9.0" + +"@webassemblyjs/wast-parser@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz#3031115d79ac5bd261556cecc3fa90a3ef451914" + integrity sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/floating-point-hex-parser" "1.9.0" + "@webassemblyjs/helper-api-error" "1.9.0" + "@webassemblyjs/helper-code-frame" "1.9.0" + "@webassemblyjs/helper-fsm" "1.9.0" + "@xtuc/long" "4.2.2" + +"@webassemblyjs/wast-printer@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0" + integrity sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@xtuc/long" "4.2.2" + +"@webassemblyjs/wast-printer@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" + integrity sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/wast-parser" "1.9.0" + "@xtuc/long" "4.2.2" + +"@xtuc/ieee754@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" + integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== + +"@xtuc/long@4.2.2": + version "4.2.2" + resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" + integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== + JSONStream@^1.0.4: version "1.3.5" resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" @@ -1397,6 +4103,14 @@ abab@^2.0.6: resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== +accepts@~1.3.5, accepts@~1.3.8: + version "1.3.8" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" + integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== + dependencies: + mime-types "~2.1.34" + negotiator "0.6.3" + acorn-globals@^7.0.0: version "7.0.1" resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-7.0.1.tgz#0dbf05c44fa7c94332914c02066d5beff62c40c3" @@ -1405,17 +4119,37 @@ acorn-globals@^7.0.0: acorn "^8.1.0" acorn-walk "^8.0.2" -acorn-jsx@^5.3.2: +acorn-import-assertions@^1.7.6: + version "1.8.0" + resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" + integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== + +acorn-jsx@^5.3.1, acorn-jsx@^5.3.2: version "5.3.2" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== +acorn-walk@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== + acorn-walk@^8.0.2, acorn-walk@^8.1.1, acorn-walk@^8.2.0: version "8.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== -acorn@^8.1.0, acorn@^8.4.1, acorn@^8.7.0, acorn@^8.8.0, acorn@^8.8.1: +acorn@^6.4.1: + version "6.4.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" + integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== + +acorn@^7.4.1: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +acorn@^8.1.0, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.0, acorn@^8.7.1, acorn@^8.8.0, acorn@^8.8.1: version "8.8.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73" integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== @@ -1425,6 +4159,11 @@ add-stream@^1.0.0: resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" integrity sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ== +address@^1.0.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/address/-/address-1.2.2.tgz#2b5248dac5485a6390532c6a517fda2e3faac89e" + integrity sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA== + agent-base@6, agent-base@^6.0.0, agent-base@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" @@ -1440,7 +4179,40 @@ aggregate-error@^3.0.0: clean-stack "^2.0.0" indent-string "^4.0.0" -ajv@^6.10.0, ajv@^6.12.4: +airbnb-js-shims@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/airbnb-js-shims/-/airbnb-js-shims-2.2.1.tgz#db481102d682b98ed1daa4c5baa697a05ce5c040" + integrity sha512-wJNXPH66U2xjgo1Zwyjf9EydvJ2Si94+vSdk6EERcBfB2VZkeltpqIats0cqIZMLCXP3zcyaUKGYQeIBT6XjsQ== + dependencies: + array-includes "^3.0.3" + array.prototype.flat "^1.2.1" + array.prototype.flatmap "^1.2.1" + es5-shim "^4.5.13" + es6-shim "^0.35.5" + function.prototype.name "^1.1.0" + globalthis "^1.0.0" + object.entries "^1.1.0" + object.fromentries "^2.0.0 || ^1.0.0" + object.getownpropertydescriptors "^2.0.3" + object.values "^1.1.0" + promise.allsettled "^1.0.0" + promise.prototype.finally "^3.1.0" + string.prototype.matchall "^4.0.0 || ^3.0.1" + string.prototype.padend "^3.0.0" + string.prototype.padstart "^3.0.0" + symbol.prototype.description "^1.0.0" + +ajv-errors@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" + integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== + +ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: + version "3.5.2" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" + integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== + +ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -1460,13 +4232,18 @@ ajv@^8.11.0: require-from-string "^2.0.2" uri-js "^4.2.2" -ansi-align@^3.0.1: +ansi-align@^3.0.0, ansi-align@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59" integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w== dependencies: string-width "^4.1.0" +ansi-colors@^3.0.0: + version "3.2.4" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" + integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== + ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" @@ -1481,6 +4258,16 @@ ansi-escapes@^6.0.0: dependencies: type-fest "^3.0.0" +ansi-html-community@0.0.8, ansi-html-community@^0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41" + integrity sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw== + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== + ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" @@ -1515,12 +4302,27 @@ ansi-styles@^6.0.0, ansi-styles@^6.1.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== +ansi-to-html@^0.6.11: + version "0.6.15" + resolved "https://registry.yarnpkg.com/ansi-to-html/-/ansi-to-html-0.6.15.tgz#ac6ad4798a00f6aa045535d7f6a9cb9294eebea7" + integrity sha512-28ijx2aHJGdzbs+O5SNQF65r6rrKYnkuwTYm8lZlChuoJ9P1vVzIpWO20sQTqTPDXYp6NFwk326vApTtLVFXpQ== + dependencies: + entities "^2.0.0" + any-promise@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A== -anymatch@^3.0.3, anymatch@~3.1.2: +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + +anymatch@^3.0.0, anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== @@ -1528,6 +4330,29 @@ anymatch@^3.0.3, anymatch@~3.1.2: normalize-path "^3.0.0" picomatch "^2.0.4" +app-root-dir@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/app-root-dir/-/app-root-dir-1.0.2.tgz#38187ec2dea7577fff033ffcb12172692ff6e118" + integrity sha512-jlpIfsOoNoafl92Sz//64uQHGSyMrD2vYG5d8o2a4qGvyNCvXur7bzIsWtAC/6flI2RYAp3kv8rsfBtaLm7w0g== + +"aproba@^1.0.3 || ^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== + +aproba@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== + +are-we-there-yet@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz#372e0e7bd279d8e94c653aaa1f67200884bf3e1c" + integrity sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw== + dependencies: + delegates "^1.0.0" + readable-stream "^3.6.0" + arg@^4.1.0: version "4.1.3" resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" @@ -1545,6 +4370,13 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== +aria-hidden@^1.1.3: + version "1.2.2" + resolved "https://registry.yarnpkg.com/aria-hidden/-/aria-hidden-1.2.2.tgz#8c4f7cc88d73ca42114106fdf6f47e68d31475b8" + integrity sha512-6y/ogyDTk/7YAe91T3E2PR1ALVKyM2QbTio5HwM+N1Q6CMlCKhvClyIjkckBswa0f2xJhjsfzIGa1yVSe1UMVA== + dependencies: + tslib "^2.0.0" + aria-query@^5.0.0: version "5.1.3" resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.1.3.tgz#19db27cd101152773631396f7a95a3b58c22c35e" @@ -1552,12 +4384,37 @@ aria-query@^5.0.0: dependencies: deep-equal "^2.0.5" +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== + +arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== + +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + integrity sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw== + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== + array-ify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" integrity sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng== -array-includes@^3.1.4, array-includes@^3.1.5, array-includes@^3.1.6: +array-includes@^3.0.3, array-includes@^3.1.4, array-includes@^3.1.5, array-includes@^3.1.6: version "3.1.6" resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.6.tgz#9e9e720e194f198266ba9e18c29e6a9b0e4b225f" integrity sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw== @@ -1568,12 +4425,29 @@ array-includes@^3.1.4, array-includes@^3.1.5, array-includes@^3.1.6: get-intrinsic "^1.1.3" is-string "^1.0.7" +array-union@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" + integrity sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng== + dependencies: + array-uniq "^1.0.1" + array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== -array.prototype.flat@^1.2.5: +array-uniq@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== + +array.prototype.flat@^1.2.1, array.prototype.flat@^1.2.5: version "1.3.1" resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz#ffc6576a7ca3efc2f46a143b9d1dda9b4b3cf5e2" integrity sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA== @@ -1583,7 +4457,7 @@ array.prototype.flat@^1.2.5: es-abstract "^1.20.4" es-shim-unscopables "^1.0.0" -array.prototype.flatmap@^1.3.1: +array.prototype.flatmap@^1.2.1, array.prototype.flatmap@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz#1aae7903c2100433cb8261cd4ed310aab5c4a183" integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ== @@ -1604,6 +4478,17 @@ array.prototype.map@^1.0.5: es-array-method-boxes-properly "^1.0.0" is-string "^1.0.7" +array.prototype.reduce@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz#6b20b0daa9d9734dd6bc7ea66b5bbce395471eac" + integrity sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + es-array-method-boxes-properly "^1.0.0" + is-string "^1.0.7" + array.prototype.tosorted@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz#ccf44738aa2b5ac56578ffda97c03fd3e23dd532" @@ -1620,6 +4505,34 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== +arrify@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" + integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== + +asn1.js@^5.2.0: + version "5.4.1" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" + integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA== + dependencies: + bn.js "^4.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + safer-buffer "^2.1.0" + +assert@^1.1.1: + version "1.5.0" + resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb" + integrity sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA== + dependencies: + object-assign "^4.1.1" + util "0.10.3" + +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== + ast-types@^0.13.2: version "0.13.4" resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.13.4.tgz#ee0d77b343263965ecc3fb62da16e7222b2b6782" @@ -1627,11 +4540,23 @@ ast-types@^0.13.2: dependencies: tslib "^2.0.1" +ast-types@^0.14.2: + version "0.14.2" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.14.2.tgz#600b882df8583e3cd4f2df5fa20fa83759d4bdfd" + integrity sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA== + dependencies: + tslib "^2.0.1" + astral-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== +async-each@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" + integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== + async-retry@1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/async-retry/-/async-retry-1.3.3.tgz#0e7f36c04d8478e7a58bdbed80cedf977785f280" @@ -1644,6 +4569,29 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== +at-least-node@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" + integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== + +atob@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== + +autoprefixer@^9.8.6: + version "9.8.8" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.8.tgz#fd4bd4595385fa6f06599de749a4d5f7a474957a" + integrity sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA== + dependencies: + browserslist "^4.12.0" + caniuse-lite "^1.0.30001109" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + picocolors "^0.2.1" + postcss "^7.0.32" + postcss-value-parser "^4.1.0" + available-typed-arrays@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" @@ -1662,7 +4610,37 @@ babel-jest@^29.3.1: graceful-fs "^4.2.9" slash "^3.0.0" -babel-plugin-istanbul@^6.1.1: +babel-loader@^8.0.0, babel-loader@^8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.3.0.tgz#124936e841ba4fe8176786d6ff28add1f134d6a8" + integrity sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q== + dependencies: + find-cache-dir "^3.3.1" + loader-utils "^2.0.0" + make-dir "^3.1.0" + schema-utils "^2.6.5" + +babel-plugin-add-react-displayname@^0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/babel-plugin-add-react-displayname/-/babel-plugin-add-react-displayname-0.0.5.tgz#339d4cddb7b65fd62d1df9db9fe04de134122bd5" + integrity sha512-LY3+Y0XVDYcShHHorshrDbt4KFWL4bSeniCtl4SYZbask+Syngk1uMPCeN9+nSiZo6zX5s0RTq/J9Pnaaf/KHw== + +babel-plugin-apply-mdx-type-prop@1.6.22: + version "1.6.22" + resolved "https://registry.yarnpkg.com/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz#d216e8fd0de91de3f1478ef3231e05446bc8705b" + integrity sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ== + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + "@mdx-js/util" "1.6.22" + +babel-plugin-extract-import-names@1.6.22: + version "1.6.22" + resolved "https://registry.yarnpkg.com/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz#de5f9a28eb12f3eb2578bf74472204e66d1a13dc" + integrity sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ== + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +babel-plugin-istanbul@^6.0.0, babel-plugin-istanbul@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== @@ -1683,6 +4661,56 @@ babel-plugin-jest-hoist@^29.2.0: "@types/babel__core" "^7.1.14" "@types/babel__traverse" "^7.0.6" +babel-plugin-macros@^3.0.1, babel-plugin-macros@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" + integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg== + dependencies: + "@babel/runtime" "^7.12.5" + cosmiconfig "^7.0.0" + resolve "^1.19.0" + +babel-plugin-polyfill-corejs2@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz#5d1bd3836d0a19e1b84bbf2d9640ccb6f951c122" + integrity sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q== + dependencies: + "@babel/compat-data" "^7.17.7" + "@babel/helper-define-polyfill-provider" "^0.3.3" + semver "^6.1.1" + +babel-plugin-polyfill-corejs3@^0.1.0: + version "0.1.7" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.1.7.tgz#80449d9d6f2274912e05d9e182b54816904befd0" + integrity sha512-u+gbS9bbPhZWEeyy1oR/YaaSpod/KDT07arZHb80aTpl8H5ZBq+uN1nN9/xtX7jQyfLdPfoqI4Rue/MQSWJquw== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.1.5" + core-js-compat "^3.8.1" + +babel-plugin-polyfill-corejs3@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz#56ad88237137eade485a71b52f72dbed57c6230a" + integrity sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.3.3" + core-js-compat "^3.25.1" + +babel-plugin-polyfill-regenerator@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz#390f91c38d90473592ed43351e801a9d3e0fd747" + integrity sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.3.3" + +babel-plugin-react-docgen@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/babel-plugin-react-docgen/-/babel-plugin-react-docgen-4.2.1.tgz#7cc8e2f94e8dc057a06e953162f0810e4e72257b" + integrity sha512-UQ0NmGHj/HAqi5Bew8WvNfCk8wSsmdgNd8ZdMjBCICtyCJCq9LiqgqvjCYe570/Wg7AQArSq1VQ60Dd/CHN7mQ== + dependencies: + ast-types "^0.14.2" + lodash "^4.17.15" + react-docgen "^5.0.0" + babel-preset-current-node-syntax@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" @@ -1709,26 +4737,73 @@ babel-preset-jest@^29.2.0: babel-plugin-jest-hoist "^29.2.0" babel-preset-current-node-syntax "^1.0.0" +bail@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" + integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== + balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -base64-js@^1.3.1: +base64-js@^1.0.2, base64-js@^1.3.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + before-after-hook@^2.2.0: version "2.2.3" resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.3.tgz#c51e809c81a4e354084422b9b26bad88249c517c" integrity sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ== +better-opn@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/better-opn/-/better-opn-2.1.1.tgz#94a55b4695dc79288f31d7d0e5f658320759f7c6" + integrity sha512-kIPXZS5qwyKiX/HcRvDYfmBQUa8XP17I0mYZZ0y4UhpYOSvtsLHDYqmomS+Mj20aDvD3knEiQ0ecQy2nhio3yA== + dependencies: + open "^7.0.3" + +big-integer@^1.6.7: + version "1.6.51" + resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.51.tgz#0df92a5d9880560d3ff2d5fd20245c889d130686" + integrity sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg== + +big.js@^5.2.2: + version "5.2.2" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" + integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== + +binary-extensions@^1.0.0: + version "1.13.1" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" + integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== + binary-extensions@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== +bindings@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== + dependencies: + file-uri-to-path "1.0.0" + bl@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/bl/-/bl-5.1.0.tgz#183715f678c7188ecef9fe475d90209400624273" @@ -1738,6 +4813,58 @@ bl@^5.0.0: inherits "^2.0.4" readable-stream "^3.4.0" +bluebird@^3.5.5: + version "3.7.2" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" + integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== + +bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: + version "4.12.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" + integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== + +bn.js@^5.0.0, bn.js@^5.1.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + +body-parser@1.20.1: + version "1.20.1" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668" + integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw== + dependencies: + bytes "3.1.2" + content-type "~1.0.4" + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + http-errors "2.0.0" + iconv-lite "0.4.24" + on-finished "2.4.1" + qs "6.11.0" + raw-body "2.5.1" + type-is "~1.6.18" + unpipe "1.0.0" + +boolbase@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== + +boxen@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.1.2.tgz#788cb686fc83c1f486dfa8a40c68fc2b831d2b50" + integrity sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ== + dependencies: + ansi-align "^3.0.0" + camelcase "^6.2.0" + chalk "^4.1.0" + cli-boxes "^2.2.1" + string-width "^4.2.2" + type-fest "^0.20.2" + widest-line "^3.1.0" + wrap-ansi "^7.0.0" + boxen@^7.0.0: version "7.0.1" resolved "https://registry.yarnpkg.com/boxen/-/boxen-7.0.1.tgz#cd84db4364a8bae65f1f016ce94a21ec2c832c16" @@ -1752,6 +4879,13 @@ boxen@^7.0.0: widest-line "^4.0.1" wrap-ansi "^8.0.1" +bplist-parser@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/bplist-parser/-/bplist-parser-0.1.1.tgz#d60d5dcc20cba6dc7e1f299b35d3e1f95dafbae6" + integrity sha512-2AEM0FXy8ZxVLBuqX0hqt1gDwcnz2zygEkQ6zaD5Wko/sB9paUNwlpawrFtKeHUAQUOzjVy9AO4oeonqIHKA9Q== + dependencies: + big-integer "^1.6.7" + brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -1760,14 +4894,96 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -braces@^3.0.2, braces@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== +braces@^2.3.1, braces@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + +braces@^3.0.2, braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +brorand@^1.0.1, brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + +browserify-aes@^1.0.0, browserify-aes@^1.0.4: + version "1.2.0" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" + integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== + dependencies: + buffer-xor "^1.0.3" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.3" + inherits "^2.0.1" + safe-buffer "^5.0.1" + +browserify-cipher@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" + integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== + dependencies: + browserify-aes "^1.0.4" + browserify-des "^1.0.0" + evp_bytestokey "^1.0.0" + +browserify-des@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" + integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== + dependencies: + cipher-base "^1.0.1" + des.js "^1.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d" + integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog== + dependencies: + bn.js "^5.0.0" + randombytes "^2.0.1" + +browserify-sign@^4.0.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3" + integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg== + dependencies: + bn.js "^5.1.1" + browserify-rsa "^4.0.1" + create-hash "^1.2.0" + create-hmac "^1.1.7" + elliptic "^6.5.3" + inherits "^2.0.4" + parse-asn1 "^5.1.5" + readable-stream "^3.6.0" + safe-buffer "^5.2.0" + +browserify-zlib@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" + integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== dependencies: - fill-range "^7.0.1" + pako "~1.0.5" -browserslist@^4.21.3: +browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.21.3, browserslist@^4.21.4: version "4.21.4" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.4.tgz#e7496bbc67b9e39dd0f98565feccdcb0d4ff6987" integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw== @@ -1789,6 +5005,20 @@ buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== +buffer-xor@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== + +buffer@^4.3.0: + version "4.9.2" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" + integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + buffer@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" @@ -1797,6 +5027,11 @@ buffer@^6.0.3: base64-js "^1.3.1" ieee754 "^1.2.1" +builtin-status-codes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" + integrity sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ== + bundle-require@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bundle-require/-/bundle-require-3.1.2.tgz#1374a7bdcb8b330a7ccc862ccbf7c137cc43ad27" @@ -1804,16 +5039,99 @@ bundle-require@^3.1.2: dependencies: load-tsconfig "^0.2.0" +bytes@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw== + bytes@3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== +c8@^7.6.0: + version "7.12.0" + resolved "https://registry.yarnpkg.com/c8/-/c8-7.12.0.tgz#402db1c1af4af5249153535d1c84ad70c5c96b14" + integrity sha512-CtgQrHOkyxr5koX1wEUmN/5cfDa2ckbHRA4Gy5LAL0zaCFtVWJS5++n+w4/sr2GWGerBxgTjpKeDclk/Qk6W/A== + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@istanbuljs/schema" "^0.1.3" + find-up "^5.0.0" + foreground-child "^2.0.0" + istanbul-lib-coverage "^3.2.0" + istanbul-lib-report "^3.0.0" + istanbul-reports "^3.1.4" + rimraf "^3.0.2" + test-exclude "^6.0.0" + v8-to-istanbul "^9.0.0" + yargs "^16.2.0" + yargs-parser "^20.2.9" + cac@^6.7.12: version "6.7.14" resolved "https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959" integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== +cacache@^12.0.2: + version "12.0.4" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" + integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ== + dependencies: + bluebird "^3.5.5" + chownr "^1.1.1" + figgy-pudding "^3.5.1" + glob "^7.1.4" + graceful-fs "^4.1.15" + infer-owner "^1.0.3" + lru-cache "^5.1.1" + mississippi "^3.0.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.3" + ssri "^6.0.1" + unique-filename "^1.1.1" + y18n "^4.0.0" + +cacache@^15.0.5: + version "15.3.0" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" + integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== + dependencies: + "@npmcli/fs" "^1.0.0" + "@npmcli/move-file" "^1.0.1" + chownr "^2.0.0" + fs-minipass "^2.0.0" + glob "^7.1.4" + infer-owner "^1.0.4" + lru-cache "^6.0.0" + minipass "^3.1.1" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.2" + mkdirp "^1.0.3" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^8.0.1" + tar "^6.0.2" + unique-filename "^1.1.1" + +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + cacheable-lookup@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz#3476a8215d046e5a3202a9209dd13fec1f933a27" @@ -1840,11 +5158,37 @@ call-bind@^1.0.0, call-bind@^1.0.2: function-bind "^1.1.1" get-intrinsic "^1.0.2" +call-me-maybe@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa" + integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ== + callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== +camel-case@^4.1.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" + integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== + dependencies: + pascal-case "^3.1.2" + tslib "^2.0.3" + +camelcase-css@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" + integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== + +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + integrity sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ== + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + camelcase-keys@^6.2.2: version "6.2.2" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" @@ -1854,6 +5198,11 @@ camelcase-keys@^6.2.2: map-obj "^4.0.0" quick-lru "^4.0.1" +camelcase@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + integrity sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw== + camelcase@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" @@ -1869,17 +5218,39 @@ camelcase@^7.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-7.0.1.tgz#f02e50af9fd7782bc8b88a3558c32fd3a388f048" integrity sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw== +caniuse-lite@^1.0.30001109: + version "1.0.30001447" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001447.tgz#ef1f39ae38d839d7176713735a8e467a0a2523bd" + integrity sha512-bdKU1BQDPeEXe9A39xJnGtY0uRq/z5osrnXUw0TcK+EYno45Y+U7QU9HhHEyzvMDffpYadFXi3idnSNkcwLkTw== + caniuse-lite@^1.0.30001400: version "1.0.30001442" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001442.tgz#40337f1cf3be7c637b061e2f78582dc1daec0614" integrity sha512-239m03Pqy0hwxYPYR5JwOIxRJfLTWtle9FV8zosfV5pHg+/51uD4nxcUlM8+mWWGfwKtt8lJNHnD3cWw9VZ6ow== +capture-exit@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" + integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== + dependencies: + rsvp "^4.8.4" + +case-sensitive-paths-webpack-plugin@^2.3.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz#db64066c6422eed2e08cc14b986ca43796dbc6d4" + integrity sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw== + +ccount@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.1.0.tgz#246687debb6014735131be8abab2d93898f8d043" + integrity sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg== + chalk@5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.1.2.tgz#d957f370038b75ac572471e83be4c5ca9f8e8c45" integrity sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ== -chalk@^2.0.0: +chalk@^2.0.0, chalk@^2.4.1: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -1911,12 +5282,46 @@ char-regex@^2.0.0: resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-2.0.1.tgz#6dafdb25f9d3349914079f010ba8d0e6ff9cd01e" integrity sha512-oSvEeo6ZUD7NepqAat3RqoucZ5SeqLJgOvVIwkafu6IP3V0pO38s/ypdVUmDDK6qIIHNlYHJAKX9E7R7HoKElw== +character-entities-legacy@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" + integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== + +character-entities@^1.0.0: + version "1.2.4" + resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" + integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== + +character-reference-invalid@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" + integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== + chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -chokidar@^3.5.1: +chokidar@^2.1.8: + version "2.1.8" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" + integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== + dependencies: + anymatch "^2.0.0" + async-each "^1.0.1" + braces "^2.3.2" + glob-parent "^3.1.0" + inherits "^2.0.3" + is-binary-path "^1.0.0" + is-glob "^4.0.0" + normalize-path "^3.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.2.1" + upath "^1.1.1" + optionalDependencies: + fsevents "^1.2.7" + +chokidar@^3.4.1, chokidar@^3.4.2, chokidar@^3.5.1: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== @@ -1931,21 +5336,71 @@ chokidar@^3.5.1: optionalDependencies: fsevents "~2.3.2" +chownr@^1.1.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" + integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== + +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + +chrome-trace-event@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" + integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== + +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + ci-info@^3.2.0: version "3.7.1" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.7.1.tgz#708a6cdae38915d597afdf3b145f2f8e1ff55f3f" integrity sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w== +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" + integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + cjs-module-lexer@^1.0.0: version "1.2.2" resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + +clean-css@^4.2.3: + version "4.2.4" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.4.tgz#733bf46eba4e607c6891ea57c24a989356831178" + integrity sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A== + dependencies: + source-map "~0.6.0" + clean-stack@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== +cli-boxes@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" + integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== + cli-boxes@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-3.0.0.tgz#71a10c716feeba005e4504f36329ef0b17cf3145" @@ -1970,6 +5425,15 @@ cli-spinners@^2.6.1: resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.7.0.tgz#f815fd30b5f9eaac02db604c7a231ed7cb2f797a" integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== +cli-table3@^0.6.1: + version "0.6.3" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.3.tgz#61ab765aac156b52f222954ffc607a6f01dbeeb2" + integrity sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg== + dependencies: + string-width "^4.2.0" + optionalDependencies: + "@colors/colors" "1.5.0" + cli-truncate@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" @@ -2009,21 +5473,58 @@ cliui@^8.0.1: strip-ansi "^6.0.1" wrap-ansi "^7.0.0" +clone-deep@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" + integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== + dependencies: + is-plain-object "^2.0.4" + kind-of "^6.0.2" + shallow-clone "^3.0.0" + clone@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== +clsx@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.1.0.tgz#62937c6adfea771247c34b54d320fb99624f5702" + integrity sha512-3avwM37fSK5oP6M5rQ9CNe99lwxhXDOeSWVPAOYF6OazUTgZCMb0yWlJpmdD74REy1gkEaFiub2ULv4fq9GUhA== + +clsx@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.1.1.tgz#98b3134f9abbdf23b2663491ace13c5c03a73188" + integrity sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA== + +clsx@^1.0.4: + version "1.2.1" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12" + integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== + co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== +collapse-white-space@^1.0.2: + version "1.0.6" + resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-1.0.6.tgz#e63629c0016665792060dbbeb79c42239d2c5287" + integrity sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ== + collect-v8-coverage@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -2048,6 +5549,11 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-support@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" + integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== + colorette@^2.0.19: version "2.0.19" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" @@ -2060,16 +5566,41 @@ combined-stream@^1.0.8: dependencies: delayed-stream "~1.0.0" -commander@^4.0.0: +comma-separated-tokens@^1.0.0: + version "1.0.8" + resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz#632b80b6117867a158f1080ad498b2fbe7e3f5ea" + integrity sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw== + +commander@^2.19.0, commander@^2.20.0: + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== + +commander@^4.0.0, commander@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== +commander@^6.2.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" + integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== + commander@^9.4.1: version "9.4.1" resolved "https://registry.yarnpkg.com/commander/-/commander-9.4.1.tgz#d1dd8f2ce6faf93147295c0df13c7c21141cfbdd" integrity sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw== +common-path-prefix@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-3.0.0.tgz#7d007a7e07c58c4b4d5f433131a19141b29f11e0" + integrity sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w== + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== + compare-func@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-2.0.0.tgz#fb65e75edbddfd2e568554e8b5b05fff7a51fcb3" @@ -2078,11 +5609,46 @@ compare-func@^2.0.0: array-ify "^1.0.0" dot-prop "^5.1.0" +component-emitter@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== + +compressible@~2.0.16: + version "2.0.18" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" + integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== + dependencies: + mime-db ">= 1.43.0 < 2" + +compression@^1.7.4: + version "1.7.4" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" + integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== + dependencies: + accepts "~1.3.5" + bytes "3.0.0" + compressible "~2.0.16" + debug "2.6.9" + on-headers "~1.0.2" + safe-buffer "5.1.2" + vary "~1.1.2" + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== +concat-stream@^1.5.0: + version "1.6.2" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + concat-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" @@ -2112,6 +5678,33 @@ configstore@^6.0.0: write-file-atomic "^3.0.3" xdg-basedir "^5.0.1" +console-browserify@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" + integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== + +console-control-strings@^1.0.0, console-control-strings@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== + +constants-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" + integrity sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ== + +content-disposition@0.5.4: + version "0.5.4" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" + integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== + dependencies: + safe-buffer "5.2.1" + +content-type@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== + conventional-changelog-angular@^5.0.11, conventional-changelog-angular@^5.0.12: version "5.0.13" resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" @@ -2279,7 +5872,7 @@ conventional-recommended-bump@^6.1.0: meow "^8.0.0" q "^1.5.1" -convert-source-map@^1.6.0, convert-source-map@^1.7.0: +convert-source-map@^1.4.0, convert-source-map@^1.5.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: version "1.9.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== @@ -2289,6 +5882,57 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== + +cookie@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" + integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== + +copy-anything@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/copy-anything/-/copy-anything-3.0.3.tgz#206767156f08da0e02efd392f71abcdf79643559" + integrity sha512-fpW2W/BqEzqPp29QS+MwwfisHCQZtiduTe/m8idFo0xbti9fIZ2WVhAsCv4ggFVH3AgCkVdpoOCtQC6gBrdhjw== + dependencies: + is-what "^4.1.8" + +copy-concurrently@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" + integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== + dependencies: + aproba "^1.1.1" + fs-write-stream-atomic "^1.0.8" + iferr "^0.1.5" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.0" + +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== + +core-js-compat@^3.25.1, core-js-compat@^3.8.1: + version "3.27.2" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.27.2.tgz#607c50ad6db8fd8326af0b2883ebb987be3786da" + integrity sha512-welaYuF7ZtbYKGrIy7y3eb40d37rG1FvzEOfe7hSLd2iD6duMDqUhRfSvCGyC46HhR6Y8JXXdZ2lnRUMkPBpvg== + dependencies: + browserslist "^4.21.4" + +core-js-pure@^3.23.3: + version "3.27.2" + resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.27.2.tgz#47e9cc96c639eefc910da03c3ece26c5067c7553" + integrity sha512-Cf2jqAbXgWH3VVzjyaaFkY1EBazxugUepGymDoeteyYr9ByX51kD2jdHZlsEF/xnJMyN3Prua7mQuzwMg6Zc9A== + +core-js@^3.0.4, core-js@^3.6.5, core-js@^3.8.2: + version "3.27.2" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.27.2.tgz#85b35453a424abdcacb97474797815f4d62ebbf7" + integrity sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w== + core-util-is@~1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" @@ -2309,12 +5953,101 @@ cosmiconfig@8.0.0, cosmiconfig@^8.0.0: parse-json "^5.0.0" path-type "^4.0.0" +cosmiconfig@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" + integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.1.0" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.7.2" + +cosmiconfig@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" + integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + +cp-file@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/cp-file/-/cp-file-7.0.0.tgz#b9454cfd07fe3b974ab9ea0e5f29655791a9b8cd" + integrity sha512-0Cbj7gyvFVApzpK/uhCtQ/9kE9UnYpxMzaq5nQQC/Dh4iaj5fxp7iEFIullrYwzj8nf0qnsI1Qsx34hAeAebvw== + dependencies: + graceful-fs "^4.1.2" + make-dir "^3.0.0" + nested-error-stacks "^2.0.0" + p-event "^4.1.0" + +cpy@^8.1.2: + version "8.1.2" + resolved "https://registry.yarnpkg.com/cpy/-/cpy-8.1.2.tgz#e339ea54797ad23f8e3919a5cffd37bfc3f25935" + integrity sha512-dmC4mUesv0OYH2kNFEidtf/skUwv4zePmGeepjyyJ0qTo5+8KhA1o99oIAwVVLzQMAeDJml74d6wPPKb6EZUTg== + dependencies: + arrify "^2.0.1" + cp-file "^7.0.0" + globby "^9.2.0" + has-glob "^1.0.0" + junk "^3.1.0" + nested-error-stacks "^2.1.0" + p-all "^2.1.0" + p-filter "^2.1.0" + p-map "^3.0.0" + +create-ecdh@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e" + integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A== + dependencies: + bn.js "^4.1.0" + elliptic "^6.5.3" + +create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" + integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + md5.js "^1.3.4" + ripemd160 "^2.0.1" + sha.js "^2.4.0" + +create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" + integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + create-require@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== -cross-spawn@^7.0.2, cross-spawn@^7.0.3: +cross-spawn@^6.0.0: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -2323,6 +6056,23 @@ cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" +crypto-browserify@^3.11.0: + version "3.12.0" + resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" + integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== + dependencies: + browserify-cipher "^1.0.0" + browserify-sign "^4.0.0" + create-ecdh "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.0" + diffie-hellman "^5.0.0" + inherits "^2.0.1" + pbkdf2 "^3.0.3" + public-encrypt "^4.0.0" + randombytes "^2.0.0" + randomfill "^1.0.3" + crypto-random-string@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-4.0.0.tgz#5a3cc53d7dd86183df5da0312816ceeeb5bb1fc2" @@ -2330,6 +6080,46 @@ crypto-random-string@^4.0.0: dependencies: type-fest "^1.0.1" +css-loader@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.6.0.tgz#2e4b2c7e6e2d27f8c8f28f61bffcd2e6c91ef645" + integrity sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ== + dependencies: + camelcase "^5.3.1" + cssesc "^3.0.0" + icss-utils "^4.1.1" + loader-utils "^1.2.3" + normalize-path "^3.0.0" + postcss "^7.0.32" + postcss-modules-extract-imports "^2.0.0" + postcss-modules-local-by-default "^3.0.2" + postcss-modules-scope "^2.2.0" + postcss-modules-values "^3.0.0" + postcss-value-parser "^4.1.0" + schema-utils "^2.7.0" + semver "^6.3.0" + +css-select@^4.1.3: + version "4.3.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" + integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ== + dependencies: + boolbase "^1.0.0" + css-what "^6.0.1" + domhandler "^4.3.1" + domutils "^2.8.0" + nth-check "^2.0.1" + +css-what@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" + integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== + +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + cssom@^0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.5.0.tgz#d254fa92cd8b6fbd83811b9fbaed34663cc17c36" @@ -2347,11 +6137,28 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" +csstype@3.0.9: + version "3.0.9" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.9.tgz#6410af31b26bd0520933d02cbc64fce9ce3fbf0b" + integrity sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw== + csstype@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + integrity sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng== + dependencies: + array-find-index "^1.0.1" + +cyclist@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" + integrity sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A== + dargs@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" @@ -2381,6 +6188,13 @@ dateformat@^3.0.0: resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== +debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" @@ -2388,14 +6202,7 @@ debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: dependencies: ms "2.1.2" -debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@^3.2.7: +debug@^3.0.0, debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== @@ -2410,7 +6217,7 @@ decamelize-keys@^1.1.0: decamelize "^1.1.0" map-obj "^1.0.0" -decamelize@^1.1.0: +decamelize@^1.1.0, decamelize@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== @@ -2420,6 +6227,11 @@ decimal.js@^10.4.2: resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== +decode-uri-component@^0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" + integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== + decompress-response@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" @@ -2470,6 +6282,15 @@ deepmerge@^4.2.2: resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== +default-browser-id@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/default-browser-id/-/default-browser-id-1.0.4.tgz#e59d09a5d157b828b876c26816e61c3d2a2c203a" + integrity sha512-qPy925qewwul9Hifs+3sx1ZYn14obHxpkX+mPD369w4Rzg+YkJBgi3SOvwUq81nWSjqGUegIgEPwD8u+HUnxlw== + dependencies: + bplist-parser "^0.1.0" + meow "^3.1.0" + untildify "^2.0.0" + defaults@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a" @@ -2487,7 +6308,7 @@ define-lazy-prop@^2.0.0: resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== -define-properties@^1.1.3, define-properties@^1.1.4: +define-properties@^1.1.2, define-properties@^1.1.3, define-properties@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1" integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== @@ -2495,6 +6316,28 @@ define-properties@^1.1.3, define-properties@^1.1.4: has-property-descriptors "^1.0.0" object-keys "^1.1.1" +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + degenerator@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/degenerator/-/degenerator-3.0.2.tgz#6a61fcc42a702d6e50ff6023fe17bff435f68235" @@ -2510,6 +6353,11 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== + depd@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" @@ -2520,11 +6368,46 @@ deprecation@^2.0.0, deprecation@^2.3.1: resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== +des.js@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" + integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA== + dependencies: + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +destroy@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== + +detab@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/detab/-/detab-2.0.4.tgz#b927892069aff405fbb9a186fe97a44a92a94b43" + integrity sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g== + dependencies: + repeat-string "^1.5.4" + detect-newline@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== +detect-package-manager@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/detect-package-manager/-/detect-package-manager-2.0.1.tgz#6b182e3ae5e1826752bfef1de9a7b828cffa50d8" + integrity sha512-j/lJHyoLlWi6G1LDdLgvUtz60Zo5GEj+sVYtTVXnYLDPuzgC3llMxonXym9zIwhhUII8vjdw0LXxavpLqTbl1A== + dependencies: + execa "^5.1.1" + +detect-port@^1.3.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/detect-port/-/detect-port-1.5.1.tgz#451ca9b6eaf20451acb0799b8ab40dff7718727b" + integrity sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ== + dependencies: + address "^1.0.1" + debug "4" + diff-sequences@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.3.1.tgz#104b5b95fe725932421a9c6e5b4bef84c3f2249e" @@ -2535,6 +6418,22 @@ diff@^4.0.1: resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== +diffie-hellman@^5.0.0: + version "5.0.3" + resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" + integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== + dependencies: + bn.js "^4.1.0" + miller-rabin "^4.0.0" + randombytes "^2.0.0" + +dir-glob@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" + integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== + dependencies: + path-type "^3.0.0" + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -2556,10 +6455,41 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" -dom-accessibility-api@^0.5.9: - version "0.5.15" - resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.15.tgz#357e74338704f36fada8b2e01a4bfc11ef436ac9" - integrity sha512-8o+oVqLQZoruQPYy3uAAQtc6YbtSiRq5aPJBhJ82YTJRHvI6ofhYAkC81WmjFTnfUbqg6T3aCglIpU9p/5e7Cw== +dom-accessibility-api@^0.5.9: + version "0.5.15" + resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.15.tgz#357e74338704f36fada8b2e01a4bfc11ef436ac9" + integrity sha512-8o+oVqLQZoruQPYy3uAAQtc6YbtSiRq5aPJBhJ82YTJRHvI6ofhYAkC81WmjFTnfUbqg6T3aCglIpU9p/5e7Cw== + +dom-converter@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" + integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== + dependencies: + utila "~0.4" + +dom-serializer@^1.0.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" + integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.2.0" + entities "^2.0.0" + +dom-walk@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" + integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w== + +domain-browser@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" + integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== + +domelementtype@^2.0.1, domelementtype@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" + integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== domexception@^4.0.0: version "4.0.0" @@ -2568,6 +6498,30 @@ domexception@^4.0.0: dependencies: webidl-conversions "^7.0.0" +domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" + integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== + dependencies: + domelementtype "^2.2.0" + +domutils@^2.5.2, domutils@^2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" + integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== + dependencies: + dom-serializer "^1.0.1" + domelementtype "^2.2.0" + domhandler "^4.2.0" + +dot-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" + integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + dot-prop@^5.1.0: version "5.3.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" @@ -2582,16 +6536,54 @@ dot-prop@^6.0.1: dependencies: is-obj "^2.0.0" +dotenv-expand@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" + integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== + +dotenv@^8.0.0: + version "8.6.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" + integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== + +duplexify@^3.4.2, duplexify@^3.6.0: + version "3.7.1" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" + integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== + dependencies: + end-of-stream "^1.0.0" + inherits "^2.0.1" + readable-stream "^2.0.0" + stream-shift "^1.0.0" + eastasianwidth@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== + electron-to-chromium@^1.4.251: version "1.4.284" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz#61046d1e4cab3a25238f6bf7413795270f125592" integrity sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA== +elliptic@^6.5.3: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + emittery@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" @@ -2607,6 +6599,41 @@ emoji-regex@^9.2.2: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== +emojis-list@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" + integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== + +encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== + +end-of-stream@^1.0.0, end-of-stream@^1.1.0: + version "1.4.4" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + dependencies: + once "^1.4.0" + +endent@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/endent/-/endent-2.1.0.tgz#5aaba698fb569e5e18e69e1ff7a28ff35373cd88" + integrity sha512-r8VyPX7XL8U01Xgnb1CjZ3XV+z90cXIJ9JPE/R9SEC9vpw2P6CfsRPJmp20DppC5N7ZAMCmjYkJIa744Iyg96w== + dependencies: + dedent "^0.7.0" + fast-json-parse "^1.0.3" + objectorarray "^1.0.5" + +enhanced-resolve@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz#2f3cfd84dbe3b487f18f2db2ef1e064a571ca5ec" + integrity sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg== + dependencies: + graceful-fs "^4.1.2" + memory-fs "^0.5.0" + tapable "^1.0.0" + enhanced-resolve@^5.10.0: version "5.12.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz#300e1c90228f5b570c4d35babf263f6da7155634" @@ -2615,18 +6642,37 @@ enhanced-resolve@^5.10.0: graceful-fs "^4.2.4" tapable "^2.2.0" +entities@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== + entities@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174" integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA== -error-ex@^1.3.1: +errno@^0.1.3, errno@~0.1.7: + version "0.1.8" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" + integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== + dependencies: + prr "~1.0.1" + +error-ex@^1.2.0, error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" +error-stack-parser@^2.0.6: + version "2.1.4" + resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.1.4.tgz#229cb01cdbfa84440bfa91876285b94680188286" + integrity sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ== + dependencies: + stackframe "^1.3.4" + es-abstract@^1.19.0, es-abstract@^1.20.4: version "1.21.0" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.21.0.tgz#dd1b69ea5bfc3c27199c9753efd4de015102c252" @@ -2699,6 +6745,11 @@ es-get-iterator@^1.1.2: is-string "^1.0.5" isarray "^2.0.5" +es-module-lexer@^0.9.0: + version "0.9.3" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" + integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== + es-set-tostringtag@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" @@ -2724,6 +6775,16 @@ es-to-primitive@^1.2.1: is-date-object "^1.0.1" is-symbol "^1.0.2" +es5-shim@^4.5.13: + version "4.6.7" + resolved "https://registry.yarnpkg.com/es5-shim/-/es5-shim-4.6.7.tgz#bc67ae0fc3dd520636e0a1601cc73b450ad3e955" + integrity sha512-jg21/dmlrNQI7JyyA2w7n+yifSxBng0ZralnSfVZjoCawgNTCnS+yBCyVM9DL5itm7SUnDGgv7hcq2XCZX4iRQ== + +es6-shim@^0.35.5: + version "0.35.7" + resolved "https://registry.yarnpkg.com/es6-shim/-/es6-shim-0.35.7.tgz#db00f1cbb7d4de70b50dcafa45b157e9ba28f5d2" + integrity sha512-baZkUfTDSx7X69+NA8imbvGrsPfqH0MX7ADdIDjqwsI8lkTgLIiD2QWrUCSGsUQ0YMnSCA/4pNgSyXdnLHWf3A== + esbuild-android-64@0.15.18: version "0.15.18" resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.15.18.tgz#20a7ae1416c8eaade917fb2453c1259302c637a5" @@ -2869,6 +6930,11 @@ escape-goat@^4.0.0: resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-4.0.0.tgz#9424820331b510b0666b98f7873fe11ac4aa8081" integrity sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg== +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== + escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -3010,7 +7076,17 @@ eslint-plugin-react@^7.31.11: semver "^6.3.0" string.prototype.matchall "^4.0.8" -eslint-scope@^5.1.1: +eslint-plugin-storybook@^0.6.10: + version "0.6.10" + resolved "https://registry.yarnpkg.com/eslint-plugin-storybook/-/eslint-plugin-storybook-0.6.10.tgz#a5844b15bb8dd864896b0b023e710218d9d0f274" + integrity sha512-3DKXRey06EhwnTKaG6fgMqGTy4C3z6Ikyv6VVixO5BvaExWQe3yGWIAufrC2Et0OaAMIaMwx9KWjqb/Wq+JxPg== + dependencies: + "@storybook/csf" "^0.0.1" + "@typescript-eslint/utils" "^5.45.0" + requireindex "^1.1.0" + ts-dedent "^2.2.0" + +eslint-scope@5.1.1, eslint-scope@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== @@ -3018,6 +7094,14 @@ eslint-scope@^5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" +eslint-scope@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" + integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== + dependencies: + esrecurse "^4.1.0" + estraverse "^4.1.1" + eslint-scope@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642" @@ -3109,7 +7193,7 @@ esquery@^1.4.0: dependencies: estraverse "^5.1.0" -esrecurse@^4.3.0: +esrecurse@^4.1.0, esrecurse@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== @@ -3126,11 +7210,43 @@ estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== +estree-to-babel@^3.1.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/estree-to-babel/-/estree-to-babel-3.2.1.tgz#82e78315275c3ca74475fdc8ac1a5103c8a75bf5" + integrity sha512-YNF+mZ/Wu2FU/gvmzuWtYc8rloubL7wfXCTgouFrnjGVXPA/EeYYA7pupXWrb3Iv1cTBeSSxxJIbK23l4MRNqg== + dependencies: + "@babel/traverse" "^7.1.6" + "@babel/types" "^7.2.0" + c8 "^7.6.0" + esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== + +events@^3.0.0, events@^3.2.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== + +evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== + dependencies: + md5.js "^1.3.4" + safe-buffer "^5.1.1" + +exec-sh@^0.3.2: + version "0.3.6" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" + integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== + execa@6.1.0, execa@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/execa/-/execa-6.1.0.tgz#cea16dee211ff011246556388effa0818394fb20" @@ -3146,6 +7262,19 @@ execa@6.1.0, execa@^6.1.0: signal-exit "^3.0.7" strip-final-newline "^3.0.0" +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + execa@^5.0.0, execa@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" @@ -3166,6 +7295,19 @@ exit@^0.1.2: resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + expect@^29.0.0, expect@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/expect/-/expect-29.3.1.tgz#92877aad3f7deefc2e3f6430dd195b92295554a6" @@ -3177,6 +7319,63 @@ expect@^29.0.0, expect@^29.3.1: jest-message-util "^29.3.1" jest-util "^29.3.1" +express@^4.17.1: + version "4.18.2" + resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" + integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ== + dependencies: + accepts "~1.3.8" + array-flatten "1.1.1" + body-parser "1.20.1" + content-disposition "0.5.4" + content-type "~1.0.4" + cookie "0.5.0" + cookie-signature "1.0.6" + debug "2.6.9" + depd "2.0.0" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "1.2.0" + fresh "0.5.2" + http-errors "2.0.0" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "2.4.1" + parseurl "~1.3.3" + path-to-regexp "0.1.7" + proxy-addr "~2.0.7" + qs "6.11.0" + range-parser "~1.2.1" + safe-buffer "5.2.1" + send "0.18.0" + serve-static "1.15.0" + setprototypeof "1.2.0" + statuses "2.0.1" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extend@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + external-editor@^3.0.3: version "3.1.0" resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" @@ -3186,6 +7385,20 @@ external-editor@^3.0.3: iconv-lite "^0.4.24" tmp "^0.0.33" +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" @@ -3196,6 +7409,18 @@ fast-diff@^1.1.2: resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== +fast-glob@^2.2.6: + version "2.2.7" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" + integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== + dependencies: + "@mrmlnc/readdir-enhanced" "^2.2.1" + "@nodelib/fs.stat" "^1.1.2" + glob-parent "^3.1.0" + is-glob "^4.0.0" + merge2 "^1.2.3" + micromatch "^3.1.10" + fast-glob@^3.2.11, fast-glob@^3.2.9: version "3.2.12" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" @@ -3207,6 +7432,11 @@ fast-glob@^3.2.11, fast-glob@^3.2.9: merge2 "^1.3.0" micromatch "^4.0.4" +fast-json-parse@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/fast-json-parse/-/fast-json-parse-1.0.3.tgz#43e5c61ee4efa9265633046b770fb682a7577c4d" + integrity sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw== + fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" @@ -3239,6 +7469,16 @@ fetch-blob@^3.1.2, fetch-blob@^3.1.4: node-domexception "^1.0.0" web-streams-polyfill "^3.0.3" +fetch-retry@^5.0.2: + version "5.0.3" + resolved "https://registry.yarnpkg.com/fetch-retry/-/fetch-retry-5.0.3.tgz#edfa3641892995f9afee94f25b168827aa97fe3d" + integrity sha512-uJQyMrX5IJZkhoEUBQ3EjxkeiZkppBd5jS/fMTJmfZxLSiaQjv2zD0kTvuvkSH89uFvgSlB6ueGpjD3HWN7Bxw== + +figgy-pudding@^3.5.1: + version "3.5.2" + resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" + integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== + figures@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/figures/-/figures-5.0.0.tgz#126cd055052dea699f8a54e8c9450e6ecfc44d5f" @@ -3254,11 +7494,42 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" +file-loader@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" + integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + +file-system-cache@^1.0.5: + version "1.1.0" + resolved "https://registry.yarnpkg.com/file-system-cache/-/file-system-cache-1.1.0.tgz#984de17b976b75a77a27e08d6828137c1aa80fa1" + integrity sha512-IzF5MBq+5CR0jXx5RxPe4BICl/oEhBSXKaL9fLhAXrIfIUS77Hr4vzrYyqYMHN6uTt+BOqi3fDCTjjEBCjERKw== + dependencies: + fs-extra "^10.1.0" + ramda "^0.28.0" + +file-uri-to-path@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== + file-uri-to-path@2: version "2.0.0" resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz#7b415aeba227d575851e0a5b0c640d7656403fba" integrity sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg== +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + fill-range@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" @@ -3266,6 +7537,50 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" +finalhandler@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" + integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== + dependencies: + debug "2.6.9" + encodeurl "~1.0.2" + escape-html "~1.0.3" + on-finished "2.4.1" + parseurl "~1.3.3" + statuses "2.0.1" + unpipe "~1.0.0" + +find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" + integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== + dependencies: + commondir "^1.0.1" + make-dir "^2.0.0" + pkg-dir "^3.0.0" + +find-cache-dir@^3.3.1: + version "3.3.2" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b" + integrity sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig== + dependencies: + commondir "^1.0.1" + make-dir "^3.0.2" + pkg-dir "^4.1.0" + +find-root@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" + integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== + +find-up@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" + integrity sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA== + dependencies: + path-exists "^2.0.0" + pinkie-promise "^2.0.0" + find-up@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" @@ -3273,6 +7588,13 @@ find-up@^2.0.0: dependencies: locate-path "^2.0.0" +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -3302,6 +7624,21 @@ flatted@^3.1.0: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== +flush-write-stream@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" + integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== + dependencies: + inherits "^2.0.3" + readable-stream "^2.3.6" + +focus-lock@^0.8.0: + version "0.8.1" + resolved "https://registry.yarnpkg.com/focus-lock/-/focus-lock-0.8.1.tgz#bb36968abf77a2063fa173cb6c47b12ac8599d33" + integrity sha512-/LFZOIo82WDsyyv7h7oc0MJF9ACOvDRdx9rWPZ2pgMfNWu/z8hQDBtOchuB/0BVLmuFOZjV02YwUVzNsWx/EzA== + dependencies: + tslib "^1.9.3" + for-each@^0.3.3: version "0.3.3" resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" @@ -3309,11 +7646,65 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" +for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== + +foreground-child@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-2.0.0.tgz#71b32800c9f15aa8f2f83f4a6bd9bff35d861a53" + integrity sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA== + dependencies: + cross-spawn "^7.0.0" + signal-exit "^3.0.2" + +fork-ts-checker-webpack-plugin@^4.1.6: + version "4.1.6" + resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-4.1.6.tgz#5055c703febcf37fa06405d400c122b905167fc5" + integrity sha512-DUxuQaKoqfNne8iikd14SAkh5uw4+8vNifp6gmA73yYNS6ywLIWSLD/n/mBzHQRpW3J7rbATEakmiA8JvkTyZw== + dependencies: + "@babel/code-frame" "^7.5.5" + chalk "^2.4.1" + micromatch "^3.1.10" + minimatch "^3.0.4" + semver "^5.6.0" + tapable "^1.0.0" + worker-rpc "^0.1.0" + +fork-ts-checker-webpack-plugin@^6.0.4: + version "6.5.2" + resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz#4f67183f2f9eb8ba7df7177ce3cf3e75cdafb340" + integrity sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA== + dependencies: + "@babel/code-frame" "^7.8.3" + "@types/json-schema" "^7.0.5" + chalk "^4.1.0" + chokidar "^3.4.2" + cosmiconfig "^6.0.0" + deepmerge "^4.2.2" + fs-extra "^9.0.0" + glob "^7.1.6" + memfs "^3.1.2" + minimatch "^3.0.4" + schema-utils "2.7.0" + semver "^7.3.2" + tapable "^1.0.0" + form-data-encoder@^2.1.2: version "2.1.4" resolved "https://registry.yarnpkg.com/form-data-encoder/-/form-data-encoder-2.1.4.tgz#261ea35d2a70d48d30ec7a9603130fa5515e9cd5" integrity sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw== +form-data@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + form-data@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" @@ -3330,6 +7721,40 @@ formdata-polyfill@^4.0.10: dependencies: fetch-blob "^3.1.2" +forwarded@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" + integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== + +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== + dependencies: + map-cache "^0.2.2" + +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== + +from2@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + integrity sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g== + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.0" + +fs-extra@^10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-extra@^11.0.0: version "11.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.0.tgz#5784b102104433bb0e090f48bfc4a30742c357ed" @@ -3348,12 +7773,52 @@ fs-extra@^8.1.0: jsonfile "^4.0.0" universalify "^0.1.0" +fs-extra@^9.0.0, fs-extra@^9.0.1: + version "9.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" + integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== + dependencies: + at-least-node "^1.0.0" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + +fs-minipass@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== + dependencies: + minipass "^3.0.0" + +fs-monkey@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.3.tgz#ae3ac92d53bb328efe0e9a1d9541f6ad8d48e2d3" + integrity sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q== + +fs-write-stream-atomic@^1.0.8: + version "1.0.10" + resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" + integrity sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA== + dependencies: + graceful-fs "^4.1.2" + iferr "^0.1.5" + imurmurhash "^0.1.4" + readable-stream "1 || 2" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@^2.3.2, fsevents@~2.3.2: +fsevents@^1.2.7: + version "1.2.13" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" + integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== + dependencies: + bindings "^1.5.0" + nan "^2.12.1" + +fsevents@^2.1.2, fsevents@^2.3.2, fsevents@~2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== @@ -3371,7 +7836,7 @@ function-bind@^1.1.1: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== -function.prototype.name@^1.1.5: +function.prototype.name@^1.1.0, function.prototype.name@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== @@ -3386,7 +7851,22 @@ functions-have-names@^1.2.2: resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== -gensync@^1.0.0-beta.2: +gauge@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-3.0.2.tgz#03bf4441c044383908bcfa0656ad91803259b395" + integrity sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q== + dependencies: + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.2" + console-control-strings "^1.0.0" + has-unicode "^2.0.1" + object-assign "^4.1.1" + signal-exit "^3.0.0" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.2" + +gensync@^1.0.0-beta.1, gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== @@ -3420,6 +7900,18 @@ get-pkg-repo@^4.0.0: through2 "^2.0.0" yargs "^16.2.0" +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + integrity sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw== + +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + get-stream@^6.0.0, get-stream@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" @@ -3450,6 +7942,11 @@ get-uri@3: fs-extra "^8.1.0" ftp "^0.3.10" +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== + git-raw-commits@^2.0.0, git-raw-commits@^2.0.8: version "2.0.11" resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.11.tgz#bc3576638071d18655e1cc60d7f524920008d723" @@ -3499,6 +7996,19 @@ gitconfiglocal@^1.0.0: dependencies: ini "^1.3.2" +github-slugger@^1.0.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.5.0.tgz#17891bbc73232051474d68bd867a34625c955f7d" + integrity sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw== + +glob-parent@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA== + dependencies: + is-glob "^3.1.0" + path-dirname "^1.0.0" + glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" @@ -3513,6 +8023,23 @@ glob-parent@^6.0.2: dependencies: is-glob "^4.0.3" +glob-promise@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/glob-promise/-/glob-promise-3.4.0.tgz#b6b8f084504216f702dc2ce8c9bc9ac8866fdb20" + integrity sha512-q08RJ6O+eJn+dVanerAndJwIcumgbDdYiUT7zFQl3Wm1xD6fBKtah7H8ZJChj4wP+8C+QfeVy8xautR7rdmKEw== + dependencies: + "@types/glob" "*" + +glob-to-regexp@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" + integrity sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig== + +glob-to-regexp@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" + integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== + glob@7.1.6: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" @@ -3525,7 +8052,7 @@ glob@7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.0, glob@^7.1.3, glob@^7.1.4: +glob@^7.0.0, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -3551,6 +8078,14 @@ global-dirs@^3.0.0: dependencies: ini "2.0.0" +global@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406" + integrity sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w== + dependencies: + min-document "^2.19.0" + process "^0.11.10" + globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" @@ -3563,7 +8098,7 @@ globals@^13.19.0: dependencies: type-fest "^0.20.2" -globalthis@^1.0.3: +globalthis@^1.0.0, globalthis@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== @@ -3586,7 +8121,7 @@ globby@13.1.2: merge2 "^1.4.1" slash "^4.0.0" -globby@^11.0.3, globby@^11.1.0: +globby@^11.0.2, globby@^11.0.3, globby@^11.1.0: version "11.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== @@ -3609,6 +8144,20 @@ globby@^13.1.2: merge2 "^1.4.1" slash "^4.0.0" +globby@^9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz#fd029a706c703d29bdd170f4b6db3a3f7a7cb63d" + integrity sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg== + dependencies: + "@types/glob" "^7.1.1" + array-union "^1.0.2" + dir-glob "^2.2.2" + fast-glob "^2.2.6" + glob "^7.1.3" + ignore "^4.0.3" + pify "^4.0.1" + slash "^2.0.0" + globrex@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz#dd5d9ec826232730cd6793a5e33a9302985e6098" @@ -3638,7 +8187,7 @@ got@12.5.3, got@^12.1.0: p-cancelable "^3.0.0" responselike "^3.0.0" -graceful-fs@4.2.10, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: +graceful-fs@4.2.10, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.10" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== @@ -3680,6 +8229,13 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== +has-glob@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-glob/-/has-glob-1.0.0.tgz#9aaa9eedbffb1ba3990a7b0010fb678ee0081207" + integrity sha512-D+8A457fBShSEI3tFCj65PAbT++5sKiFtdCdOam0gnfBgw9D277OERk+HM9qYJXmdVLZ/znez10SqHN0BBQ50g== + dependencies: + is-glob "^3.0.0" + has-property-descriptors@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" @@ -3704,6 +8260,42 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" +has-unicode@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== + +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + has-yarn@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-3.0.0.tgz#c3c21e559730d1d3b57e28af1f30d06fac38147d" @@ -3714,7 +8306,113 @@ has@^1.0.3: resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: - function-bind "^1.1.1" + function-bind "^1.1.1" + +hash-base@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" + integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== + dependencies: + inherits "^2.0.4" + readable-stream "^3.6.0" + safe-buffer "^5.2.0" + +hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hast-to-hyperscript@^9.0.0: + version "9.0.1" + resolved "https://registry.yarnpkg.com/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz#9b67fd188e4c81e8ad66f803855334173920218d" + integrity sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA== + dependencies: + "@types/unist" "^2.0.3" + comma-separated-tokens "^1.0.0" + property-information "^5.3.0" + space-separated-tokens "^1.0.0" + style-to-object "^0.3.0" + unist-util-is "^4.0.0" + web-namespaces "^1.0.0" + +hast-util-from-parse5@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz#554e34abdeea25ac76f5bd950a1f0180e0b3bc2a" + integrity sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA== + dependencies: + "@types/parse5" "^5.0.0" + hastscript "^6.0.0" + property-information "^5.0.0" + vfile "^4.0.0" + vfile-location "^3.2.0" + web-namespaces "^1.0.0" + +hast-util-parse-selector@^2.0.0: + version "2.2.5" + resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz#d57c23f4da16ae3c63b3b6ca4616683313499c3a" + integrity sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ== + +hast-util-raw@6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-6.0.1.tgz#973b15930b7529a7b66984c98148b46526885977" + integrity sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig== + dependencies: + "@types/hast" "^2.0.0" + hast-util-from-parse5 "^6.0.0" + hast-util-to-parse5 "^6.0.0" + html-void-elements "^1.0.0" + parse5 "^6.0.0" + unist-util-position "^3.0.0" + vfile "^4.0.0" + web-namespaces "^1.0.0" + xtend "^4.0.0" + zwitch "^1.0.0" + +hast-util-to-parse5@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz#1ec44650b631d72952066cea9b1445df699f8479" + integrity sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ== + dependencies: + hast-to-hyperscript "^9.0.0" + property-information "^5.0.0" + web-namespaces "^1.0.0" + xtend "^4.0.0" + zwitch "^1.0.0" + +hastscript@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-6.0.0.tgz#e8768d7eac56c3fdeac8a92830d58e811e5bf640" + integrity sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w== + dependencies: + "@types/hast" "^2.0.0" + comma-separated-tokens "^1.0.0" + hast-util-parse-selector "^2.0.0" + property-information "^5.0.0" + space-separated-tokens "^1.0.0" + +he@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hoist-non-react-statics@^3.3.1: + version "3.3.2" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" + integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== + dependencies: + react-is "^16.7.0" hosted-git-info@^2.1.4: version "2.8.9" @@ -3735,11 +8433,64 @@ html-encoding-sniffer@^3.0.0: dependencies: whatwg-encoding "^2.0.0" +html-entities@^2.1.0: + version "2.3.3" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.3.3.tgz#117d7626bece327fc8baace8868fa6f5ef856e46" + integrity sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA== + html-escaper@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== +html-minifier-terser@^5.0.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" + integrity sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg== + dependencies: + camel-case "^4.1.1" + clean-css "^4.2.3" + commander "^4.1.1" + he "^1.2.0" + param-case "^3.0.3" + relateurl "^0.2.7" + terser "^4.6.3" + +html-tags@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.2.0.tgz#dbb3518d20b726524e4dd43de397eb0a95726961" + integrity sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg== + +html-void-elements@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-1.0.5.tgz#ce9159494e86d95e45795b166c2021c2cfca4483" + integrity sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w== + +html-webpack-plugin@^4.0.0: + version "4.5.2" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz#76fc83fa1a0f12dd5f7da0404a54e2699666bc12" + integrity sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A== + dependencies: + "@types/html-minifier-terser" "^5.0.0" + "@types/tapable" "^1.0.5" + "@types/webpack" "^4.41.8" + html-minifier-terser "^5.0.1" + loader-utils "^1.2.3" + lodash "^4.17.20" + pretty-error "^2.1.1" + tapable "^1.1.3" + util.promisify "1.0.0" + +htmlparser2@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" + integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.0.0" + domutils "^2.5.2" + entities "^2.0.0" + http-cache-semantics@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" @@ -3782,6 +8533,11 @@ http2-wrapper@^2.1.10: quick-lru "^5.1.1" resolve-alpn "^1.2.0" +https-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" + integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg== + https-proxy-agent@5, https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" @@ -3819,11 +8575,28 @@ iconv-lite@0.6.3: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -ieee754@^1.2.1: +icss-utils@^4.0.0, icss-utils@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" + integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== + dependencies: + postcss "^7.0.14" + +ieee754@^1.1.4, ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== +iferr@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" + integrity sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA== + +ignore@^4.0.3: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + ignore@^5.2.0: version "5.2.4" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" @@ -3834,7 +8607,7 @@ immutable@^4.2.2: resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.2.2.tgz#2da9ff4384a4330c36d4d1bc88e90f9e0b0ccd16" integrity sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og== -import-fresh@^3.0.0, import-fresh@^3.2.1: +import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: version "3.3.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== @@ -3860,11 +8633,23 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + integrity sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg== + dependencies: + repeating "^2.0.0" + indent-string@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== +infer-owner@^1.0.3, infer-owner@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -3873,11 +8658,21 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== +inherits@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" + integrity sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA== + +inherits@2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== + ini@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5" @@ -3888,6 +8683,11 @@ ini@^1.3.2, ini@^1.3.4, ini@~1.3.0: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== +inline-style-parser@0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" + integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== + inquirer@9.1.4: version "9.1.4" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-9.1.4.tgz#482da8803670a64bd942bc5166a9547a19d41474" @@ -3923,6 +8723,11 @@ interpret@^1.0.0: resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== +interpret@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" + integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== + ip@^1.1.5: version "1.1.8" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.8.tgz#ae05948f6b075435ed3307acce04629da8cdbf48" @@ -3933,6 +8738,43 @@ ip@^2.0.0: resolved "https://registry.yarnpkg.com/ip/-/ip-2.0.0.tgz#4cf4ab182fee2314c75ede1276f8c80b479936da" integrity sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ== +ipaddr.js@1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + +is-absolute-url@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" + integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== + +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== + dependencies: + kind-of "^6.0.0" + +is-alphabetical@1.0.4, is-alphabetical@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" + integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== + +is-alphanumerical@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" + integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== + dependencies: + is-alphabetical "^1.0.0" + is-decimal "^1.0.0" + is-arguments@^1.1.0, is-arguments@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" @@ -3962,6 +8804,13 @@ is-bigint@^1.0.1: dependencies: has-bigints "^1.0.1" +is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + integrity sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q== + dependencies: + binary-extensions "^1.0.0" + is-binary-path@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -3977,6 +8826,16 @@ is-boolean-object@^1.1.0: call-bind "^1.0.2" has-tostringtag "^1.0.0" +is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + +is-buffer@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== + is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" @@ -3989,6 +8848,13 @@ is-ci@3.0.1, is-ci@^3.0.1: dependencies: ci-info "^3.2.0" +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== + dependencies: + ci-info "^2.0.0" + is-core-module@^2.10.0, is-core-module@^2.5.0, is-core-module@^2.8.1, is-core-module@^2.9.0: version "2.11.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" @@ -3996,6 +8862,20 @@ is-core-module@^2.10.0, is-core-module@^2.5.0, is-core-module@^2.8.1, is-core-mo dependencies: has "^1.0.3" +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== + dependencies: + kind-of "^6.0.0" + is-date-object@^1.0.1, is-date-object@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" @@ -4003,16 +8883,64 @@ is-date-object@^1.0.1, is-date-object@^1.0.5: dependencies: has-tostringtag "^1.0.0" +is-decimal@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" + integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + is-docker@^2.0.0, is-docker@^2.1.1: version "2.2.1" resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== -is-extglob@^2.1.1: +is-dom@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-dom/-/is-dom-1.1.0.tgz#af1fced292742443bb59ca3f76ab5e80907b4e8a" + integrity sha512-u82f6mvhYxRPKpw8V1N0W8ce1xXwOrQtgGcxl6UCL5zBmZu3is/18K0rR7uFCnMDuAsS/3W54mGL4vsaFUQlEQ== + dependencies: + is-object "^1.0.1" + is-window "^1.0.2" + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^2.1.0, is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== +is-finite@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3" + integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w== + is-fullwidth-code-point@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" @@ -4023,11 +8951,23 @@ is-fullwidth-code-point@^4.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz#fae3167c729e7463f8461ce512b080a49268aa88" integrity sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ== +is-function@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.2.tgz#4f097f30abf6efadac9833b17ca5dc03f8144e08" + integrity sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ== + is-generator-fn@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== +is-glob@^3.0.0, is-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw== + dependencies: + is-extglob "^2.1.0" + is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" @@ -4035,6 +8975,11 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" +is-hexadecimal@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" + integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== + is-installed-globally@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz#9a0fd407949c30f86eb6959ef1b7994ed0b7b520" @@ -4070,6 +9015,13 @@ is-number-object@^1.0.4: dependencies: has-tostringtag "^1.0.0" +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== + dependencies: + kind-of "^3.0.2" + is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" @@ -4080,6 +9032,11 @@ is-obj@^2.0.0: resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== +is-object@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.2.tgz#a56552e1c665c9e950b4a025461da87e72f86fcf" + integrity sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA== + is-path-inside@^3.0.2, is-path-inside@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" @@ -4090,17 +9047,29 @@ is-plain-obj@^1.1.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== -is-plain-object@^5.0.0: +is-plain-obj@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== + +is-plain-object@5.0.0, is-plain-object@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== +is-plain-object@^2.0.3, is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== + dependencies: + isobject "^3.0.1" + is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== -is-regex@^1.1.4: +is-regex@^1.1.2, is-regex@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== @@ -4127,6 +9096,11 @@ is-ssh@^1.4.0: dependencies: protocols "^2.0.1" +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== + is-stream@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" @@ -4179,6 +9153,11 @@ is-unicode-supported@^1.1.0, is-unicode-supported@^1.2.0: resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz#d824984b616c292a2e198207d4a609983842f714" integrity sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ== +is-utf8@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== + is-weakmap@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2" @@ -4199,7 +9178,37 @@ is-weakset@^2.0.1: call-bind "^1.0.2" get-intrinsic "^1.1.1" -is-wsl@^2.2.0: +is-what@^4.1.8: + version "4.1.8" + resolved "https://registry.yarnpkg.com/is-what/-/is-what-4.1.8.tgz#0e2a8807fda30980ddb2571c79db3d209b14cbe4" + integrity sha512-yq8gMao5upkPoGEU9LsB2P+K3Kt8Q3fQFCGyNCWOAnJAMzEXVV9drYb0TXr42TTliLLhKIBvulgAXgtLLnwzGA== + +is-whitespace-character@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz#0858edd94a95594c7c9dd0b5c174ec6e45ee4aa7" + integrity sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w== + +is-window@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-window/-/is-window-1.0.2.tgz#2c896ca53db97de45d3c33133a65d8c9f563480d" + integrity sha512-uj00kdXyZb9t9RcAUAwMZAnkBUwdYGhYlt7djMXhfyhUCzwNba50tIiBKR7q0l7tdoBtFVw/3JmLY6fI3rmZmg== + +is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== + +is-word-character@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-word-character/-/is-word-character-1.0.4.tgz#ce0e73216f98599060592f62ff31354ddbeb0230" + integrity sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA== + +is-wsl@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" + integrity sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw== + +is-wsl@^2.1.1, is-wsl@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== @@ -4216,21 +9225,46 @@ isarray@0.0.1: resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== +isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + isarray@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== -isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== - isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== + +isobject@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-4.0.0.tgz#3f1c9155e73b192022a80819bacd0343711697b0" + integrity sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA== + +isomorphic-unfetch@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz#87341d5f4f7b63843d468438128cb087b7c3e98f" + integrity sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q== + dependencies: + node-fetch "^2.6.1" + unfetch "^4.2.0" + istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" @@ -4265,7 +9299,7 @@ istanbul-lib-source-maps@^4.0.0: istanbul-lib-coverage "^3.0.0" source-map "^0.6.1" -istanbul-reports@^3.1.3: +istanbul-reports@^3.1.3, istanbul-reports@^3.1.4: version "3.1.5" resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz#cc9a6ab25cb25659810e4785ed9d9fb742578bae" integrity sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w== @@ -4424,6 +9458,27 @@ jest-get-type@^29.2.0: resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.2.0.tgz#726646f927ef61d583a3b3adb1ab13f3a5036408" integrity sha512-uXNJlg8hKFEnDgFsrCjznB+sTxdkuqiCL6zMgA75qEbAJjJYTs9XPrvDctrEig2GDow22T/LvHgO57iJhXB/UA== +jest-haste-map@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" + integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== + dependencies: + "@jest/types" "^26.6.2" + "@types/graceful-fs" "^4.1.2" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.4" + jest-regex-util "^26.0.0" + jest-serializer "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + micromatch "^4.0.2" + sane "^4.0.3" + walker "^1.0.7" + optionalDependencies: + fsevents "^2.1.2" + jest-haste-map@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.3.1.tgz#af83b4347f1dae5ee8c2fb57368dc0bb3e5af843" @@ -4476,6 +9531,14 @@ jest-message-util@^29.3.1: slash "^3.0.0" stack-utils "^2.0.3" +jest-mock@^27.0.6: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" + integrity sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og== + dependencies: + "@jest/types" "^27.5.1" + "@types/node" "*" + jest-mock@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.3.1.tgz#60287d92e5010979d01f218c6b215b688e0f313e" @@ -4490,6 +9553,11 @@ jest-pnp-resolver@^1.2.2: resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== +jest-regex-util@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" + integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== + jest-regex-util@^29.0.0, jest-regex-util@^29.2.0: version "29.2.0" resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.2.0.tgz#82ef3b587e8c303357728d0322d48bbfd2971f7b" @@ -4573,6 +9641,14 @@ jest-runtime@^29.3.1: slash "^3.0.0" strip-bom "^4.0.0" +jest-serializer@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" + integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.4" + jest-snapshot@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.3.1.tgz#17bcef71a453adc059a18a32ccbd594b8cc4e45e" @@ -4603,6 +9679,18 @@ jest-snapshot@^29.3.1: pretty-format "^29.3.1" semver "^7.3.5" +jest-util@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" + integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + graceful-fs "^4.2.4" + is-ci "^2.0.0" + micromatch "^4.0.2" + jest-util@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.3.1.tgz#1dda51e378bbcb7e3bc9d8ab651445591ed373e1" @@ -4654,6 +9742,24 @@ jest-watcher@^29.0.0, jest-watcher@^29.3.1: jest-util "^29.3.1" string-length "^4.0.1" +jest-worker@^26.5.0, jest-worker@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" + integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^7.0.0" + +jest-worker@^27.4.5: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^8.0.0" + jest-worker@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.3.1.tgz#e9462161017a9bb176380d721cab022661da3d6b" @@ -4689,6 +9795,11 @@ js-sdsl@^4.1.4: resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.2.0.tgz#278e98b7bea589b8baaf048c20aeb19eb7ad09d0" integrity sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ== +js-string-escape@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/js-string-escape/-/js-string-escape-1.0.1.tgz#e2625badbc0d67c7533e9edc1068c587ae4137ef" + integrity sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg== + "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -4746,17 +9857,22 @@ jsesc@^2.5.1: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== + json-buffer@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== -json-parse-better-errors@^1.0.1: +json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== -json-parse-even-better-errors@^2.3.0: +json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== @@ -4788,7 +9904,7 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.2.2: +json5@^2.1.2, json5@^2.1.3, json5@^2.2.2: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== @@ -4827,6 +9943,11 @@ jsonparse@^1.2.0: array-includes "^3.1.5" object.assign "^4.1.3" +junk@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/junk/-/junk-3.1.0.tgz#31499098d902b7e98c5d9b9c80f43457a88abfa1" + integrity sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ== + keyv@^4.5.2: version "4.5.2" resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.2.tgz#0e310ce73bf7851ec702f2eaf46ec4e3805cce56" @@ -4834,7 +9955,26 @@ keyv@^4.5.2: dependencies: json-buffer "3.0.1" -kind-of@^6.0.3: +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== + +kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== @@ -4844,6 +9984,11 @@ kleur@^3.0.3: resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== +klona@^2.0.4: + version "2.0.6" + resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22" + integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA== + latest-version@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-7.0.0.tgz#843201591ea81a4d404932eeb61240fe04e9e5da" @@ -4851,6 +9996,17 @@ latest-version@^7.0.0: dependencies: package-json "^8.1.0" +lazy-universal-dotenv@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lazy-universal-dotenv/-/lazy-universal-dotenv-3.0.1.tgz#a6c8938414bca426ab8c9463940da451a911db38" + integrity sha512-prXSYk799h3GY3iOWnC6ZigYzMPjxN2svgjJ9shk7oMadSNX3wXy0B6F32PMJv7qtMnrIbUxoEHzbutvxR2LBQ== + dependencies: + "@babel/runtime" "^7.5.0" + app-root-dir "^1.0.2" + core-js "^3.0.4" + dotenv "^8.0.0" + dotenv-expand "^5.1.0" + leven@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" @@ -4915,6 +10071,17 @@ listr2@^5.0.5: through "^2.3.8" wrap-ansi "^7.0.0" +load-json-file@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" + integrity sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A== + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + pinkie-promise "^2.0.0" + strip-bom "^2.0.0" + load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -4930,6 +10097,34 @@ load-tsconfig@^0.2.0: resolved "https://registry.yarnpkg.com/load-tsconfig/-/load-tsconfig-0.2.3.tgz#08af3e7744943caab0c75f8af7f1703639c3ef1f" integrity sha512-iyT2MXws+dc2Wi6o3grCFtGXpeMvHmJqS27sMPGtV2eUu4PeFnG+33I8BlFK1t1NWMjOpcx9bridn5yxLDX2gQ== +loader-runner@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" + integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== + +loader-runner@^4.2.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" + integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== + +loader-utils@^1.2.3: + version "1.4.2" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.2.tgz#29a957f3a63973883eb684f10ffd3d151fec01a3" + integrity sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^1.0.1" + +loader-utils@^2.0.0, loader-utils@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c" + integrity sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^2.1.2" + locate-path@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" @@ -4938,6 +10133,14 @@ locate-path@^2.0.0: p-locate "^2.0.0" path-exists "^3.0.0" +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + locate-path@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" @@ -4957,6 +10160,11 @@ lodash.camelcase@^4.3.0: resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA== +lodash.debounce@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== + lodash.isfunction@^3.0.9: version "3.0.9" resolved "https://registry.yarnpkg.com/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz#06de25df4db327ac931981d1bdb067e5af68d051" @@ -5002,7 +10210,7 @@ lodash.startcase@^4.4.0: resolved "https://registry.yarnpkg.com/lodash.startcase/-/lodash.startcase-4.4.0.tgz#9436e34ed26093ed7ffae1936144350915d9add8" integrity sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg== -lodash.uniq@^4.5.0: +lodash.uniq@4.5.0, lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== @@ -5012,7 +10220,7 @@ lodash.upperfirst@^4.3.1: resolved "https://registry.yarnpkg.com/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz#1365edf431480481ef0d1c68957a5ed99d49f7ce" integrity sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg== -lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.21: +lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -5042,6 +10250,21 @@ loose-envify@^1.1.0, loose-envify@^1.4.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" +loud-rejection@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + integrity sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ== + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + +lower-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" + integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== + dependencies: + tslib "^2.0.3" + lowercase-keys@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-3.0.0.tgz#c5e7d442e37ead247ae9db117a9d0a467c89d4f2" @@ -5078,34 +10301,162 @@ magic-string@^0.25.7: dependencies: sourcemap-codec "^1.4.8" -make-dir@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" - integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== +make-dir@^2.0.0, make-dir@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== + dependencies: + pify "^4.0.1" + semver "^5.6.0" + +make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + dependencies: + semver "^6.0.0" + +make-error@^1.1.1: + version "1.3.6" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== + dependencies: + tmpl "1.0.5" + +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== + +map-obj@^1.0.0, map-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg== + +map-obj@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" + integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== + +map-or-similar@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/map-or-similar/-/map-or-similar-1.5.0.tgz#6de2653174adfb5d9edc33c69d3e92a1b76faf08" + integrity sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg== + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== + dependencies: + object-visit "^1.0.0" + +markdown-escapes@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/markdown-escapes/-/markdown-escapes-1.0.4.tgz#c95415ef451499d7602b91095f3c8e8975f78535" + integrity sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg== + +md5.js@^1.3.4: + version "1.3.5" + resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" + integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +mdast-squeeze-paragraphs@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz#7c4c114679c3bee27ef10b58e2e015be79f1ef97" + integrity sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ== + dependencies: + unist-util-remove "^2.0.0" + +mdast-util-definitions@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz#c5c1a84db799173b4dcf7643cda999e440c24db2" + integrity sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ== + dependencies: + unist-util-visit "^2.0.0" + +mdast-util-to-hast@10.0.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz#0cfc82089494c52d46eb0e3edb7a4eb2aea021eb" + integrity sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA== + dependencies: + "@types/mdast" "^3.0.0" + "@types/unist" "^2.0.0" + mdast-util-definitions "^4.0.0" + mdurl "^1.0.0" + unist-builder "^2.0.0" + unist-util-generated "^1.0.0" + unist-util-position "^3.0.0" + unist-util-visit "^2.0.0" + +mdast-util-to-string@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-1.1.0.tgz#27055500103f51637bd07d01da01eb1967a43527" + integrity sha512-jVU0Nr2B9X3MU4tSK7JP1CMkSvOj7X5l/GboG1tKRw52lLF1x2Ju92Ms9tNetCcbfX3hzlM73zYo2NKkWSfF/A== + +mdurl@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" + integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== + +memfs@^3.1.2: + version "3.4.13" + resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.4.13.tgz#248a8bd239b3c240175cd5ec548de5227fc4f345" + integrity sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg== dependencies: - semver "^6.0.0" - -make-error@^1.1.1: - version "1.3.6" - resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" - integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + fs-monkey "^1.0.3" -makeerror@1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" - integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== +memoizerific@^1.11.3: + version "1.11.3" + resolved "https://registry.yarnpkg.com/memoizerific/-/memoizerific-1.11.3.tgz#7c87a4646444c32d75438570905f2dbd1b1a805a" + integrity sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog== dependencies: - tmpl "1.0.5" + map-or-similar "^1.5.0" -map-obj@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg== +memory-fs@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" + integrity sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ== + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" -map-obj@^4.0.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" - integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== +memory-fs@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" + integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" + +meow@^3.1.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + integrity sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA== + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" meow@^8.0.0: version "8.1.2" @@ -5124,17 +10475,51 @@ meow@^8.0.0: type-fest "^0.18.0" yargs-parser "^20.2.3" +merge-descriptors@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== + merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== -merge2@^1.3.0, merge2@^1.4.1: +merge2@^1.2.3, merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -micromatch@^4.0.4, micromatch@^4.0.5: +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== + +microevent.ts@~0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/microevent.ts/-/microevent.ts-0.1.1.tgz#70b09b83f43df5172d0205a63025bce0f7357fa0" + integrity sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g== + +micromatch@^3.1.10, micromatch@^3.1.4: + version "3.1.10" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.2" + +micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5: version "4.0.5" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== @@ -5142,18 +10527,36 @@ micromatch@^4.0.4, micromatch@^4.0.5: braces "^3.0.2" picomatch "^2.3.1" -mime-db@1.52.0: +miller-rabin@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" + integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== + dependencies: + bn.js "^4.0.0" + brorand "^1.0.1" + +mime-db@1.52.0, "mime-db@>= 1.43.0 < 2": version "1.52.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -mime-types@2.1.35, mime-types@^2.1.12: +mime-types@2.1.35, mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" +mime@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + +mime@^2.4.4: + version "2.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" + integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== + mimic-fn@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" @@ -5174,12 +10577,29 @@ mimic-response@^4.0.0: resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-4.0.0.tgz#35468b19e7c75d10f5165ea25e75a5ceea7cf70f" integrity sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg== +min-document@^2.19.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" + integrity sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ== + dependencies: + dom-walk "^0.1.0" + min-indent@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== @@ -5195,27 +10615,123 @@ minimist-options@4.1.0: is-plain-obj "^1.1.0" kind-of "^6.0.3" -minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: +minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: version "1.2.7" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== + dependencies: + minipass "^3.0.0" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-pipeline@^1.2.2: + version "1.2.4" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== + dependencies: + minipass "^3.0.0" + +minipass@^3.0.0, minipass@^3.1.1: + version "3.3.6" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" + integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== + dependencies: + yallist "^4.0.0" + +minipass@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-4.0.0.tgz#7cebb0f9fa7d56f0c5b17853cbe28838a8dbbd3b" + integrity sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw== + dependencies: + yallist "^4.0.0" + +minizlib@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + +mississippi@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" + integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== + dependencies: + concat-stream "^1.5.0" + duplexify "^3.4.2" + end-of-stream "^1.1.0" + flush-write-stream "^1.0.0" + from2 "^2.1.0" + parallel-transform "^1.1.0" + pump "^3.0.0" + pumpify "^1.3.3" + stream-each "^1.1.0" + through2 "^2.0.0" + +mixin-deep@^1.2.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + +mkdirp@^0.5.1, mkdirp@^0.5.3: + version "0.5.6" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== + dependencies: + minimist "^1.2.6" + +mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + modify-values@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== +move-concurrently@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" + integrity sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ== + dependencies: + aproba "^1.1.1" + copy-concurrently "^1.0.0" + fs-write-stream-atomic "^1.0.8" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.3" + ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== +ms@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== + ms@2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@^2.1.1: +ms@2.1.3, ms@^2.1.1: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -5234,6 +10750,33 @@ mz@^2.7.0: object-assign "^4.0.1" thenify-all "^1.0.0" +nan@^2.12.1: + version "2.17.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.17.0.tgz#c0150a2368a182f033e9aa5195ec76ea41a199cb" + integrity sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ== + +nanoid@^3.3.1: + version "3.3.4" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" + integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== + +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + natural-compare-lite@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" @@ -5244,11 +10787,21 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -neo-async@^2.6.0: +negotiator@0.6.3: + version "0.6.3" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== + +neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.1, neo-async@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== +nested-error-stacks@^2.0.0, nested-error-stacks@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.1.1.tgz#26c8a3cee6cc05fbcf1e333cd2fc3e003326c0b5" + integrity sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw== + netmask@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/netmask/-/netmask-2.0.2.tgz#8b01a07644065d536383835823bc52004ebac5e7" @@ -5261,6 +10814,26 @@ new-github-release-url@2.0.0: dependencies: type-fest "^2.5.1" +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + +no-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" + integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== + dependencies: + lower-case "^2.0.2" + tslib "^2.0.3" + +node-dir@^0.1.10: + version "0.1.17" + resolved "https://registry.yarnpkg.com/node-dir/-/node-dir-0.1.17.tgz#5f5665d93351335caabef8f1c554516cf5f1e4e5" + integrity sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg== + dependencies: + minimatch "^3.0.2" + node-domexception@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" @@ -5275,7 +10848,7 @@ node-fetch@3.3.0: fetch-blob "^3.1.4" formdata-polyfill "^4.0.10" -node-fetch@^2.6.7: +node-fetch@^2.6.1, node-fetch@^2.6.7: version "2.6.8" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.8.tgz#a68d30b162bc1d8fd71a367e81b997e1f4d4937e" integrity sha512-RZ6dBYuj8dRSfxpUSu+NsdF1dpPpluJxwOp+6IoDp/sH2QNDSvurYsAa+F1WxY2RjA1iP93xhcsUoYbF2XBqVg== @@ -5287,12 +10860,41 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== +node-libs-browser@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" + integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q== + dependencies: + assert "^1.1.1" + browserify-zlib "^0.2.0" + buffer "^4.3.0" + console-browserify "^1.1.0" + constants-browserify "^1.0.0" + crypto-browserify "^3.11.0" + domain-browser "^1.1.1" + events "^3.0.0" + https-browserify "^1.0.0" + os-browserify "^0.3.0" + path-browserify "0.0.1" + process "^0.11.10" + punycode "^1.2.4" + querystring-es3 "^0.2.0" + readable-stream "^2.3.3" + stream-browserify "^2.0.1" + stream-http "^2.7.2" + string_decoder "^1.0.0" + timers-browserify "^2.0.4" + tty-browserify "0.0.0" + url "^0.11.0" + util "^0.11.0" + vm-browserify "^1.0.1" + node-releases@^2.0.6: version "2.0.8" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.8.tgz#0f349cdc8fcfa39a92ac0be9bc48b7706292b9ae" integrity sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A== -normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -5312,16 +10914,35 @@ normalize-package-data@^3.0.0: semver "^7.3.4" validate-npm-package-license "^3.0.1" +normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== + dependencies: + remove-trailing-separator "^1.0.1" + normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== + normalize-url@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-8.0.0.tgz#593dbd284f743e8dcf6a5ddf8fadff149c82701a" integrity sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw== +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== + dependencies: + path-key "^2.0.0" + npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" @@ -5336,6 +10957,28 @@ npm-run-path@^5.1.0: dependencies: path-key "^4.0.0" +npmlog@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-5.0.1.tgz#f06678e80e29419ad67ab964e0fa69959c1eb8b0" + integrity sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw== + dependencies: + are-we-there-yet "^2.0.0" + console-control-strings "^1.1.0" + gauge "^3.0.0" + set-blocking "^2.0.0" + +nth-check@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" + integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== + dependencies: + boolbase "^1.0.0" + +num2fraction@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" + integrity sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg== + nwsapi@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.2.tgz#e5418863e7905df67d51ec95938d67bf801f0bb0" @@ -5346,6 +10989,15 @@ object-assign@^4.0.1, object-assign@^4.1.1: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + object-inspect@^1.12.2, object-inspect@^1.9.0: version "1.12.2" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" @@ -5364,6 +11016,13 @@ object-keys@^1.1.1: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== + dependencies: + isobject "^3.0.0" + object.assign@^4.1.3, object.assign@^4.1.4: version "4.1.4" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" @@ -5374,7 +11033,7 @@ object.assign@^4.1.3, object.assign@^4.1.4: has-symbols "^1.0.3" object-keys "^1.1.1" -object.entries@^1.1.6: +object.entries@^1.1.0, object.entries@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.6.tgz#9737d0e5b8291edd340a3e3264bb8a3b00d5fa23" integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w== @@ -5383,7 +11042,7 @@ object.entries@^1.1.6: define-properties "^1.1.4" es-abstract "^1.20.4" -object.fromentries@^2.0.6: +"object.fromentries@^2.0.0 || ^1.0.0", object.fromentries@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.6.tgz#cdb04da08c539cffa912dcd368b886e0904bfa73" integrity sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg== @@ -5392,6 +11051,16 @@ object.fromentries@^2.0.6: define-properties "^1.1.4" es-abstract "^1.20.4" +object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.2: + version "2.1.5" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz#db5a9002489b64eef903df81d6623c07e5b4b4d3" + integrity sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw== + dependencies: + array.prototype.reduce "^1.0.5" + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + object.hasown@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.2.tgz#f919e21fad4eb38a57bc6345b3afd496515c3f92" @@ -5400,7 +11069,14 @@ object.hasown@^1.1.2: define-properties "^1.1.4" es-abstract "^1.20.4" -object.values@^1.1.5, object.values@^1.1.6: +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== + dependencies: + isobject "^3.0.1" + +object.values@^1.1.0, object.values@^1.1.5, object.values@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.6.tgz#4abbaa71eba47d63589d402856f908243eea9b1d" integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw== @@ -5409,7 +11085,24 @@ object.values@^1.1.5, object.values@^1.1.6: define-properties "^1.1.4" es-abstract "^1.20.4" -once@^1.3.0, once@^1.4.0: +objectorarray@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/objectorarray/-/objectorarray-1.0.5.tgz#2c05248bbefabd8f43ad13b41085951aac5e68a5" + integrity sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg== + +on-finished@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== + dependencies: + ee-first "1.1.1" + +on-headers@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" + integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== + +once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== @@ -5439,6 +11132,14 @@ open@8.4.0, open@^8.4.0: is-docker "^2.1.1" is-wsl "^2.2.0" +open@^7.0.3: + version "7.4.2" + resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" + integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q== + dependencies: + is-docker "^2.0.0" + is-wsl "^2.1.1" + optionator@^0.8.1: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" @@ -5478,6 +11179,16 @@ ora@6.1.2, ora@^6.1.2: strip-ansi "^7.0.1" wcwidth "^1.0.1" +os-browserify@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" + integrity sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A== + +os-homedir@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ== + os-name@5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/os-name/-/os-name-5.0.1.tgz#acb4f996ec5bd86c41755fef9d6d31905c47172e" @@ -5491,11 +11202,37 @@ os-tmpdir@~1.0.2: resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== +p-all@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-all/-/p-all-2.1.0.tgz#91419be56b7dee8fe4c5db875d55e0da084244a0" + integrity sha512-HbZxz5FONzz/z2gJfk6bFca0BCiSRF8jU3yCsWOen/vR6lZjfPOu/e7L3uFzTW1i0H8TlC3vqQstEJPQL4/uLA== + dependencies: + p-map "^2.0.0" + p-cancelable@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-3.0.0.tgz#63826694b54d61ca1c20ebcb6d3ecf5e14cd8050" integrity sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw== +p-event@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/p-event/-/p-event-4.2.0.tgz#af4b049c8acd91ae81083ebd1e6f5cae2044c1b5" + integrity sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ== + dependencies: + p-timeout "^3.1.0" + +p-filter@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-filter/-/p-filter-2.1.0.tgz#1b1472562ae7a0f742f0f3d3d3718ea66ff9c09c" + integrity sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw== + dependencies: + p-map "^2.0.0" + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== + p-limit@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" @@ -5503,7 +11240,7 @@ p-limit@^1.1.0: dependencies: p-try "^1.0.0" -p-limit@^2.2.0: +p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -5524,6 +11261,13 @@ p-locate@^2.0.0: dependencies: p-limit "^1.1.0" +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -5538,6 +11282,18 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" +p-map@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" + integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== + +p-map@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d" + integrity sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ== + dependencies: + aggregate-error "^3.0.0" + p-map@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" @@ -5545,6 +11301,13 @@ p-map@^4.0.0: dependencies: aggregate-error "^3.0.0" +p-timeout@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" + integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== + dependencies: + p-finally "^1.0.0" + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -5589,6 +11352,28 @@ package-json@^8.1.0: registry-url "^6.0.0" semver "^7.3.7" +pako@~1.0.5: + version "1.0.11" + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" + integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== + +parallel-transform@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" + integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg== + dependencies: + cyclist "^1.0.1" + inherits "^2.0.3" + readable-stream "^2.1.5" + +param-case@^3.0.3: + version "3.0.4" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" + integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -5596,6 +11381,36 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" +parse-asn1@^5.0.0, parse-asn1@^5.1.5: + version "5.1.6" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4" + integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== + dependencies: + asn1.js "^5.2.0" + browserify-aes "^1.0.0" + evp_bytestokey "^1.0.0" + pbkdf2 "^3.0.3" + safe-buffer "^5.1.1" + +parse-entities@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz#53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8" + integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== + dependencies: + character-entities "^1.0.0" + character-entities-legacy "^1.0.0" + character-reference-invalid "^1.0.0" + is-alphanumerical "^1.0.0" + is-decimal "^1.0.0" + is-hexadecimal "^1.0.0" + +parse-json@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" + integrity sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ== + dependencies: + error-ex "^1.2.0" + parse-json@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" @@ -5628,6 +11443,11 @@ parse-url@^8.1.0: dependencies: parse-path "^7.0.0" +parse5@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== + parse5@^7.0.0, parse5@^7.1.1: version "7.1.2" resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" @@ -5635,6 +11455,41 @@ parse5@^7.0.0, parse5@^7.1.1: dependencies: entities "^4.4.0" +parseurl@~1.3.2, parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +pascal-case@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" + integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== + +path-browserify@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" + integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ== + +path-dirname@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q== + +path-exists@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" + integrity sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ== + dependencies: + pinkie-promise "^2.0.0" + path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -5650,6 +11505,11 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== + path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" @@ -5665,6 +11525,20 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-to-regexp@0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== + +path-type@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" + integrity sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg== + dependencies: + graceful-fs "^4.1.2" + pify "^2.0.0" + pinkie-promise "^2.0.0" + path-type@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -5677,12 +11551,28 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== +pbkdf2@^3.0.3: + version "3.1.2" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" + integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA== + dependencies: + create-hash "^1.1.2" + create-hmac "^1.1.4" + ripemd160 "^2.0.1" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +picocolors@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-0.2.1.tgz#570670f793646851d1ba135996962abad587859f" + integrity sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA== + picocolors@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.0, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== @@ -5692,7 +11582,7 @@ pidtree@^0.6.0: resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c" integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g== -pify@^2.3.0: +pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== @@ -5702,18 +11592,75 @@ pify@^3.0.0: resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" integrity sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg== -pirates@^4.0.1, pirates@^4.0.4: +pify@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== + +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + integrity sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw== + dependencies: + pinkie "^2.0.0" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg== + +pirates@^4.0.1, pirates@^4.0.4, pirates@^4.0.5: version "4.0.5" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== -pkg-dir@^4.2.0: +pkg-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" + integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== + dependencies: + find-up "^3.0.0" + +pkg-dir@^4.1.0, pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== dependencies: find-up "^4.0.0" +pkg-dir@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-5.0.0.tgz#a02d6aebe6ba133a928f74aec20bafdfe6b8e760" + integrity sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA== + dependencies: + find-up "^5.0.0" + +pnp-webpack-plugin@1.6.4: + version "1.6.4" + resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz#c9711ac4dc48a685dabafc86f8b6dd9f8df84149" + integrity sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg== + dependencies: + ts-pnp "^1.1.6" + +polished@^4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/polished/-/polished-4.2.2.tgz#2529bb7c3198945373c52e34618c8fe7b1aa84d1" + integrity sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ== + dependencies: + "@babel/runtime" "^7.17.8" + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== + +postcss-flexbugs-fixes@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz#9218a65249f30897deab1033aced8578562a6690" + integrity sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ== + dependencies: + postcss "^7.0.26" + postcss-load-config@^3.0.1: version "3.1.4" resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-3.1.4.tgz#1ab2571faf84bb078877e1d07905eabe9ebda855" @@ -5722,6 +11669,71 @@ postcss-load-config@^3.0.1: lilconfig "^2.0.5" yaml "^1.10.2" +postcss-loader@^4.2.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-4.3.0.tgz#2c4de9657cd4f07af5ab42bd60a673004da1b8cc" + integrity sha512-M/dSoIiNDOo8Rk0mUqoj4kpGq91gcxCfb9PoyZVdZ76/AuhxylHDYZblNE8o+EQ9AMSASeMFEKxZf5aU6wlx1Q== + dependencies: + cosmiconfig "^7.0.0" + klona "^2.0.4" + loader-utils "^2.0.0" + schema-utils "^3.0.0" + semver "^7.3.4" + +postcss-modules-extract-imports@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" + integrity sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ== + dependencies: + postcss "^7.0.5" + +postcss-modules-local-by-default@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz#bb14e0cc78279d504dbdcbfd7e0ca28993ffbbb0" + integrity sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw== + dependencies: + icss-utils "^4.1.1" + postcss "^7.0.32" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.1.0" + +postcss-modules-scope@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee" + integrity sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ== + dependencies: + postcss "^7.0.6" + postcss-selector-parser "^6.0.0" + +postcss-modules-values@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" + integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== + dependencies: + icss-utils "^4.0.0" + postcss "^7.0.6" + +postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: + version "6.0.11" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz#2e41dc39b7ad74046e1615185185cd0b17d0c8dc" + integrity sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + +postcss-value-parser@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== + +postcss@^7.0.14, postcss@^7.0.26, postcss@^7.0.32, postcss@^7.0.36, postcss@^7.0.5, postcss@^7.0.6: + version "7.0.39" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.39.tgz#9624375d965630e2e1f2c02a935c82a59cb48309" + integrity sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA== + dependencies: + picocolors "^0.2.1" + source-map "^0.6.1" + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -5739,11 +11751,24 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" +"prettier@>=2.2.1 <=2.3.0": + version "2.3.0" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.0.tgz#b6a5bf1284026ae640f17f7ff5658a7567fc0d18" + integrity sha512-kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w== + prettier@^2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.1.tgz#4e1fd11c34e2421bc1da9aea9bd8127cd0a35efc" integrity sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg== +pretty-error@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.2.tgz#be89f82d81b1c86ec8fdfbc385045882727f93b6" + integrity sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw== + dependencies: + lodash "^4.17.20" + renderkid "^2.0.4" + pretty-format@^27.0.2: version "27.5.1" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" @@ -5762,12 +11787,32 @@ pretty-format@^29.0.0, pretty-format@^29.3.1: ansi-styles "^5.0.0" react-is "^18.0.0" +pretty-hrtime@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" + integrity sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A== + +prism-react-renderer@^1.2.1: + version "1.3.5" + resolved "https://registry.yarnpkg.com/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz#786bb69aa6f73c32ba1ee813fbe17a0115435085" + integrity sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg== + process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== -promise.allsettled@1.0.6: +process@^0.11.10: + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== + +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== + +promise.allsettled@1.0.6, promise.allsettled@^1.0.0: version "1.0.6" resolved "https://registry.yarnpkg.com/promise.allsettled/-/promise.allsettled-1.0.6.tgz#8dc8ba8edf429feb60f8e81335b920e109c94b6e" integrity sha512-22wJUOD3zswWFqgwjNHa1965LvqTX87WPu/lreY2KSd7SVcERfuZ4GfUaOnJNnvtoIv2yXT/W00YIGMetXtFXg== @@ -5779,7 +11824,16 @@ promise.allsettled@1.0.6: get-intrinsic "^1.1.3" iterate-value "^1.0.2" -prompts@^2.0.1: +promise.prototype.finally@^3.1.0: + version "3.1.4" + resolved "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.4.tgz#4e756a154e4db27fae24c6b18703495c31da3927" + integrity sha512-nNc3YbgMfLzqtqvO/q5DP6RR0SiHI9pUPGzyDf1q+usTwCN2kjvAnJkBb7bHe3o+fFSBPpsGMoYtaSi+LTNqng== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + +prompts@^2.0.1, prompts@^2.4.0: version "2.4.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== @@ -5787,7 +11841,7 @@ prompts@^2.0.1: kleur "^3.0.3" sisteransi "^1.0.5" -prop-types@^15.8.1: +prop-types@^15.0.0, prop-types@^15.7.2, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== @@ -5796,6 +11850,13 @@ prop-types@^15.8.1: object-assign "^4.1.1" react-is "^16.13.1" +property-information@^5.0.0, property-information@^5.3.0: + version "5.6.0" + resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.6.0.tgz#61675545fb23002f245c6540ec46077d4da3ed69" + integrity sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA== + dependencies: + xtend "^4.0.0" + proto-list@~1.2.1: version "1.2.4" resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" @@ -5806,6 +11867,14 @@ protocols@^2.0.0, protocols@^2.0.1: resolved "https://registry.yarnpkg.com/protocols/-/protocols-2.0.1.tgz#8f155da3fc0f32644e83c5782c8e8212ccf70a86" integrity sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q== +proxy-addr@~2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== + dependencies: + forwarded "0.2.0" + ipaddr.js "1.9.1" + proxy-agent@5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/proxy-agent/-/proxy-agent-5.0.0.tgz#d31405c10d6e8431fde96cba7a0c027ce01d633b" @@ -5825,11 +11894,63 @@ proxy-from-env@^1.0.0: resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== +prr@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== + psl@^1.1.33: version "1.9.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== +public-encrypt@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" + integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== + dependencies: + bn.js "^4.1.0" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + parse-asn1 "^5.0.0" + randombytes "^2.0.1" + safe-buffer "^5.1.2" + +pump@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pumpify@^1.3.3: + version "1.5.1" + resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" + integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== + dependencies: + duplexify "^3.6.0" + inherits "^2.0.3" + pump "^2.0.0" + +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + integrity sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw== + +punycode@^1.2.4: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== + punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" @@ -5847,6 +11968,23 @@ q@^1.5.1: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw== +qs@6.11.0, qs@^6.10.0: + version "6.11.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" + integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== + dependencies: + side-channel "^1.0.4" + +querystring-es3@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" + integrity sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA== + +querystring@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== + querystringify@^2.1.1: version "2.2.0" resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" @@ -5867,7 +12005,32 @@ quick-lru@^5.1.1: resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== -raw-body@^2.2.0: +ramda@^0.28.0: + version "0.28.0" + resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.28.0.tgz#acd785690100337e8b063cab3470019be427cc97" + integrity sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA== + +randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== + dependencies: + safe-buffer "^5.1.0" + +randomfill@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" + integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== + dependencies: + randombytes "^2.0.5" + safe-buffer "^5.1.0" + +range-parser@^1.2.1, range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +raw-body@2.5.1, raw-body@^2.2.0: version "2.5.1" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== @@ -5877,6 +12040,14 @@ raw-body@^2.2.0: iconv-lite "0.4.24" unpipe "1.0.0" +raw-loader@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.2.tgz#1aac6b7d1ad1501e66efdac1522c73e59a584eb6" + integrity sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + rc@1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" @@ -5887,6 +12058,27 @@ rc@1.2.8: minimist "^1.2.0" strip-json-comments "~2.0.1" +react-docgen-typescript@^2.1.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/react-docgen-typescript/-/react-docgen-typescript-2.2.2.tgz#4611055e569edc071204aadb20e1c93e1ab1659c" + integrity sha512-tvg2ZtOpOi6QDwsb3GZhOjDkkX0h8Z2gipvTg6OVMUyoYoURhEiRNePT8NZItTVCDh39JJHnLdfCOkzoLbFnTg== + +react-docgen@^5.0.0: + version "5.4.3" + resolved "https://registry.yarnpkg.com/react-docgen/-/react-docgen-5.4.3.tgz#7d297f73b977d0c7611402e5fc2a168acf332b26" + integrity sha512-xlLJyOlnfr8lLEEeaDZ+X2J/KJoe6Nr9AzxnkdQWush5hz2ZSu66w6iLMOScMmxoSHWpWMn+k3v5ZiyCfcWsOA== + dependencies: + "@babel/core" "^7.7.5" + "@babel/generator" "^7.12.11" + "@babel/runtime" "^7.7.6" + ast-types "^0.14.2" + commander "^2.19.0" + doctrine "^3.0.0" + estree-to-babel "^3.1.0" + neo-async "^2.6.1" + node-dir "^0.1.10" + strip-indent "^3.0.0" + react-dom@^18.2.0: version "18.2.0" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d" @@ -5895,21 +12087,63 @@ react-dom@^18.2.0: loose-envify "^1.1.0" scheduler "^0.23.0" -react-is@^16.13.1: - version "16.13.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== +react-element-to-jsx-string@^14.3.4: + version "14.3.4" + resolved "https://registry.yarnpkg.com/react-element-to-jsx-string/-/react-element-to-jsx-string-14.3.4.tgz#709125bc72f06800b68f9f4db485f2c7d31218a8" + integrity sha512-t4ZwvV6vwNxzujDQ+37bspnLwA4JlgUPWhLjBJWsNIDceAf6ZKUTCjdm08cN6WeZ5pTMKiCJkmAYnpmR4Bm+dg== + dependencies: + "@base2/pretty-print-object" "1.0.1" + is-plain-object "5.0.0" + react-is "17.0.2" + +react-inspector@^5.1.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/react-inspector/-/react-inspector-5.1.1.tgz#58476c78fde05d5055646ed8ec02030af42953c8" + integrity sha512-GURDaYzoLbW8pMGXwYPDBIv6nqei4kK7LPRZ9q9HCZF54wqXz/dnylBp/kfE9XmekBhHvLDdcYeyIwSrvtOiWg== + dependencies: + "@babel/runtime" "^7.0.0" + is-dom "^1.0.0" + prop-types "^15.0.0" -react-is@^17.0.1: +react-is@17.0.2, react-is@^17.0.1: version "17.0.2" resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== +react-is@^16.13.1, react-is@^16.7.0: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + react-is@^18.0.0: version "18.2.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== +react-merge-refs@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/react-merge-refs/-/react-merge-refs-1.1.0.tgz#73d88b892c6c68cbb7a66e0800faa374f4c38b06" + integrity sha512-alTKsjEL0dKH/ru1Iyn7vliS2QRcBp9zZPGoWxUOvRGWPUYgjo+V01is7p04It6KhgrzhJGnIj9GgX8W4bZoCQ== + +react-refresh@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.11.0.tgz#77198b944733f0f1f1a90e791de4541f9f074046" + integrity sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A== + +react-resizable-panels@^0.0.35: + version "0.0.35" + resolved "https://registry.yarnpkg.com/react-resizable-panels/-/react-resizable-panels-0.0.35.tgz#ac8c8918c957bbd5c37b4b93ca50a40b5c012e6a" + integrity sha512-8HFm5w4AG13aUN2+JWM/3unYP+QVmW0xs9iWM7Sa+HvIGCQhdvLEEx3lFmUyEiWPYmsBnPZaq6o/4pAi2dt4yQ== + +react-textarea-autosize@8.3.4: + version "8.3.4" + resolved "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-8.3.4.tgz#270a343de7ad350534141b02c9cb78903e553524" + integrity sha512-CdtmP8Dc19xL8/R6sWvtknD/eCXkQr30dtvC4VmGInhRsfF8X/ihXCq6+9l9qbxmKRiq407/7z5fxE7cVWQNgQ== + dependencies: + "@babel/runtime" "^7.10.2" + use-composed-ref "^1.3.0" + use-latest "^1.2.1" + react@^18.2.0: version "18.2.0" resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5" @@ -5917,6 +12151,14 @@ react@^18.2.0: dependencies: loose-envify "^1.1.0" +read-pkg-up@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" + integrity sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A== + dependencies: + find-up "^1.0.0" + read-pkg "^1.0.0" + read-pkg-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" @@ -5934,6 +12176,15 @@ read-pkg-up@^7.0.1: read-pkg "^5.2.0" type-fest "^0.8.1" +read-pkg@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" + integrity sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ== + dependencies: + load-json-file "^1.0.0" + normalize-package-data "^2.3.2" + path-type "^1.0.0" + read-pkg@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" @@ -5953,6 +12204,19 @@ read-pkg@^5.2.0: parse-json "^5.0.0" type-fest "^0.6.0" +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: + version "2.3.7" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" + integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~2.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.1.1" + util-deprecate "~1.0.1" + readable-stream@1.1.x: version "1.1.14" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" @@ -5963,7 +12227,7 @@ readable-stream@1.1.x: isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.4.0: +readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -5972,18 +12236,14 @@ readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stre string_decoder "^1.1.1" util-deprecate "^1.0.1" -readable-stream@~2.3.6: - version "2.3.7" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" - integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== +readdirp@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" + integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~2.0.0" - safe-buffer "~5.1.1" - string_decoder "~1.1.1" - util-deprecate "~1.0.1" + graceful-fs "^4.1.11" + micromatch "^3.1.10" + readable-stream "^2.0.2" readdirp@~3.6.0: version "3.6.0" @@ -5999,6 +12259,14 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + integrity sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g== + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + redent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" @@ -6014,11 +12282,38 @@ redux@^4.2.0: dependencies: "@babel/runtime" "^7.9.2" -regenerator-runtime@^0.13.11: +regenerate-unicode-properties@^10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz#7c3192cab6dd24e21cb4461e5ddd7dd24fa8374c" + integrity sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ== + dependencies: + regenerate "^1.4.2" + +regenerate@^1.4.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" + integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== + +regenerator-runtime@^0.13.11, regenerator-runtime@^0.13.2, regenerator-runtime@^0.13.7: version "0.13.11" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== +regenerator-transform@^0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.1.tgz#f6c4e99fc1b4591f780db2586328e4d9a9d8dc56" + integrity sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg== + dependencies: + "@babel/runtime" "^7.8.4" + +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + regexp.prototype.flags@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" @@ -6033,6 +12328,18 @@ regexpp@^3.2.0: resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== +regexpu-core@^5.2.1: + version "5.2.2" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.2.2.tgz#3e4e5d12103b64748711c3aad69934d7718e75fc" + integrity sha512-T0+1Zp2wjF/juXMrMxHxidqGYn8U4R+zleSJhX9tQ1PUsS8a9UtYfbsF9LdiVgNX3kiX8RNaKM42nfSgvFJjmw== + dependencies: + regenerate "^1.4.2" + regenerate-unicode-properties "^10.1.0" + regjsgen "^0.7.1" + regjsparser "^0.9.1" + unicode-match-property-ecmascript "^2.0.0" + unicode-match-property-value-ecmascript "^2.1.0" + registry-auth-token@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-5.0.1.tgz#5e6cd106e6c251135a046650c58476fc03e92833" @@ -6047,6 +12354,23 @@ registry-url@^6.0.0: dependencies: rc "1.2.8" +regjsgen@^0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.7.1.tgz#ee5ef30e18d3f09b7c369b76e7c2373ed25546f6" + integrity sha512-RAt+8H2ZEzHeYWxZ3H2z6tF18zyyOnlcdaafLrm21Bguj7uZy6ULibiAFdXEtKQY4Sy7wDTwDiOazasMLc4KPA== + +regjsparser@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.9.1.tgz#272d05aa10c7c1f67095b1ff0addae8442fc5709" + integrity sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ== + dependencies: + jsesc "~0.5.0" + +relateurl@^0.2.7: + version "0.2.7" + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog== + release-it@^15.6.0: version "15.6.0" resolved "https://registry.yarnpkg.com/release-it/-/release-it-15.6.0.tgz#db6c35088c29e5ca9d2c6d26cdce1010e49e30e7" @@ -6079,6 +12403,107 @@ release-it@^15.6.0: wildcard-match "5.1.2" yargs-parser "21.1.1" +remark-external-links@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/remark-external-links/-/remark-external-links-8.0.0.tgz#308de69482958b5d1cd3692bc9b725ce0240f345" + integrity sha512-5vPSX0kHoSsqtdftSHhIYofVINC8qmp0nctkeU9YoJwV3YfiBRiI6cbFRJ0oI/1F9xS+bopXG0m2KS8VFscuKA== + dependencies: + extend "^3.0.0" + is-absolute-url "^3.0.0" + mdast-util-definitions "^4.0.0" + space-separated-tokens "^1.0.0" + unist-util-visit "^2.0.0" + +remark-footnotes@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/remark-footnotes/-/remark-footnotes-2.0.0.tgz#9001c4c2ffebba55695d2dd80ffb8b82f7e6303f" + integrity sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ== + +remark-mdx@1.6.22: + version "1.6.22" + resolved "https://registry.yarnpkg.com/remark-mdx/-/remark-mdx-1.6.22.tgz#06a8dab07dcfdd57f3373af7f86bd0e992108bbd" + integrity sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ== + dependencies: + "@babel/core" "7.12.9" + "@babel/helper-plugin-utils" "7.10.4" + "@babel/plugin-proposal-object-rest-spread" "7.12.1" + "@babel/plugin-syntax-jsx" "7.12.1" + "@mdx-js/util" "1.6.22" + is-alphabetical "1.0.4" + remark-parse "8.0.3" + unified "9.2.0" + +remark-parse@8.0.3: + version "8.0.3" + resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-8.0.3.tgz#9c62aa3b35b79a486454c690472906075f40c7e1" + integrity sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q== + dependencies: + ccount "^1.0.0" + collapse-white-space "^1.0.2" + is-alphabetical "^1.0.0" + is-decimal "^1.0.0" + is-whitespace-character "^1.0.0" + is-word-character "^1.0.0" + markdown-escapes "^1.0.0" + parse-entities "^2.0.0" + repeat-string "^1.5.4" + state-toggle "^1.0.0" + trim "0.0.1" + trim-trailing-lines "^1.0.0" + unherit "^1.0.4" + unist-util-remove-position "^2.0.0" + vfile-location "^3.0.0" + xtend "^4.0.1" + +remark-slug@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/remark-slug/-/remark-slug-6.1.0.tgz#0503268d5f0c4ecb1f33315c00465ccdd97923ce" + integrity sha512-oGCxDF9deA8phWvxFuyr3oSJsdyUAxMFbA0mZ7Y1Sas+emILtO+e5WutF9564gDsEN4IXaQXm5pFo6MLH+YmwQ== + dependencies: + github-slugger "^1.0.0" + mdast-util-to-string "^1.0.0" + unist-util-visit "^2.0.0" + +remark-squeeze-paragraphs@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz#76eb0e085295131c84748c8e43810159c5653ead" + integrity sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw== + dependencies: + mdast-squeeze-paragraphs "^4.0.0" + +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== + +renderkid@^2.0.4: + version "2.0.7" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.7.tgz#464f276a6bdcee606f4a15993f9b29fc74ca8609" + integrity sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ== + dependencies: + css-select "^4.1.3" + dom-converter "^0.2.0" + htmlparser2 "^6.1.0" + lodash "^4.17.21" + strip-ansi "^3.0.1" + +repeat-element@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" + integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== + +repeat-string@^1.5.4, repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== + +repeating@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" + integrity sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A== + dependencies: + is-finite "^1.0.0" + require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -6089,6 +12514,11 @@ require-from-string@^2.0.2: resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== +requireindex@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/requireindex/-/requireindex-1.2.0.tgz#3463cdb22ee151902635aa6c9535d4de9c2ef1ef" + integrity sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww== + requires-port@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" @@ -6123,12 +12553,17 @@ resolve-global@1.0.0, resolve-global@^1.0.0: dependencies: global-dirs "^0.1.1" +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== + resolve.exports@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.20.0, resolve@^1.22.0: +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.3.2: version "1.22.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== @@ -6169,6 +12604,11 @@ restore-cursor@^4.0.0: onetime "^5.1.0" signal-exit "^3.0.2" +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== + retry@0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" @@ -6184,6 +12624,13 @@ rfdc@^1.3.0: resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== +rimraf@^2.5.4, rimraf@^2.6.3: + version "2.7.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== + dependencies: + glob "^7.1.3" + rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" @@ -6191,6 +12638,14 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" + integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + rollup@^3.2.5: version "3.9.1" resolved "https://registry.yarnpkg.com/rollup/-/rollup-3.9.1.tgz#27501d3d026418765fe379d5620d25954ff2a011" @@ -6198,6 +12653,11 @@ rollup@^3.2.5: optionalDependencies: fsevents "~2.3.2" +rsvp@^4.8.4: + version "4.8.5" + resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" + integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== + run-async@^2.4.0: version "2.4.1" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" @@ -6210,6 +12670,13 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" +run-queue@^1.0.0, run-queue@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" + integrity sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg== + dependencies: + aproba "^1.1.1" + rxjs@^7.5.7: version "7.8.0" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.0.tgz#90a938862a82888ff4c7359811a595e14e1e09a4" @@ -6217,12 +12684,17 @@ rxjs@^7.5.7: dependencies: tslib "^2.1.0" -safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" + integrity sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg== + +safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@~5.2.0: +safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -6236,11 +12708,33 @@ safe-regex-test@^1.0.0: get-intrinsic "^1.1.3" is-regex "^1.1.4" -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== + dependencies: + ret "~0.1.10" + +"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== +sane@^4.0.3: + version "4.1.0" + resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" + integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== + dependencies: + "@cnakazawa/watch" "^1.0.3" + anymatch "^2.0.0" + capture-exit "^2.0.0" + exec-sh "^0.3.2" + execa "^1.0.0" + fb-watchman "^2.0.0" + micromatch "^3.1.4" + minimist "^1.1.1" + walker "~1.0.5" + saxes@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/saxes/-/saxes-6.0.0.tgz#fe5b4a4768df4f14a201b1ba6a65c1f3d9988cc5" @@ -6255,6 +12749,42 @@ scheduler@^0.23.0: dependencies: loose-envify "^1.1.0" +schema-utils@2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7" + integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== + dependencies: + "@types/json-schema" "^7.0.4" + ajv "^6.12.2" + ajv-keywords "^3.4.1" + +schema-utils@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" + integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== + dependencies: + ajv "^6.1.0" + ajv-errors "^1.0.0" + ajv-keywords "^3.1.0" + +schema-utils@^2.6.5, schema-utils@^2.7.0: + version "2.7.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" + integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== + dependencies: + "@types/json-schema" "^7.0.5" + ajv "^6.12.4" + ajv-keywords "^3.5.2" + +schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" + integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== + dependencies: + "@types/json-schema" "^7.0.8" + ajv "^6.12.5" + ajv-keywords "^3.5.2" + semver-diff@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-4.0.0.tgz#3afcf5ed6d62259f5c72d0d5d50dffbdc9680df5" @@ -6262,28 +12792,131 @@ semver-diff@^4.0.0: dependencies: semver "^7.3.5" -"semver@2 || 3 || 4 || 5": +"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@7.3.8, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7: +semver@7.3.8, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7: version "7.3.8" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== dependencies: lru-cache "^6.0.0" -semver@^6.0.0, semver@^6.3.0: +semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== +send@0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" + integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== + dependencies: + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "2.0.0" + mime "1.6.0" + ms "2.1.3" + on-finished "2.4.1" + range-parser "~1.2.1" + statuses "2.0.1" + +serialize-javascript@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" + integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw== + dependencies: + randombytes "^2.1.0" + +serialize-javascript@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" + integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== + dependencies: + randombytes "^2.1.0" + +serialize-javascript@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz#b206efb27c3da0b0ab6b52f48d170b7996458e5c" + integrity sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w== + dependencies: + randombytes "^2.1.0" + +serve-favicon@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/serve-favicon/-/serve-favicon-2.5.0.tgz#935d240cdfe0f5805307fdfe967d88942a2cbcf0" + integrity sha512-FMW2RvqNr03x+C0WxTyu6sOv21oOjkq5j8tjquWccwa6ScNyGFOGJVpuS1NmTVGBAHS07xnSKotgf2ehQmf9iA== + dependencies: + etag "~1.8.1" + fresh "0.5.2" + ms "2.1.1" + parseurl "~1.3.2" + safe-buffer "5.1.1" + +serve-static@1.15.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" + integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== + dependencies: + encodeurl "~1.0.2" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "0.18.0" + +set-blocking@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== + +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + +setimmediate@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== + setprototypeof@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== +sha.js@^2.4.0, sha.js@^2.4.8: + version "2.4.11" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" + integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +shallow-clone@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" + integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== + dependencies: + kind-of "^6.0.2" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== + dependencies: + shebang-regex "^1.0.0" + shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -6291,6 +12924,11 @@ shebang-command@^2.0.0: dependencies: shebang-regex "^3.0.0" +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== + shebang-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" @@ -6314,7 +12952,7 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== @@ -6324,6 +12962,11 @@ sisteransi@^1.0.5: resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== +slash@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" + integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== + slash@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" @@ -6370,6 +13013,36 @@ smart-buffer@^4.2.0: resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^3.1.0" + socks-proxy-agent@5, socks-proxy-agent@^5.0.0: version "5.0.1" resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz#032fb583048a29ebffec2e6a73fca0761f48177e" @@ -6387,6 +13060,22 @@ socks@^2.3.3: ip "^2.0.0" smart-buffer "^4.2.0" +source-list-map@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" + integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== + +source-map-resolve@^0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + source-map-support@0.5.13: version "0.5.13" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" @@ -6395,6 +13084,19 @@ source-map-support@0.5.13: buffer-from "^1.0.0" source-map "^0.6.0" +source-map-support@^0.5.16, source-map-support@~0.5.12, source-map-support@~0.5.20: + version "0.5.21" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-url@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + source-map@0.8.0-beta.0: version "0.8.0-beta.0" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.8.0-beta.0.tgz#d4c1bb42c3f7ee925f005927ba10709e0d1d1f11" @@ -6402,16 +13104,31 @@ source-map@0.8.0-beta.0: dependencies: whatwg-url "^7.0.0" -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: +source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== + +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +source-map@^0.7.3: + version "0.7.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" + integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== + sourcemap-codec@^1.4.8: version "1.4.8" resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== +space-separated-tokens@^1.0.0: + version "1.1.5" + resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz#85f32c3d10d9682007e917414ddc5c26d1aa6899" + integrity sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA== + spdx-correct@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" @@ -6438,6 +13155,13 @@ spdx-license-ids@^3.0.0: resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz#69077835abe2710b65f03969898b6637b505a779" integrity sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA== +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== + dependencies: + extend-shallow "^3.0.0" + split2@^3.0.0: version "3.2.2" resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" @@ -6457,6 +13181,25 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== +ssri@^6.0.1: + version "6.0.2" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.2.tgz#157939134f20464e7301ddba3e90ffa8f7728ac5" + integrity sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q== + dependencies: + figgy-pudding "^3.5.1" + +ssri@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" + integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== + dependencies: + minipass "^3.1.1" + +stable@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" + integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== + stack-utils@^2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" @@ -6464,6 +13207,24 @@ stack-utils@^2.0.3: dependencies: escape-string-regexp "^2.0.0" +stackframe@^1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.3.4.tgz#b881a004c8c149a5e8efef37d51b16e412943310" + integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw== + +state-toggle@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/state-toggle/-/state-toggle-1.0.3.tgz#e123b16a88e143139b09c6852221bc9815917dfe" + integrity sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ== + +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + statuses@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" @@ -6476,6 +13237,43 @@ stop-iteration-iterator@^1.0.0: dependencies: internal-slot "^1.0.4" +store2@^2.12.0: + version "2.14.2" + resolved "https://registry.yarnpkg.com/store2/-/store2-2.14.2.tgz#56138d200f9fe5f582ad63bc2704dbc0e4a45068" + integrity sha512-siT1RiqlfQnGqgT/YzXVUNsom9S0H1OX+dpdGN1xkyYATo4I6sep5NmsRD/40s3IIOvlCq6akxkqG82urIZW1w== + +stream-browserify@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" + integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg== + dependencies: + inherits "~2.0.1" + readable-stream "^2.0.2" + +stream-each@^1.1.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" + integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== + dependencies: + end-of-stream "^1.1.0" + stream-shift "^1.0.0" + +stream-http@^2.7.2: + version "2.8.3" + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" + integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== + dependencies: + builtin-status-codes "^3.0.0" + inherits "^2.0.1" + readable-stream "^2.3.6" + to-arraybuffer "^1.0.0" + xtend "^4.0.0" + +stream-shift@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" + integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== + string-argv@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" @@ -6497,7 +13295,7 @@ string-length@^5.0.1: char-regex "^2.0.0" strip-ansi "^7.0.1" -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -6515,7 +13313,7 @@ string-width@^5.0.0, string-width@^5.0.1, string-width@^5.1.2: emoji-regex "^9.2.2" strip-ansi "^7.0.1" -string.prototype.matchall@^4.0.8: +"string.prototype.matchall@^4.0.0 || ^3.0.1", string.prototype.matchall@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz#3bf85722021816dcd1bf38bb714915887ca79fd3" integrity sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg== @@ -6529,6 +13327,24 @@ string.prototype.matchall@^4.0.8: regexp.prototype.flags "^1.4.3" side-channel "^1.0.4" +string.prototype.padend@^3.0.0: + version "3.1.4" + resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.1.4.tgz#2c43bb3a89eb54b6750de5942c123d6c98dd65b6" + integrity sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + +string.prototype.padstart@^3.0.0: + version "3.1.4" + resolved "https://registry.yarnpkg.com/string.prototype.padstart/-/string.prototype.padstart-3.1.4.tgz#4842d58a09df2addac23cf0b325ce9f087978e90" + integrity sha512-XqOHj8horGsF+zwxraBvMTkBFM28sS/jHBJajh17JtJKA92qazidiQbLosV4UA18azvLOVKYo/E3g3T9Y5826w== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + string.prototype.trimend@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533" @@ -6547,7 +13363,7 @@ string.prototype.trimstart@^1.0.6: define-properties "^1.1.4" es-abstract "^1.20.4" -string_decoder@^1.1.1: +string_decoder@^1.0.0, string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== @@ -6566,6 +13382,13 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" +strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== + dependencies: + ansi-regex "^2.0.0" + strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -6580,6 +13403,13 @@ strip-ansi@^7.0.1: dependencies: ansi-regex "^6.0.1" +strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + integrity sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g== + dependencies: + is-utf8 "^0.2.0" + strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" @@ -6590,6 +13420,11 @@ strip-bom@^4.0.0: resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== + strip-final-newline@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" @@ -6600,6 +13435,13 @@ strip-final-newline@^3.0.0: resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== +strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + integrity sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA== + dependencies: + get-stdin "^4.0.1" + strip-indent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" @@ -6617,6 +13459,26 @@ strip-json-comments@~2.0.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== +style-loader@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.3.0.tgz#828b4a3b3b7e7aa5847ce7bae9e874512114249e" + integrity sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q== + dependencies: + loader-utils "^2.0.0" + schema-utils "^2.7.0" + +style-to-object@0.3.0, style-to-object@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.3.0.tgz#b1b790d205991cc783801967214979ee19a76e46" + integrity sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA== + dependencies: + inline-style-parser "0.1.1" + +stylis@4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.1.3.tgz#fd2fbe79f5fed17c55269e16ed8da14c84d069f7" + integrity sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA== + sucrase@^3.20.3: version "3.29.0" resolved "https://registry.yarnpkg.com/sucrase/-/sucrase-3.29.0.tgz#3207c5bc1b980fdae1e539df3f8a8a518236da7d" @@ -6629,6 +13491,13 @@ sucrase@^3.20.3: pirates "^4.0.1" ts-interface-checker "^0.1.9" +superjson@^1.12.2: + version "1.12.2" + resolved "https://registry.yarnpkg.com/superjson/-/superjson-1.12.2.tgz#072471f1e6add2d95a38b77fef8c7a199d82103a" + integrity sha512-ugvUo9/WmvWOjstornQhsN/sR9mnGtWGYeTxFuqLb4AiT4QdUavjGFRALCPKWWnAiUJ4HTpytj5e0t5HoMRkXg== + dependencies: + copy-anything "^3.0.2" + supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -6636,7 +13505,7 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -supports-color@^7.1.0: +supports-color@^7.0.0, supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== @@ -6660,6 +13529,21 @@ symbol-tree@^3.2.4: resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== +symbol.prototype.description@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/symbol.prototype.description/-/symbol.prototype.description-1.0.5.tgz#d30e01263b6020fbbd2d2884a6276ce4d49ab568" + integrity sha512-x738iXRYsrAt9WBhRCVG5BtIC3B7CUkFwbHW2zOvGtwM33s7JjrCDyq8V0zgMYVb5ymsL8+qkzzpANH63CPQaQ== + dependencies: + call-bind "^1.0.2" + get-symbol-description "^1.0.0" + has-symbols "^1.0.2" + object.getownpropertydescriptors "^2.1.2" + +synchronous-promise@^2.0.15: + version "2.0.17" + resolved "https://registry.yarnpkg.com/synchronous-promise/-/synchronous-promise-2.0.17.tgz#38901319632f946c982152586f2caf8ddc25c032" + integrity sha512-AsS729u2RHUfEra9xJrE39peJcc2stq2+poBXX8bcM08Y6g9j/i/PUzwNQqkaJde7Ntg1TO7bSREbR5sdosQ+g== + synckit@^0.8.4: version "0.8.4" resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.8.4.tgz#0e6b392b73fafdafcde56692e3352500261d64ec" @@ -6668,11 +13552,102 @@ synckit@^0.8.4: "@pkgr/utils" "^2.3.1" tslib "^2.4.0" -tapable@^2.2.0: +tapable@^1.0.0, tapable@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" + integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== + +tapable@^2.1.1, tapable@^2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== +tar@^6.0.2: + version "6.1.13" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.13.tgz#46e22529000f612180601a6fe0680e7da508847b" + integrity sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw== + dependencies: + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^4.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" + +telejson@^6.0.8: + version "6.0.8" + resolved "https://registry.yarnpkg.com/telejson/-/telejson-6.0.8.tgz#1c432db7e7a9212c1fbd941c3e5174ec385148f7" + integrity sha512-nerNXi+j8NK1QEfBHtZUN/aLdDcyupA//9kAboYLrtzZlPLpUfqbVGWb9zz91f/mIjRbAYhbgtnJHY8I1b5MBg== + dependencies: + "@types/is-function" "^1.0.0" + global "^4.4.0" + is-function "^1.0.2" + is-regex "^1.1.2" + is-symbol "^1.0.3" + isobject "^4.0.0" + lodash "^4.17.21" + memoizerific "^1.11.3" + +terser-webpack-plugin@^1.4.3: + version "1.4.5" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz#a217aefaea330e734ffacb6120ec1fa312d6040b" + integrity sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw== + dependencies: + cacache "^12.0.2" + find-cache-dir "^2.1.0" + is-wsl "^1.1.0" + schema-utils "^1.0.0" + serialize-javascript "^4.0.0" + source-map "^0.6.1" + terser "^4.1.2" + webpack-sources "^1.4.0" + worker-farm "^1.7.0" + +terser-webpack-plugin@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz#28daef4a83bd17c1db0297070adc07fc8cfc6a9a" + integrity sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ== + dependencies: + cacache "^15.0.5" + find-cache-dir "^3.3.1" + jest-worker "^26.5.0" + p-limit "^3.0.2" + schema-utils "^3.0.0" + serialize-javascript "^5.0.1" + source-map "^0.6.1" + terser "^5.3.4" + webpack-sources "^1.4.3" + +terser-webpack-plugin@^5.1.3: + version "5.3.6" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz#5590aec31aa3c6f771ce1b1acca60639eab3195c" + integrity sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ== + dependencies: + "@jridgewell/trace-mapping" "^0.3.14" + jest-worker "^27.4.5" + schema-utils "^3.1.1" + serialize-javascript "^6.0.0" + terser "^5.14.1" + +terser@^4.1.2, terser@^4.6.3: + version "4.8.1" + resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.1.tgz#a00e5634562de2239fd404c649051bf6fc21144f" + integrity sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw== + dependencies: + commander "^2.20.0" + source-map "~0.6.1" + source-map-support "~0.5.12" + +terser@^5.14.1, terser@^5.3.4: + version "5.16.1" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.16.1.tgz#5af3bc3d0f24241c7fb2024199d5c461a1075880" + integrity sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw== + dependencies: + "@jridgewell/source-map" "^0.3.2" + acorn "^8.5.0" + commander "^2.20.0" + source-map-support "~0.5.20" + test-exclude@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" @@ -6726,6 +13701,13 @@ through@2, "through@>=2.2.7 <3", through@^2.3.6, through@^2.3.8: resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== +timers-browserify@^2.0.4: + version "2.0.12" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee" + integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ== + dependencies: + setimmediate "^1.0.4" + tiny-glob@^0.2.9: version "0.2.9" resolved "https://registry.yarnpkg.com/tiny-glob/-/tiny-glob-0.2.9.tgz#2212d441ac17928033b110f8b3640683129d31e2" @@ -6746,11 +13728,31 @@ tmpl@1.0.5: resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== +to-arraybuffer@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" + integrity sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA== + to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -6758,6 +13760,16 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + toidentifier@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" @@ -6797,11 +13809,36 @@ tree-kill@^1.2.2: resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc" integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A== +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + integrity sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw== + trim-newlines@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== +trim-trailing-lines@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz#bd4abbec7cc880462f10b2c8b5ce1d8d1ec7c2c0" + integrity sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ== + +trim@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/trim/-/trim-0.0.1.tgz#5858547f6b290757ee95cccc666fb50084c460dd" + integrity sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ== + +trough@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz#b8b639cefad7d0bb2abd37d433ff8293efa5f406" + integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== + +ts-dedent@^2.0.0, ts-dedent@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-2.2.0.tgz#39e4bd297cd036292ae2394eb3412be63f563bb5" + integrity sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ== + ts-interface-checker@^0.1.9: version "0.1.13" resolved "https://registry.yarnpkg.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699" @@ -6826,6 +13863,11 @@ ts-node@^10.8.1: v8-compile-cache-lib "^3.0.1" yn "3.1.1" +ts-pnp@^1.1.6: + version "1.2.0" + resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" + integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== + tsconfig-paths@^3.14.1: version "3.14.1" resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz#ba0734599e8ea36c862798e920bcf163277b137a" @@ -6836,12 +13878,12 @@ tsconfig-paths@^3.14.1: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^1.8.1: +tslib@^1.8.1, tslib@^1.9.3: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.1, tslib@^2.1.0, tslib@^2.4.0: +tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.4.0: version "2.4.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.1.tgz#0d0bfbaac2880b91e22df0768e55be9753a5b17e" integrity sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA== @@ -6873,6 +13915,11 @@ tsutils@^3.21.0: dependencies: tslib "^1.8.1" +tty-browserify@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" + integrity sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw== + type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" @@ -6932,6 +13979,14 @@ type-fest@^3.0.0: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-3.5.1.tgz#9555ae435f560c1b4447b70bdd195bb2c86c6c92" integrity sha512-70T99cpILFk2fzwuljwWxmazSphFrdOe3gRHbp6bqs71pxFBbJwFqnmkLO2lQL6aLHxHmYAnP/sL+AJWpT70jA== +type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + typed-array-length@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb" @@ -6973,6 +14028,78 @@ unbox-primitive@^1.0.2: has-symbols "^1.0.3" which-boxed-primitive "^1.0.2" +unfetch@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" + integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== + +unherit@^1.0.4: + version "1.1.3" + resolved "https://registry.yarnpkg.com/unherit/-/unherit-1.1.3.tgz#6c9b503f2b41b262330c80e91c8614abdaa69c22" + integrity sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ== + dependencies: + inherits "^2.0.0" + xtend "^4.0.0" + +unicode-canonical-property-names-ecmascript@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" + integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== + +unicode-match-property-ecmascript@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" + integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== + dependencies: + unicode-canonical-property-names-ecmascript "^2.0.0" + unicode-property-aliases-ecmascript "^2.0.0" + +unicode-match-property-value-ecmascript@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz#cb5fffdcd16a05124f5a4b0bf7c3770208acbbe0" + integrity sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA== + +unicode-property-aliases-ecmascript@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" + integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== + +unified@9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/unified/-/unified-9.2.0.tgz#67a62c627c40589edebbf60f53edfd4d822027f8" + integrity sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg== + dependencies: + bail "^1.0.0" + extend "^3.0.0" + is-buffer "^2.0.0" + is-plain-obj "^2.0.0" + trough "^1.0.0" + vfile "^4.0.0" + +union-value@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + +unique-filename@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" + integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== + dependencies: + unique-slug "^2.0.0" + +unique-slug@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" + integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== + dependencies: + imurmurhash "^0.1.4" + unique-string@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-3.0.0.tgz#84a1c377aff5fd7a8bc6b55d8244b2bd90d75b9a" @@ -6980,6 +14107,64 @@ unique-string@^3.0.0: dependencies: crypto-random-string "^4.0.0" +unist-builder@2.0.3, unist-builder@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/unist-builder/-/unist-builder-2.0.3.tgz#77648711b5d86af0942f334397a33c5e91516436" + integrity sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw== + +unist-util-generated@^1.0.0: + version "1.1.6" + resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-1.1.6.tgz#5ab51f689e2992a472beb1b35f2ce7ff2f324d4b" + integrity sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg== + +unist-util-is@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.1.0.tgz#976e5f462a7a5de73d94b706bac1b90671b57797" + integrity sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg== + +unist-util-position@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-3.1.0.tgz#1c42ee6301f8d52f47d14f62bbdb796571fa2d47" + integrity sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA== + +unist-util-remove-position@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz#5d19ca79fdba712301999b2b73553ca8f3b352cc" + integrity sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA== + dependencies: + unist-util-visit "^2.0.0" + +unist-util-remove@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/unist-util-remove/-/unist-util-remove-2.1.0.tgz#b0b4738aa7ee445c402fda9328d604a02d010588" + integrity sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q== + dependencies: + unist-util-is "^4.0.0" + +unist-util-stringify-position@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz#cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da" + integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== + dependencies: + "@types/unist" "^2.0.2" + +unist-util-visit-parents@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz#65a6ce698f78a6b0f56aa0e88f13801886cdaef6" + integrity sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg== + dependencies: + "@types/unist" "^2.0.0" + unist-util-is "^4.0.0" + +unist-util-visit@2.0.3, unist-util-visit@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.3.tgz#c3703893146df47203bb8a9795af47d7b971208c" + integrity sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q== + dependencies: + "@types/unist" "^2.0.0" + unist-util-is "^4.0.0" + unist-util-visit-parents "^3.0.0" + universal-user-agent@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" @@ -7000,11 +14185,31 @@ universalify@^2.0.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== -unpipe@1.0.0: +unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +untildify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/untildify/-/untildify-2.1.0.tgz#17eb2807987f76952e9c0485fc311d06a826a2e0" + integrity sha512-sJjbDp2GodvkB0FZZcn7k6afVisqX5BZD7Yq3xp4nN2O15BBK0cLm3Vwn2vQaF7UDS0UUsrQMkkplmDI5fskig== + dependencies: + os-homedir "^1.0.0" + +upath@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" + integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== + update-browserslist-db@^1.0.9: version "1.0.10" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" @@ -7040,11 +14245,25 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== + url-join@5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/url-join/-/url-join-5.0.0.tgz#c2f1e5cbd95fa91082a93b58a1f42fecb4bdbcf1" integrity sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA== +url-loader@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" + integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== + dependencies: + loader-utils "^2.0.0" + mime-types "^2.1.27" + schema-utils "^3.0.0" + url-parse@^1.5.3: version "1.5.10" resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" @@ -7053,17 +14272,89 @@ url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -util-deprecate@^1.0.1, util-deprecate@~1.0.1: +url@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" + integrity sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ== + dependencies: + punycode "1.3.2" + querystring "0.2.0" + +use-composed-ref@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/use-composed-ref/-/use-composed-ref-1.3.0.tgz#3d8104db34b7b264030a9d916c5e94fbe280dbda" + integrity sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ== + +use-isomorphic-layout-effect@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz#497cefb13d863d687b08477d9e5a164ad8c1a6fb" + integrity sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA== + +use-latest@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/use-latest/-/use-latest-1.2.1.tgz#d13dfb4b08c28e3e33991546a2cee53e14038cf2" + integrity sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw== + dependencies: + use-isomorphic-layout-effect "^1.1.1" + +use@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== + +util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== +util.promisify@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" + integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== + dependencies: + define-properties "^1.1.2" + object.getownpropertydescriptors "^2.0.3" + +util@0.10.3: + version "0.10.3" + resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" + integrity sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ== + dependencies: + inherits "2.0.1" + +util@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" + integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ== + dependencies: + inherits "2.0.3" + +utila@~0.4: + version "0.4.0" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" + integrity sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA== + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== + +uuid-browser@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/uuid-browser/-/uuid-browser-3.1.0.tgz#0f05a40aef74f9e5951e20efbf44b11871e56410" + integrity sha512-dsNgbLaTrd6l3MMxTtouOCFw4CBFc/3a+GgYA2YyrJvyQ1u6q4pcu3ktLoUZ/VN/Aw9WsauazbgsgdfVWgAKQg== + +uuid@^3.3.2: + version "3.4.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== + v8-compile-cache-lib@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== -v8-to-istanbul@^9.0.1: +v8-to-istanbul@^9.0.0, v8-to-istanbul@^9.0.1: version "9.0.1" resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz#b6f994b0b5d4ef255e17a0d17dc444a9f5132fa4" integrity sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w== @@ -7080,6 +14371,39 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" +vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== + +vfile-location@^3.0.0, vfile-location@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-3.2.0.tgz#d8e41fbcbd406063669ebf6c33d56ae8721d0f3c" + integrity sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA== + +vfile-message@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.4.tgz#5b43b88171d409eae58477d13f23dd41d52c371a" + integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ== + dependencies: + "@types/unist" "^2.0.0" + unist-util-stringify-position "^2.0.0" + +vfile@^4.0.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.2.1.tgz#03f1dce28fc625c625bc6514350fbdb00fa9e624" + integrity sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA== + dependencies: + "@types/unist" "^2.0.0" + is-buffer "^2.0.0" + unist-util-stringify-position "^2.0.0" + vfile-message "^2.0.0" + +vm-browserify@^1.0.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" + integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== + vm2@^3.9.8: version "3.9.13" resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.13.tgz#774a1a3d73b9b90b1aa45bcc5f25e349f2eef649" @@ -7095,13 +14419,39 @@ w3c-xmlserializer@^4.0.0: dependencies: xml-name-validator "^4.0.0" -walker@^1.0.8: +walker@^1.0.7, walker@^1.0.8, walker@~1.0.5: version "1.0.8" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== dependencies: makeerror "1.0.12" +watchpack-chokidar2@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz#38500072ee6ece66f3769936950ea1771be1c957" + integrity sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww== + dependencies: + chokidar "^2.1.8" + +watchpack@^1.7.4: + version "1.7.5" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.5.tgz#1267e6c55e0b9b5be44c2023aed5437a2c26c453" + integrity sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ== + dependencies: + graceful-fs "^4.1.2" + neo-async "^2.5.0" + optionalDependencies: + chokidar "^3.4.1" + watchpack-chokidar2 "^2.0.1" + +watchpack@^2.2.0, watchpack@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d" + integrity sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg== + dependencies: + glob-to-regexp "^0.4.1" + graceful-fs "^4.1.2" + wcwidth@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" @@ -7109,6 +14459,11 @@ wcwidth@^1.0.1: dependencies: defaults "^1.0.3" +web-namespaces@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.4.tgz#bc98a3de60dadd7faefc403d1076d529f5e030ec" + integrity sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw== + web-streams-polyfill@^3.0.3: version "3.2.1" resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz#71c2718c52b45fd49dbeee88634b3a60ceab42a6" @@ -7129,6 +14484,118 @@ webidl-conversions@^7.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== +webpack-dev-middleware@^3.7.3: + version "3.7.3" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz#0639372b143262e2b84ab95d3b91a7597061c2c5" + integrity sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ== + dependencies: + memory-fs "^0.4.1" + mime "^2.4.4" + mkdirp "^0.5.1" + range-parser "^1.2.1" + webpack-log "^2.0.0" + +webpack-filter-warnings-plugin@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/webpack-filter-warnings-plugin/-/webpack-filter-warnings-plugin-1.2.1.tgz#dc61521cf4f9b4a336fbc89108a75ae1da951cdb" + integrity sha512-Ez6ytc9IseDMLPo0qCuNNYzgtUl8NovOqjIq4uAU8LTD4uoa1w1KpZyyzFtLTEMZpkkOkLfL9eN+KGYdk1Qtwg== + +webpack-hot-middleware@^2.25.1: + version "2.25.3" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.25.3.tgz#be343ce2848022cfd854dd82820cd730998c6794" + integrity sha512-IK/0WAHs7MTu1tzLTjio73LjS3Ov+VvBKQmE8WPlJutgG5zT6Urgq/BbAdRrHTRpyzK0dvAvFh1Qg98akxgZpA== + dependencies: + ansi-html-community "0.0.8" + html-entities "^2.1.0" + strip-ansi "^6.0.0" + +webpack-log@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" + integrity sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg== + dependencies: + ansi-colors "^3.0.0" + uuid "^3.3.2" + +webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" + integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== + dependencies: + source-list-map "^2.0.0" + source-map "~0.6.1" + +webpack-sources@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" + integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== + +webpack-virtual-modules@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/webpack-virtual-modules/-/webpack-virtual-modules-0.2.2.tgz#20863dc3cb6bb2104729fff951fbe14b18bd0299" + integrity sha512-kDUmfm3BZrei0y+1NTHJInejzxfhtU8eDj2M7OKb2IWrPFAeO1SOH2KuQ68MSZu9IGEHcxbkKKR1v18FrUSOmA== + dependencies: + debug "^3.0.0" + +webpack@4: + version "4.46.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.46.0.tgz#bf9b4404ea20a073605e0a011d188d77cb6ad542" + integrity sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-module-context" "1.9.0" + "@webassemblyjs/wasm-edit" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + acorn "^6.4.1" + ajv "^6.10.2" + ajv-keywords "^3.4.1" + chrome-trace-event "^1.0.2" + enhanced-resolve "^4.5.0" + eslint-scope "^4.0.3" + json-parse-better-errors "^1.0.2" + loader-runner "^2.4.0" + loader-utils "^1.2.3" + memory-fs "^0.4.1" + micromatch "^3.1.10" + mkdirp "^0.5.3" + neo-async "^2.6.1" + node-libs-browser "^2.2.1" + schema-utils "^1.0.0" + tapable "^1.1.3" + terser-webpack-plugin "^1.4.3" + watchpack "^1.7.4" + webpack-sources "^1.4.1" + +"webpack@>=4.43.0 <6.0.0": + version "5.75.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.75.0.tgz#1e440468647b2505860e94c9ff3e44d5b582c152" + integrity sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ== + dependencies: + "@types/eslint-scope" "^3.7.3" + "@types/estree" "^0.0.51" + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/wasm-edit" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + acorn "^8.7.1" + acorn-import-assertions "^1.7.6" + browserslist "^4.14.5" + chrome-trace-event "^1.0.2" + enhanced-resolve "^5.10.0" + es-module-lexer "^0.9.0" + eslint-scope "5.1.1" + events "^3.2.0" + glob-to-regexp "^0.4.1" + graceful-fs "^4.2.9" + json-parse-even-better-errors "^2.3.1" + loader-runner "^4.2.0" + mime-types "^2.1.27" + neo-async "^2.6.2" + schema-utils "^3.1.0" + tapable "^2.1.1" + terser-webpack-plugin "^5.1.3" + watchpack "^2.4.0" + webpack-sources "^3.2.3" + whatwg-encoding@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz#e7635f597fd87020858626805a2729fa7698ac53" @@ -7199,6 +14666,13 @@ which-typed-array@^1.1.9: has-tostringtag "^1.0.0" is-typed-array "^1.1.10" +which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" + which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" @@ -7206,6 +14680,20 @@ which@^2.0.1: dependencies: isexe "^2.0.0" +wide-align@^1.1.2: + version "1.1.5" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" + integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== + dependencies: + string-width "^1.0.2 || 2 || 3 || 4" + +widest-line@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" + integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== + dependencies: + string-width "^4.0.0" + widest-line@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-4.0.1.tgz#a0fc673aaba1ea6f0a0d35b3c2795c9a9cc2ebf2" @@ -7235,6 +14723,20 @@ wordwrap@^1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== +worker-farm@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" + integrity sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw== + dependencies: + errno "~0.1.7" + +worker-rpc@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/worker-rpc/-/worker-rpc-0.1.1.tgz#cb565bd6d7071a8f16660686051e969ad32f54d5" + integrity sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg== + dependencies: + microevent.ts "~0.1.1" + wrap-ansi@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" @@ -7267,7 +14769,7 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -write-file-atomic@^3.0.3: +write-file-atomic@^3.0.0, write-file-atomic@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== @@ -7290,6 +14792,18 @@ ws@^8.11.0: resolved "https://registry.yarnpkg.com/ws/-/ws-8.11.0.tgz#6a0d36b8edfd9f96d8b25683db2f8d7de6e8e143" integrity sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg== +ws@^8.2.3: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.12.0.tgz#485074cc392689da78e1828a9ff23585e06cddd8" + integrity sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig== + +x-default-browser@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/x-default-browser/-/x-default-browser-0.4.0.tgz#70cf0da85da7c0ab5cb0f15a897f2322a6bdd481" + integrity sha512-7LKo7RtWfoFN/rHx1UELv/2zHGMx8MkZKDq1xENmOCTkfIqZJ0zZ26NEJX8czhnPXVcqS0ARjjfJB+eJ0/5Cvw== + optionalDependencies: + default-browser-id "^1.0.4" + xdg-basedir@^5.0.1, xdg-basedir@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-5.1.0.tgz#1efba19425e73be1bc6f2a6ceb52a3d2c884c0c9" @@ -7310,11 +14824,16 @@ xregexp@2.0.0: resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943" integrity sha512-xl/50/Cf32VsGq/1R8jJE5ajH1yMCQkpmoS10QbFZWl2Oor4H0Me64Pu2yxvsRWK3m6soJbmGfzSR7BYmDcWAA== -xtend@~4.0.1: +xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== +y18n@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" + integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== + y18n@^5.0.5: version "5.0.8" resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" @@ -7330,7 +14849,7 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@^1.10.2: +yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2: version "1.10.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== @@ -7345,7 +14864,7 @@ yargs-parser@21.1.1, yargs-parser@^21.1.1: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== -yargs-parser@^20.2.2, yargs-parser@^20.2.3: +yargs-parser@^20.2.2, yargs-parser@^20.2.3, yargs-parser@^20.2.9: version "20.2.9" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== @@ -7385,3 +14904,8 @@ yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== + +zwitch@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.5.tgz#d11d7381ffed16b742f6af7b3f223d5cd9fe9920" + integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw== From 5f496e4bcdfa2d6174fe651b09864810d5f99e1b Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sat, 4 Feb 2023 14:49:23 -0500 Subject: [PATCH 02/45] refactor: remove withGlobalStyles from theme --- package.json | 9 +- src/DevTools/DevTools.tsx | 11 +- .../Extension/components/Shell/Shell.tsx | 1 + .../components/AtomList/AtomList.tsx | 2 +- yarn.lock | 113 ++++++++---------- 5 files changed, 66 insertions(+), 70 deletions(-) diff --git a/package.json b/package.json index ce96e908..c92feca0 100644 --- a/package.json +++ b/package.json @@ -142,12 +142,11 @@ "@emotion/react": "^11.10.5", "@fontsource/inter": "^4.5.15", "@fontsource/jetbrains-mono": "^4.5.12", - "@mantine/core": "^5.10.1", - "@mantine/hooks": "^5.10.1", - "@mantine/prism": "^5.10.1", + "@mantine/core": "^5.10.3", + "@mantine/hooks": "^5.10.3", + "@mantine/prism": "^5.10.3", "@redux-devtools/extension": "^3.2.3", "@tabler/icons": "^1.119.0", - "react-resizable-panels": "^0.0.35", - "superjson": "^1.12.2" + "react-resizable-panels": "^0.0.35" } } diff --git a/src/DevTools/DevTools.tsx b/src/DevTools/DevTools.tsx index fa118ea1..14966fcb 100644 --- a/src/DevTools/DevTools.tsx +++ b/src/DevTools/DevTools.tsx @@ -25,6 +25,15 @@ import { const theme: MantineThemeOverride = { primaryColor: 'dark', activeStyles: { transform: 'scale(1)' }, + globalStyles: (theme) => ({ + '.jotai-devtools-shell': { + color: + theme.colorScheme === 'dark' + ? theme.colors.dark[0] + : theme.colors.dark[9], + lineHeight: theme.lineHeight, + }, + }), fontFamily: 'Inter, JetBrains Mono, -apple-system, BlinkMacSystemFont, Segoe, sans-serif', fontFamilyMonospace: @@ -73,7 +82,7 @@ export const DevTools = ({ toggleColorScheme={toggleColorScheme} > {/* FIXME remove `withGlobalStyles` - this changes themes outside of this component and may impact userland */} - + diff --git a/src/DevTools/Extension/components/Shell/Shell.tsx b/src/DevTools/Extension/components/Shell/Shell.tsx index dfc502f3..7c3a4594 100644 --- a/src/DevTools/Extension/components/Shell/Shell.tsx +++ b/src/DevTools/Extension/components/Shell/Shell.tsx @@ -45,6 +45,7 @@ export const Shell = ({ store }: ShellProps) => { h={height} mah={shellStyleDefaults.maxHeight} ref={shellRef} + className="jotai-devtools-shell" >
diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx index 0cc89d06..5cf1ed62 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx @@ -39,7 +39,7 @@ const SearchAtoms = memo(() => { return ( Date: Sat, 4 Feb 2023 14:55:44 -0500 Subject: [PATCH 03/45] refactor: make devtools trigger icon themable --- src/DevTools/DevTools.tsx | 1 - src/DevTools/Extension/Extension.tsx | 6 ++---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/DevTools/DevTools.tsx b/src/DevTools/DevTools.tsx index 14966fcb..3c898aa4 100644 --- a/src/DevTools/DevTools.tsx +++ b/src/DevTools/DevTools.tsx @@ -81,7 +81,6 @@ export const DevTools = ({ colorScheme={colorScheme} toggleColorScheme={toggleColorScheme} > - {/* FIXME remove `withGlobalStyles` - this changes themes outside of this component and may impact userland */} diff --git a/src/DevTools/Extension/Extension.tsx b/src/DevTools/Extension/Extension.tsx index bf2eec9c..b5d04557 100644 --- a/src/DevTools/Extension/Extension.tsx +++ b/src/DevTools/Extension/Extension.tsx @@ -3,6 +3,7 @@ import { ActionIcon, Sx } from '@mantine/core'; import { useAtom, useSetAtom } from 'jotai/react'; import { Store } from 'src/types'; import { isShellOpenAtom } from '../atoms/is-shell-open-atom'; +import { useThemeMode } from '../hooks/useThemeMode'; import { devtoolsJotaiStoreOptions, useDevtoolsJotaiStoreOptions, @@ -28,8 +29,7 @@ const ShellTriggerButton = () => { return ( setIsShellOpen(true)} sx={shellTriggerButtonStyles} > @@ -42,8 +42,6 @@ export type ExtensionProps = { // false by default isInitialOpen?: boolean; store?: Store; - // TODO Allow user to pass theme - // theme?: 'dark' | 'light'; }; export const Extension = ({ From 6c1572a5b22a8568fca3d9d21b0f0de05f12b1a5 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sat, 4 Feb 2023 19:38:03 -0500 Subject: [PATCH 04/45] chore: upgrade storybook --- .babelrc.json | 16 + .storybook/main.js | 12 - .storybook/main.ts | 43 + .storybook/{preview.js => preview.ts} | 0 package.json | 26 +- yarn.lock | 6257 +++++++------------------ 6 files changed, 1828 insertions(+), 4526 deletions(-) create mode 100644 .babelrc.json delete mode 100644 .storybook/main.js create mode 100644 .storybook/main.ts rename .storybook/{preview.js => preview.ts} (100%) diff --git a/.babelrc.json b/.babelrc.json new file mode 100644 index 00000000..00ca841a --- /dev/null +++ b/.babelrc.json @@ -0,0 +1,16 @@ +{ + "sourceType": "unambiguous", + "presets": [ + [ + "@babel/preset-env", + { + "targets": { + "chrome": 100 + } + } + ], + "@babel/preset-typescript", + "@babel/preset-react" + ], + "plugins": [] +} diff --git a/.storybook/main.js b/.storybook/main.js deleted file mode 100644 index c0c828e4..00000000 --- a/.storybook/main.js +++ /dev/null @@ -1,12 +0,0 @@ -module.exports = { - stories: ['../src/**/*.stories.mdx', '../src/**/*.stories.@(js|jsx|ts|tsx)'], - addons: [ - '@storybook/addon-links', - '@storybook/addon-essentials', - '@storybook/addon-interactions', - ], - framework: '@storybook/react', - docs: { - autodocs: true, - }, -}; diff --git a/.storybook/main.ts b/.storybook/main.ts new file mode 100644 index 00000000..5db299dc --- /dev/null +++ b/.storybook/main.ts @@ -0,0 +1,43 @@ +import { StorybookConfig } from '@storybook/react-webpack5'; + +const webpack = require('webpack'); +const config: StorybookConfig = { + stories: ['../src/**/*.stories.mdx', '../src/**/*.stories.@(js|jsx|ts|tsx)'], + addons: [ + '@storybook/addon-links', + '@storybook/addon-essentials', + '@storybook/addon-interactions', + ], + framework: { + name: '@storybook/react-webpack5', + options: {}, + }, + docs: { + autodocs: true, + }, + typescript: { + reactDocgen: 'react-docgen-typescript', + reactDocgenTypescriptOptions: { + compilerOptions: { + allowSyntheticDefaultImports: false, + esModuleInterop: false, + }, + }, + }, + webpackFinal: async (config, { configType }) => { + // `configType` has a value of 'DEVELOPMENT' or 'PRODUCTION' + // You can change the configuration based on that. + // 'PRODUCTION' is used when building the static version of storybook. + + config.plugins.push( + new webpack.DefinePlugin({ + __DEV__: configType === 'DEVELOPMENT', + }), + ); + + // Return the altered config + return config; + }, +}; + +export default config; diff --git a/.storybook/preview.js b/.storybook/preview.ts similarity index 100% rename from .storybook/preview.js rename to .storybook/preview.ts diff --git a/package.json b/package.json index c92feca0..749f7d6a 100644 --- a/package.json +++ b/package.json @@ -56,8 +56,8 @@ "release:next": "yarn run release --preRelease=next", "release:minor": "yarn run release minor", "release:patch": "yarn run release patch", - "storybook": "start-storybook -p 6006", - "build-storybook": "build-storybook" + "storybook": "storybook dev -p 6006", + "build-storybook": "storybook build" }, "repository": { "type": "git", @@ -86,17 +86,19 @@ }, "devDependencies": { "@babel/core": "^7.20.12", + "@babel/preset-env": "^7.20.2", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.18.6", "@commitlint/cli": "^17.4.0", "@commitlint/config-conventional": "^17.4.0", "@release-it/conventional-changelog": "^5.1.1", - "@storybook/addon-actions": "^6.5.15", - "@storybook/addon-essentials": "^6.5.15", - "@storybook/addon-interactions": "^6.5.15", - "@storybook/addon-links": "^6.5.15", - "@storybook/builder-webpack4": "^6.5.15", - "@storybook/manager-webpack4": "^6.5.15", - "@storybook/react": "^6.5.15", - "@storybook/testing-library": "^0.0.13", + "@storybook/addon-actions": "^7.0.0-beta.43", + "@storybook/addon-essentials": "^7.0.0-beta.43", + "@storybook/addon-interactions": "^7.0.0-beta.43", + "@storybook/addon-links": "^7.0.0-beta.43", + "@storybook/react": "^7.0.0-beta.43", + "@storybook/react-webpack5": "^7.0.0-beta.43", + "@storybook/testing-library": "^0.0.14-next.1", "@swc/core": "^1.3.25", "@swc/jest": "^0.2.24", "@testing-library/react": "^13.4.0", @@ -131,8 +133,10 @@ "release-it": "^15.6.0", "rimraf": "^3.0.2", "shelljs": "^0.8.5", + "storybook": "^7.0.0-beta.43", "tsup": "^6.5.0", - "typescript": "^4.9.4" + "typescript": "^4.9.4", + "webpack": "^5.75.0" }, "peerDependencies": { "jotai": ">=1.11.0", diff --git a/yarn.lock b/yarn.lock index 641cf2d4..149c64b1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10,7 +10,14 @@ "@jridgewell/gen-mapping" "^0.1.0" "@jridgewell/trace-mapping" "^0.3.9" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6", "@babel/code-frame@^7.5.5", "@babel/code-frame@^7.8.3": +"@aw-web-design/x-default-browser@1.4.88": + version "1.4.88" + resolved "https://registry.yarnpkg.com/@aw-web-design/x-default-browser/-/x-default-browser-1.4.88.tgz#33d869cb2a537cd6d2a8369d4dc8ea4988d4be89" + integrity sha512-AkEmF0wcwYC2QkhK703Y83fxWARttIWXDmQN8+cof8FmFZ5BRhnNXGymeb1S73bOCLfWjYELxtujL56idCN/XA== + dependencies: + default-browser-id "3.0.0" + +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== @@ -22,29 +29,7 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.10.tgz#9d92fa81b87542fff50e848ed585b4212c1d34ec" integrity sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg== -"@babel/core@7.12.9": - version "7.12.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.12.9.tgz#fd450c4ec10cdbb980e2928b7aa7a28484593fc8" - integrity sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.12.5" - "@babel/helper-module-transforms" "^7.12.1" - "@babel/helpers" "^7.12.5" - "@babel/parser" "^7.12.7" - "@babel/template" "^7.12.7" - "@babel/traverse" "^7.12.9" - "@babel/types" "^7.12.7" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.1" - json5 "^2.1.2" - lodash "^4.17.19" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/core@^7.1.0", "@babel/core@^7.11.6", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.20.12", "@babel/core@^7.7.5": +"@babel/core@^7.11.6", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.13.16", "@babel/core@^7.20.12", "@babel/core@^7.20.2", "@babel/core@^7.7.5": version "7.20.12" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.12.tgz#7930db57443c6714ad216953d1356dac0eb8496d" integrity sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg== @@ -65,7 +50,16 @@ json5 "^2.2.2" semver "^6.3.0" -"@babel/generator@^7.12.11", "@babel/generator@^7.12.5", "@babel/generator@^7.20.7", "@babel/generator@^7.7.2": +"@babel/generator@^7.12.11": + version "7.20.14" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.14.tgz#9fa772c9f86a46c6ac9b321039400712b96f64ce" + integrity sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg== + dependencies: + "@babel/types" "^7.20.7" + "@jridgewell/gen-mapping" "^0.3.2" + jsesc "^2.5.1" + +"@babel/generator@^7.20.7", "@babel/generator@^7.7.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.7.tgz#f8ef57c8242665c5929fe2e8d82ba75460187b4a" integrity sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw== @@ -89,7 +83,7 @@ "@babel/helper-explode-assignable-expression" "^7.18.6" "@babel/types" "^7.18.9" -"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.0", "@babel/helper-compilation-targets@^7.20.7": +"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.0", "@babel/helper-compilation-targets@^7.20.7": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz#a6cd33e93629f5eb473b021aac05df62c4cd09bb" integrity sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ== @@ -122,20 +116,6 @@ "@babel/helper-annotate-as-pure" "^7.18.6" regexpu-core "^5.2.1" -"@babel/helper-define-polyfill-provider@^0.1.5": - version "0.1.5" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.1.5.tgz#3c2f91b7971b9fc11fe779c945c014065dea340e" - integrity sha512-nXuzCSwlJ/WKr8qxzW816gwyT6VZgiJG17zR40fou70yfAcqjoNyTLl/DQ+FExw5Hx5KNqshmN8Ldl/r2N7cTg== - dependencies: - "@babel/helper-compilation-targets" "^7.13.0" - "@babel/helper-module-imports" "^7.12.13" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/traverse" "^7.13.0" - debug "^4.1.1" - lodash.debounce "^4.0.8" - resolve "^1.14.2" - semver "^6.1.2" - "@babel/helper-define-polyfill-provider@^0.3.3": version "0.3.3" resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz#8612e55be5d51f0cd1f36b4a5a83924e89884b7a" @@ -182,14 +162,14 @@ dependencies: "@babel/types" "^7.20.7" -"@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.18.6": +"@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== dependencies: "@babel/types" "^7.18.6" -"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11": +"@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11": version "7.20.11" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz#df4c7af713c557938c50ea3ad0117a7944b2f1b0" integrity sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg== @@ -210,12 +190,7 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-plugin-utils@7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" - integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.13.0", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": version "7.20.2" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== @@ -288,15 +263,6 @@ "@babel/traverse" "^7.20.5" "@babel/types" "^7.20.5" -"@babel/helpers@^7.12.5": - version "7.20.13" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.20.13.tgz#e3cb731fb70dc5337134cadc24cbbad31cc87ad2" - integrity sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg== - dependencies: - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.20.13" - "@babel/types" "^7.20.7" - "@babel/helpers@^7.20.7": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.20.7.tgz#04502ff0feecc9f20ecfaad120a18f011a8e6dce" @@ -320,7 +286,12 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.7.tgz#66fe23b3c8569220817d5feb8b9dcdc95bb4f71b" integrity sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg== -"@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.20.13": +"@babel/parser@^7.13.16": + version "7.20.15" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.15.tgz#eec9f36d8eaf0948bb88c87a46784b5ee9fd0c89" + integrity sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg== + +"@babel/parser@^7.20.13": version "7.20.13" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.13.tgz#ddf1eb5a813588d2fb1692b70c6fce75b945c088" integrity sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw== @@ -351,7 +322,7 @@ "@babel/helper-remap-async-to-generator" "^7.18.9" "@babel/plugin-syntax-async-generators" "^7.8.4" -"@babel/plugin-proposal-class-properties@^7.12.1", "@babel/plugin-proposal-class-properties@^7.18.6": +"@babel/plugin-proposal-class-properties@^7.13.0", "@babel/plugin-proposal-class-properties@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== @@ -368,17 +339,6 @@ "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-proposal-decorators@^7.12.12": - version "7.20.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.20.13.tgz#b6bea3b18e88443688fa7ed2cc06d2c60da9f4a7" - integrity sha512-7T6BKHa9Cpd7lCueHBBzP0nkXNina+h5giOZw+a8ZpMfPFY19VjJAjIxyFHuWkhCWgL6QMqRiY/wB1fLXzm6Mw== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.20.12" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-replace-supers" "^7.20.7" - "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/plugin-syntax-decorators" "^7.19.0" - "@babel/plugin-proposal-dynamic-import@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz#72bcf8d408799f547d759298c3c27c7e7faa4d94" @@ -387,14 +347,6 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-dynamic-import" "^7.8.3" -"@babel/plugin-proposal-export-default-from@^7.12.1": - version "7.18.10" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.18.10.tgz#091f4794dbce4027c03cf4ebc64d3fb96b75c206" - integrity sha512-5H2N3R2aQFxkV4PIBUR/i7PUSwgTZjouJKzI8eKswfIjT0PhvzkPn0t0wIS5zn6maQuvtT0t1oHtMUz61LOuow== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - "@babel/plugin-syntax-export-default-from" "^7.18.6" - "@babel/plugin-proposal-export-namespace-from@^7.18.9": version "7.18.9" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz#5f7313ab348cdb19d590145f9247540e94761203" @@ -419,7 +371,7 @@ "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-proposal-nullish-coalescing-operator@^7.12.1", "@babel/plugin-proposal-nullish-coalescing-operator@^7.18.6": +"@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8", "@babel/plugin-proposal-nullish-coalescing-operator@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz#fdd940a99a740e577d6c753ab6fbb43fdb9467e1" integrity sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA== @@ -435,16 +387,7 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-proposal-object-rest-spread@7.12.1": - version "7.12.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz#def9bd03cea0f9b72283dac0ec22d289c7691069" - integrity sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-transform-parameters" "^7.12.1" - -"@babel/plugin-proposal-object-rest-spread@^7.12.1", "@babel/plugin-proposal-object-rest-spread@^7.20.2": +"@babel/plugin-proposal-object-rest-spread@^7.20.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz#aa662940ef425779c75534a5c41e9d936edc390a" integrity sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg== @@ -463,7 +406,7 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-proposal-optional-chaining@^7.12.7", "@babel/plugin-proposal-optional-chaining@^7.18.9", "@babel/plugin-proposal-optional-chaining@^7.20.7": +"@babel/plugin-proposal-optional-chaining@^7.13.12", "@babel/plugin-proposal-optional-chaining@^7.18.9", "@babel/plugin-proposal-optional-chaining@^7.20.7": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.20.7.tgz#49f2b372519ab31728cc14115bb0998b15bfda55" integrity sha512-T+A7b1kfjtRM51ssoOfS1+wbyCVqorfyZhT99TvxxLMirPShD8CzKMRepMlCBGM5RpHMbn8s+5MMHnPstJH6mQ== @@ -472,7 +415,7 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -"@babel/plugin-proposal-private-methods@^7.12.1", "@babel/plugin-proposal-private-methods@^7.18.6": +"@babel/plugin-proposal-private-methods@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz#5209de7d213457548a98436fa2882f52f4be6bea" integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA== @@ -480,7 +423,7 @@ "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-proposal-private-property-in-object@^7.12.1", "@babel/plugin-proposal-private-property-in-object@^7.18.6": +"@babel/plugin-proposal-private-property-in-object@^7.18.6": version "7.20.5" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.20.5.tgz#309c7668f2263f1c711aa399b5a9a6291eef6135" integrity sha512-Vq7b9dUA12ByzB4EjQTPo25sFhY+08pQDBSZRtUAkj7lb7jahaHR5igera16QZ+3my1nYR4dKsNdYj5IjPHilQ== @@ -526,13 +469,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-decorators@^7.19.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.19.0.tgz#5f13d1d8fce96951bea01a10424463c9a5b3a599" - integrity sha512-xaBZUEDntt4faL1yN8oIFlhfXeQAWJW7CLKYsHTUqriCUbj8xOra8bfxxKGi/UwExPFBuPdH4XfHc9rGQhrVkQ== - dependencies: - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" @@ -540,13 +476,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-export-default-from@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.18.6.tgz#8df076711a4818c4ce4f23e61d622b0ba2ff84bc" - integrity sha512-Kr//z3ujSVNx6E9z9ih5xXXMqK07VVTuqPmqGe6Mss/zW5XPeLZeSDZoP9ab/hT4wPKqAgjl2PnhPrcpk8Seew== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-export-namespace-from@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" @@ -582,13 +511,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@7.12.1": - version "7.12.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz#9d9d357cc818aa7ae7935917c1257f67677a0926" - integrity sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-jsx@^7.17.12", "@babel/plugin-syntax-jsx@^7.18.6", "@babel/plugin-syntax-jsx@^7.7.2": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" @@ -617,7 +539,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-object-rest-spread@7.8.3", "@babel/plugin-syntax-object-rest-spread@^7.8.0", "@babel/plugin-syntax-object-rest-spread@^7.8.3": +"@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== @@ -659,7 +581,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.19.0" -"@babel/plugin-transform-arrow-functions@^7.12.1", "@babel/plugin-transform-arrow-functions@^7.18.6": +"@babel/plugin-transform-arrow-functions@^7.18.6": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz#bea332b0e8b2dab3dafe55a163d8227531ab0551" integrity sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ== @@ -682,14 +604,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-block-scoping@^7.12.12", "@babel/plugin-transform-block-scoping@^7.20.2": +"@babel/plugin-transform-block-scoping@^7.20.2": version "7.20.11" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.11.tgz#9f5a3424bd112a3f32fe0cf9364fbb155cff262a" integrity sha512-tA4N427a7fjf1P0/2I4ScsHGc5jcHPbb30xMbaTke2gxDuWpUfXDuX1FEymJwKk4tuGUvGcejAR6HdZVqmmPyw== dependencies: "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-classes@^7.12.1", "@babel/plugin-transform-classes@^7.20.2": +"@babel/plugin-transform-classes@^7.20.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.20.7.tgz#f438216f094f6bb31dc266ebfab8ff05aecad073" integrity sha512-LWYbsiXTPKl+oBlXUGlwNlJZetXD5Am+CyBdqhPsDVjM9Jc8jwBJFrKhHf900Kfk2eZG1y9MAG3UNajol7A4VQ== @@ -712,7 +634,7 @@ "@babel/helper-plugin-utils" "^7.20.2" "@babel/template" "^7.20.7" -"@babel/plugin-transform-destructuring@^7.12.1", "@babel/plugin-transform-destructuring@^7.20.2": +"@babel/plugin-transform-destructuring@^7.20.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz#8bda578f71620c7de7c93af590154ba331415454" integrity sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA== @@ -750,7 +672,7 @@ "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-syntax-flow" "^7.18.6" -"@babel/plugin-transform-for-of@^7.12.1", "@babel/plugin-transform-for-of@^7.18.8": +"@babel/plugin-transform-for-of@^7.18.8": version "7.18.8" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz#6ef8a50b244eb6a0bdbad0c7c61877e4e30097c1" integrity sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ== @@ -788,7 +710,7 @@ "@babel/helper-module-transforms" "^7.20.11" "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-modules-commonjs@^7.19.6": +"@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.19.6": version "7.20.11" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.20.11.tgz#8cb23010869bf7669fd4b3098598b6b2be6dc607" integrity sha512-S8e1f7WQ7cimJQ51JkAaDrEtohVEitXjgCGAS2N8S31Y42E+kWwfSz83LYz57QdBm7q9diARVqanIaH2oVgQnw== @@ -838,7 +760,7 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/helper-replace-supers" "^7.18.6" -"@babel/plugin-transform-parameters@^7.12.1", "@babel/plugin-transform-parameters@^7.20.1", "@babel/plugin-transform-parameters@^7.20.7": +"@babel/plugin-transform-parameters@^7.20.1", "@babel/plugin-transform-parameters@^7.20.7": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz#0ee349e9d1bc96e78e3b37a7af423a4078a7083f" integrity sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA== @@ -866,7 +788,7 @@ dependencies: "@babel/plugin-transform-react-jsx" "^7.18.6" -"@babel/plugin-transform-react-jsx@^7.12.12", "@babel/plugin-transform-react-jsx@^7.18.6": +"@babel/plugin-transform-react-jsx@^7.18.6", "@babel/plugin-transform-react-jsx@^7.19.0": version "7.20.13" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.20.13.tgz#f950f0b0c36377503d29a712f16287cedf886cbb" integrity sha512-MmTZx/bkUrfJhhYAYt3Urjm+h8DQGrPrnKQ94jLo7NLuOU+T89a7IByhKmrb8SKhrIYIQ0FN0CHMbnFRen4qNw== @@ -900,14 +822,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-shorthand-properties@^7.12.1", "@babel/plugin-transform-shorthand-properties@^7.18.6": +"@babel/plugin-transform-shorthand-properties@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz#6d6df7983d67b195289be24909e3f12a8f664dc9" integrity sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw== dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-spread@^7.12.1", "@babel/plugin-transform-spread@^7.19.0": +"@babel/plugin-transform-spread@^7.19.0": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz#c2d83e0b99d3bf83e07b11995ee24bf7ca09401e" integrity sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw== @@ -922,7 +844,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-template-literals@^7.12.1", "@babel/plugin-transform-template-literals@^7.18.9": +"@babel/plugin-transform-template-literals@^7.18.9": version "7.18.9" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz#04ec6f10acdaa81846689d63fae117dd9c243a5e" integrity sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA== @@ -960,7 +882,7 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/preset-env@^7.12.11": +"@babel/preset-env@^7.20.2": version "7.20.2" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.20.2.tgz#9b1642aa47bb9f43a86f9630011780dab7f86506" integrity sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg== @@ -1041,7 +963,7 @@ core-js-compat "^3.25.1" semver "^6.3.0" -"@babel/preset-flow@^7.12.1": +"@babel/preset-flow@^7.13.13", "@babel/preset-flow@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.18.6.tgz#83f7602ba566e72a9918beefafef8ef16d2810cb" integrity sha512-E7BDhL64W6OUqpuyHnSroLnqyRTcG6ZdOBl1OKI/QK/HJfplqK/S3sq1Cckx7oTodJ5yOXyfw7rEADJ6UjoQDQ== @@ -1061,7 +983,7 @@ "@babel/types" "^7.4.4" esutils "^2.0.2" -"@babel/preset-react@^7.12.10": +"@babel/preset-react@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.18.6.tgz#979f76d6277048dc19094c217b507f3ad517dd2d" integrity sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg== @@ -1073,7 +995,7 @@ "@babel/plugin-transform-react-jsx-development" "^7.18.6" "@babel/plugin-transform-react-pure-annotations" "^7.18.6" -"@babel/preset-typescript@^7.12.7": +"@babel/preset-typescript@^7.13.0", "@babel/preset-typescript@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz#ce64be3e63eddc44240c6358daefac17b3186399" integrity sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ== @@ -1082,7 +1004,7 @@ "@babel/helper-validator-option" "^7.18.6" "@babel/plugin-transform-typescript" "^7.18.6" -"@babel/register@^7.12.1": +"@babel/register@^7.13.16": version "7.18.9" resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.18.9.tgz#1888b24bc28d5cc41c412feb015e9ff6b96e439c" integrity sha512-ZlbnXDcNYHMR25ITwwNKT88JiaukkdVj/nG7r3wnuXkOTHc60Uy05PwMCPre0hSkY68E6zK3xz+vUJSP2jWmcw== @@ -1093,14 +1015,7 @@ pirates "^4.0.5" source-map-support "^0.5.16" -"@babel/runtime@7.7.2": - version "7.7.2" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.7.2.tgz#111a78002a5c25fc8e3361bedc9529c696b85a6a" - integrity sha512-JONRbXbTXc9WQE2mAZd1p0Z3DZ/6vaQIkgYMSTP3KjRCyd7rCZCcfhCyX+YjwcKxcZ82UrxbRD358bpExNgrjw== - dependencies: - regenerator-runtime "^0.13.2" - -"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.13.10", "@babel/runtime@^7.17.8", "@babel/runtime@^7.18.3", "@babel/runtime@^7.5.0", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4": +"@babel/runtime@^7.10.2", "@babel/runtime@^7.13.10", "@babel/runtime@^7.17.8", "@babel/runtime@^7.18.3", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4": version "7.20.13" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.13.tgz#7055ab8a7cff2b8f6058bf6ae45ff84ad2aded4b" integrity sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA== @@ -1114,14 +1029,7 @@ dependencies: regenerator-runtime "^0.13.11" -"@babel/runtime@~7.5.4": - version "7.5.5" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.5.5.tgz#74fba56d35efbeca444091c7850ccd494fd2f132" - integrity sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ== - dependencies: - regenerator-runtime "^0.13.2" - -"@babel/template@^7.12.7", "@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.3.3": +"@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.3.3": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.20.7.tgz#a15090c2839a83b02aa996c0b4994005841fd5a8" integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw== @@ -1130,7 +1038,7 @@ "@babel/parser" "^7.20.7" "@babel/types" "^7.20.7" -"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.20.13", "@babel/traverse@^7.20.5": +"@babel/traverse@^7.1.6", "@babel/traverse@^7.20.5": version "7.20.13" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.13.tgz#817c1ba13d11accca89478bd5481b2d168d07473" integrity sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ== @@ -1162,7 +1070,7 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.12.11", "@babel/types@^7.12.7", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.2.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": +"@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.2.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.20.7.tgz#54ec75e252318423fc07fb644dc6a58a64c09b7f" integrity sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg== @@ -1181,14 +1089,6 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@cnakazawa/watch@^1.0.3": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" - integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== - dependencies: - exec-sh "^0.3.2" - minimist "^1.2.0" - "@colors/colors@1.5.0": version "1.5.0" resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" @@ -1361,52 +1261,6 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@design-systems/utils@2.12.0": - version "2.12.0" - resolved "https://registry.yarnpkg.com/@design-systems/utils/-/utils-2.12.0.tgz#955c108be07cb8f01532207cbfea8f848fa760c9" - integrity sha512-Y/d2Zzr+JJfN6u1gbuBUb1ufBuLMJJRZQk+dRmw8GaTpqKx5uf7cGUYGTwN02dIb3I+Tf+cW8jcGBTRiFxdYFg== - dependencies: - "@babel/runtime" "^7.11.2" - clsx "^1.0.4" - focus-lock "^0.8.0" - react-merge-refs "^1.0.0" - -"@devtools-ds/object-inspector@^1.1.2": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@devtools-ds/object-inspector/-/object-inspector-1.2.1.tgz#2b380ed475d898d2828e7855c2dc2c82f091d326" - integrity sha512-nrAVVj4c4Iv9958oE4HA7Mk6T+4Mn/4xBRlFDeX4Ps6SMzsqO8bKhw/y6+bOfNyb/TYHmC0/pnPS68GDVZcg5Q== - dependencies: - "@babel/runtime" "7.7.2" - "@devtools-ds/object-parser" "^1.2.1" - "@devtools-ds/themes" "^1.2.1" - "@devtools-ds/tree" "^1.2.1" - clsx "1.1.0" - -"@devtools-ds/object-parser@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@devtools-ds/object-parser/-/object-parser-1.2.1.tgz#5ab709a2db807ce99cb12bf35511379d6e47a3b8" - integrity sha512-6qB+THhQfJqXyHn8wpJ1KFxXcbpLTlRyCVmkelhr0c1+MPLZcC+0XJxpVZ1AOEXPa6CWVZThBYSCvnYQEvfCqw== - dependencies: - "@babel/runtime" "~7.5.4" - -"@devtools-ds/themes@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@devtools-ds/themes/-/themes-1.2.1.tgz#060a0a1a2b38f68b01deca62240d2c94585f00dd" - integrity sha512-4/KFsHnokGxUq8CSCchINcVBb6fQ74HtEfNtMuitGtGg3VCRV0kaVSOsz6wzShzhLEaVLd5coSRQKaZj7yx72w== - dependencies: - "@babel/runtime" "~7.5.4" - "@design-systems/utils" "2.12.0" - clsx "1.1.0" - -"@devtools-ds/tree@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@devtools-ds/tree/-/tree-1.2.1.tgz#88d44dbbf96101fd8f18af92e514ed9dd00c8ceb" - integrity sha512-2ZHG28oWJno0gD+20EoSJO0yffm6JS5r7YzYhGMkrnLGvcCRZuwXSxMmIshSPLIR0cjidiAfGCqsrigHIR4ZQA== - dependencies: - "@babel/runtime" "7.7.2" - "@devtools-ds/themes" "^1.2.1" - clsx "1.1.0" - "@discoveryjs/json-ext@^0.5.3": version "0.5.7" resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" @@ -1501,16 +1355,126 @@ resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz#ea89004119dc42db2e1dba0f97d553f7372f6fcb" integrity sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg== +"@esbuild/android-arm64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz#cf91e86df127aa3d141744edafcba0abdc577d23" + integrity sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg== + "@esbuild/android-arm@0.15.18": version "0.15.18" resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.15.18.tgz#266d40b8fdcf87962df8af05b76219bc786b4f80" integrity sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw== +"@esbuild/android-arm@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.16.17.tgz#025b6246d3f68b7bbaa97069144fb5fb70f2fff2" + integrity sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw== + +"@esbuild/android-x64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.16.17.tgz#c820e0fef982f99a85c4b8bfdd582835f04cd96e" + integrity sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ== + +"@esbuild/darwin-arm64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz#edef4487af6b21afabba7be5132c26d22379b220" + integrity sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w== + +"@esbuild/darwin-x64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz#42829168730071c41ef0d028d8319eea0e2904b4" + integrity sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg== + +"@esbuild/freebsd-arm64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz#1f4af488bfc7e9ced04207034d398e793b570a27" + integrity sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw== + +"@esbuild/freebsd-x64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz#636306f19e9bc981e06aa1d777302dad8fddaf72" + integrity sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug== + +"@esbuild/linux-arm64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz#a003f7ff237c501e095d4f3a09e58fc7b25a4aca" + integrity sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g== + +"@esbuild/linux-arm@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz#b591e6a59d9c4fe0eeadd4874b157ab78cf5f196" + integrity sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ== + +"@esbuild/linux-ia32@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz#24333a11027ef46a18f57019450a5188918e2a54" + integrity sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg== + "@esbuild/linux-loong64@0.15.18": version "0.15.18" resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.15.18.tgz#128b76ecb9be48b60cf5cfc1c63a4f00691a3239" integrity sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ== +"@esbuild/linux-loong64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz#d5ad459d41ed42bbd4d005256b31882ec52227d8" + integrity sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ== + +"@esbuild/linux-mips64el@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz#4e5967a665c38360b0a8205594377d4dcf9c3726" + integrity sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw== + +"@esbuild/linux-ppc64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz#206443a02eb568f9fdf0b438fbd47d26e735afc8" + integrity sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g== + +"@esbuild/linux-riscv64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz#c351e433d009bf256e798ad048152c8d76da2fc9" + integrity sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw== + +"@esbuild/linux-s390x@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz#661f271e5d59615b84b6801d1c2123ad13d9bd87" + integrity sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w== + +"@esbuild/linux-x64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz#e4ba18e8b149a89c982351443a377c723762b85f" + integrity sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw== + +"@esbuild/netbsd-x64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz#7d4f4041e30c5c07dd24ffa295c73f06038ec775" + integrity sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA== + +"@esbuild/openbsd-x64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz#970fa7f8470681f3e6b1db0cc421a4af8060ec35" + integrity sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg== + +"@esbuild/sunos-x64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz#abc60e7c4abf8b89fb7a4fe69a1484132238022c" + integrity sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw== + +"@esbuild/win32-arm64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz#7b0ff9e8c3265537a7a7b1fd9a24e7bd39fcd87a" + integrity sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw== + +"@esbuild/win32-ia32@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz#e90fe5267d71a7b7567afdc403dfd198c292eb09" + integrity sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig== + +"@esbuild/win32-x64@0.16.17": + version "0.16.17" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz#c5a1a4bfe1b57f0c3e61b29883525c6da3e5c091" + integrity sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q== + "@eslint/eslintrc@^1.4.1": version "1.4.1" resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.4.1.tgz#af58772019a2d271b7e2d4c23ff4ddcba3ccfb3e" @@ -1526,6 +1490,11 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" +"@fal-works/esbuild-plugin-global-externals@^2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@fal-works/esbuild-plugin-global-externals/-/esbuild-plugin-global-externals-2.1.2.tgz#c05ed35ad82df8e6ac616c68b92c2282bd083ba4" + integrity sha512-cEee/Z+I12mZcFJshKcCqC8tuX5hG3s+d+9nZ3LabqKF1vKdF41B92pJVCBggjAGORAeOzyyDDKrZwIkLffeOQ== + "@floating-ui/core@^1.1.0": version "1.1.1" resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.1.1.tgz#cf8b4cdd8987c687329a6099561764d8a16f2f22" @@ -1564,11 +1533,6 @@ resolved "https://registry.yarnpkg.com/@fontsource/jetbrains-mono/-/jetbrains-mono-4.5.12.tgz#d965dca932f0ecf5379013f4dff3aec7b817b91b" integrity sha512-LJF1ala1/u+wXZmESFqIk08FA9yGX4/uAAleCHmXUMgEjvNAYFHUQQ7eK5hQQoBOwh99cU5suTrqYqEkgzwzPA== -"@gar/promisify@^1.0.1": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" - integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== - "@humanwhocodes/config-array@^0.11.8": version "0.11.8" resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.8.tgz#03595ac2075a4dc0f191cc2131de14fbd7d410b9" @@ -1780,27 +1744,6 @@ jest-haste-map "^29.3.1" slash "^3.0.0" -"@jest/transform@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" - integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== - dependencies: - "@babel/core" "^7.1.0" - "@jest/types" "^26.6.2" - babel-plugin-istanbul "^6.0.0" - chalk "^4.0.0" - convert-source-map "^1.4.0" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.2.4" - jest-haste-map "^26.6.2" - jest-regex-util "^26.0.0" - jest-util "^26.6.2" - micromatch "^4.0.2" - pirates "^4.0.1" - slash "^3.0.0" - source-map "^0.6.1" - write-file-atomic "^3.0.0" - "@jest/transform@^29.3.1": version "29.3.1" resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.3.1.tgz#1e6bd3da4af50b5c82a539b7b1f3770568d6e36d" @@ -1822,17 +1765,6 @@ slash "^3.0.0" write-file-atomic "^4.0.1" -"@jest/types@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" - integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^15.0.0" - chalk "^4.0.0" - "@jest/types@^27.5.1": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" @@ -1912,6 +1844,11 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" +"@juggle/resize-observer@^3.3.1": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@juggle/resize-observer/-/resize-observer-3.4.0.tgz#08d6c5e20cf7e4cc02fd181c4b0c225cd31dbb60" + integrity sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA== + "@mantine/core@^5.10.3": version "5.10.3" resolved "https://registry.yarnpkg.com/@mantine/core/-/core-5.10.3.tgz#9c7c0dbfada6b6ccbf9d51315d1926bad8578393" @@ -1949,48 +1886,13 @@ resolved "https://registry.yarnpkg.com/@mantine/utils/-/utils-5.10.3.tgz#724e5076812bffdb15a23859f23b9e78c1774239" integrity sha512-ZfR1wouA/rz3xTOb2wBnrQpIiyjLcCLLvbUo7rzaG3LhFy7UoGjZ6uqIW9qDrzs7SR4tETRfMxedYagjcoCiEg== -"@mdx-js/mdx@^1.6.22": - version "1.6.22" - resolved "https://registry.yarnpkg.com/@mdx-js/mdx/-/mdx-1.6.22.tgz#8a723157bf90e78f17dc0f27995398e6c731f1ba" - integrity sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA== - dependencies: - "@babel/core" "7.12.9" - "@babel/plugin-syntax-jsx" "7.12.1" - "@babel/plugin-syntax-object-rest-spread" "7.8.3" - "@mdx-js/util" "1.6.22" - babel-plugin-apply-mdx-type-prop "1.6.22" - babel-plugin-extract-import-names "1.6.22" - camelcase-css "2.0.1" - detab "2.0.4" - hast-util-raw "6.0.1" - lodash.uniq "4.5.0" - mdast-util-to-hast "10.0.1" - remark-footnotes "2.0.0" - remark-mdx "1.6.22" - remark-parse "8.0.3" - remark-squeeze-paragraphs "4.0.0" - style-to-object "0.3.0" - unified "9.2.0" - unist-builder "2.0.3" - unist-util-visit "2.0.3" - -"@mdx-js/react@^1.6.22": - version "1.6.22" - resolved "https://registry.yarnpkg.com/@mdx-js/react/-/react-1.6.22.tgz#ae09b4744fddc74714ee9f9d6f17a66e77c43573" - integrity sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg== - -"@mdx-js/util@1.6.22": - version "1.6.22" - resolved "https://registry.yarnpkg.com/@mdx-js/util/-/util-1.6.22.tgz#219dfd89ae5b97a8801f015323ffa4b62f45718b" - integrity sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA== - -"@mrmlnc/readdir-enhanced@^2.2.1": +"@mdx-js/react@^2.1.5": version "2.2.1" - resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" - integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== + resolved "https://registry.yarnpkg.com/@mdx-js/react/-/react-2.2.1.tgz#5a70592418d52b1b01538c37e795034601c96ec5" + integrity sha512-YdXcMcEnqZhzql98RNrqYo9cEhTTesBiCclEtoiQUbJwx87q9453GTapYU6kJ8ZZ2ek1Vp25SiAXEFy5O/eAPw== dependencies: - call-me-maybe "^1.0.1" - glob-to-regexp "^0.3.0" + "@types/mdx" "^2.0.0" + "@types/react" ">=16" "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -2005,11 +1907,6 @@ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== -"@nodelib/fs.stat@^1.1.2": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" - integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== - "@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": version "1.2.8" resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" @@ -2018,22 +1915,6 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@npmcli/fs@^1.0.0": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" - integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== - dependencies: - "@gar/promisify" "^1.0.1" - semver "^7.3.5" - -"@npmcli/move-file@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" - integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== - dependencies: - mkdirp "^1.0.4" - rimraf "^3.0.2" - "@octokit/auth-token@^3.0.0": version "3.0.2" resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-3.0.2.tgz#a0fc8de149fd15876e1ac78f6525c1c5ab48435f" @@ -2147,7 +2028,7 @@ tiny-glob "^0.2.9" tslib "^2.4.0" -"@pmmmwh/react-refresh-webpack-plugin@^0.5.3": +"@pmmmwh/react-refresh-webpack-plugin@^0.5.5": version "0.5.10" resolved "https://registry.yarnpkg.com/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.10.tgz#2eba163b8e7dbabb4ce3609ab5e32ab63dda3ef8" integrity sha512-j0Ya0hCFZPd4x40qLzbhGsh9TMtdb+CJQiso+WxLOPNasohq9cc5SNUcwsZaRH6++Xh91Xkm/xHCkuIiIu0LUA== @@ -2309,518 +2190,513 @@ dependencies: "@sinonjs/commons" "^1.7.0" -"@storybook/addon-actions@6.5.15", "@storybook/addon-actions@^6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-6.5.15.tgz#ba737561dbf8a358ea8bc588f3da9fddd1a4267e" - integrity sha512-cnLzVK1S+EydFDSuvxMmMAxVqNXijBGdV9QTgsu6ys5sOkoiXRETKZmxuN8/ZRbkfc4N+1KAylSCZOOHzBQTBQ== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/components" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.15" - core-js "^3.8.2" - fast-deep-equal "^3.1.3" - global "^4.4.0" +"@storybook/addon-actions@7.0.0-beta.43", "@storybook/addon-actions@^7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-7.0.0-beta.43.tgz#cbbd1f11a0e1a553f59948a990d9f36ed79be7ea" + integrity sha512-cl3Vx1oyH8qASpzF3vUFsmk91v2E4D7bOJc3VR1TrCaXuPBVPO43ed0B2uUPHRU6SeMXD7uqJh+jQbyRSXBZbg== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/theming" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + dequal "^2.0.2" lodash "^4.17.21" polished "^4.2.2" prop-types "^15.7.2" - react-inspector "^5.1.0" - regenerator-runtime "^0.13.7" - telejson "^6.0.8" + react-inspector "^6.0.0" + telejson "^7.0.3" ts-dedent "^2.0.0" - util-deprecate "^1.0.2" uuid-browser "^3.1.0" -"@storybook/addon-backgrounds@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addon-backgrounds/-/addon-backgrounds-6.5.15.tgz#bb97df61a9436f6f5a61f751f4f3fedcfe19fb84" - integrity sha512-9ddB3QIL8mRurf7TvYG1P9i1sW0b8Iik3kGlHggKogHER9WJPzbiUeH0XDjkASSa4rMCZdYn5CZKNkIAoJ2jdA== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/components" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.15" - core-js "^3.8.2" - global "^4.4.0" +"@storybook/addon-backgrounds@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-backgrounds/-/addon-backgrounds-7.0.0-beta.43.tgz#96d3bce37ea0b2f79e6c17cc810d5dea7023dd3e" + integrity sha512-qo1C4ik1uMQ04jgpox3C5K5Sj+Li4tCgj96bFt4wAYma+qXcbzv52v7W1JBrFsrZCtgc9PObKgmKca3OgISLUA== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/theming" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" memoizerific "^1.11.3" - regenerator-runtime "^0.13.7" ts-dedent "^2.0.0" - util-deprecate "^1.0.2" -"@storybook/addon-controls@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addon-controls/-/addon-controls-6.5.15.tgz#2a1f590d5624f658561b8e0ff144667248baf907" - integrity sha512-q5y0TvD0stvQoJZ2PnFmmKIRNSOI4/k2NKyZq//J2cBUBcP1reYlFxdsNwLZWmAFpSIkc2+nsliEzNxU1WByoA== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/components" "6.5.15" - "@storybook/core-common" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/node-logger" "6.5.15" - "@storybook/store" "6.5.15" - "@storybook/theming" "6.5.15" - core-js "^3.8.2" +"@storybook/addon-controls@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-controls/-/addon-controls-7.0.0-beta.43.tgz#988e0891c0b69bd84482864e21d4bdf9c24b2089" + integrity sha512-Q2/ecV/V6upIE+C4hLCRjd3PJsCnkm7uNk/aSpHsHRKBGjUtBX/+l6sZH6v3byt7V/T+YLAq7xfx1YD+fYwBLg== + dependencies: + "@storybook/blocks" "7.0.0-beta.43" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/core-common" "7.0.0-beta.43" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/node-logger" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/theming" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" lodash "^4.17.21" ts-dedent "^2.0.0" -"@storybook/addon-docs@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-6.5.15.tgz#d5f4b991636953f30daea6aa89d5bfdfa97b9116" - integrity sha512-k3LAu+wVp6pNhfh6B1soCRl6+7sNTNxtqy6WTrIeVJVCGbXbyc5s7gQ48gJ4WAk6meoDEZbypiP4NK1El03YLg== - dependencies: - "@babel/plugin-transform-react-jsx" "^7.12.12" - "@babel/preset-env" "^7.12.11" - "@jest/transform" "^26.6.2" - "@mdx-js/react" "^1.6.22" - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/components" "6.5.15" - "@storybook/core-common" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/docs-tools" "6.5.15" - "@storybook/mdx1-csf" "^0.0.1" - "@storybook/node-logger" "6.5.15" - "@storybook/postinstall" "6.5.15" - "@storybook/preview-web" "6.5.15" - "@storybook/source-loader" "6.5.15" - "@storybook/store" "6.5.15" - "@storybook/theming" "6.5.15" - babel-loader "^8.0.0" - core-js "^3.8.2" - fast-deep-equal "^3.1.3" - global "^4.4.0" - lodash "^4.17.21" - regenerator-runtime "^0.13.7" +"@storybook/addon-docs@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-7.0.0-beta.43.tgz#f7f9bf50fab71f219ef98a635b5d867340f9aae8" + integrity sha512-EBCGpaI8gSdpNRLfOqfV7C5VFxl6HROgvHG00XdUnAVJVTuJX0H6SNur2BBRK+74BuAQHXOOeFjmvGJtiGhbAg== + dependencies: + "@babel/core" "^7.20.2" + "@babel/plugin-transform-react-jsx" "^7.19.0" + "@jest/transform" "^29.3.1" + "@mdx-js/react" "^2.1.5" + "@storybook/blocks" "7.0.0-beta.43" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/csf-plugin" "7.0.0-beta.43" + "@storybook/csf-tools" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/mdx2-csf" next + "@storybook/node-logger" "7.0.0-beta.43" + "@storybook/postinstall" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/theming" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + fs-extra "^11.1.0" remark-external-links "^8.0.0" remark-slug "^6.0.0" ts-dedent "^2.0.0" - util-deprecate "^1.0.2" -"@storybook/addon-essentials@^6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addon-essentials/-/addon-essentials-6.5.15.tgz#cfbf6cacfbc7d14ac30aab118efcac818f0814ba" - integrity sha512-m3EY6BhUk6Z9Et7P5wGaRGNoEDHzJIOsLbGS/4IXvIoDfrqmNIilqUQl8kfDqpVdBSFprvpacHpKpLosu9H37w== - dependencies: - "@storybook/addon-actions" "6.5.15" - "@storybook/addon-backgrounds" "6.5.15" - "@storybook/addon-controls" "6.5.15" - "@storybook/addon-docs" "6.5.15" - "@storybook/addon-measure" "6.5.15" - "@storybook/addon-outline" "6.5.15" - "@storybook/addon-toolbars" "6.5.15" - "@storybook/addon-viewport" "6.5.15" - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/core-common" "6.5.15" - "@storybook/node-logger" "6.5.15" - core-js "^3.8.2" - regenerator-runtime "^0.13.7" +"@storybook/addon-essentials@^7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-essentials/-/addon-essentials-7.0.0-beta.43.tgz#48ff1c6aff93ae3c4c52e05d38b84703a33c64dd" + integrity sha512-67H7m+REcKVAh/eR30EIvMzA78ShSDAKyQp9qHDH2wmjULbO4fXa9lkxufKX3vmhLVS7dZM++VlBdZNykL3n1Q== + dependencies: + "@storybook/addon-actions" "7.0.0-beta.43" + "@storybook/addon-backgrounds" "7.0.0-beta.43" + "@storybook/addon-controls" "7.0.0-beta.43" + "@storybook/addon-docs" "7.0.0-beta.43" + "@storybook/addon-highlight" "7.0.0-beta.43" + "@storybook/addon-measure" "7.0.0-beta.43" + "@storybook/addon-outline" "7.0.0-beta.43" + "@storybook/addon-toolbars" "7.0.0-beta.43" + "@storybook/addon-viewport" "7.0.0-beta.43" + "@storybook/core-common" "7.0.0-beta.43" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/node-logger" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" ts-dedent "^2.0.0" -"@storybook/addon-interactions@^6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addon-interactions/-/addon-interactions-6.5.15.tgz#d176a47fa45bbc41cd9ecd4f672bdd19af49bbe5" - integrity sha512-9mDhkKJeWPvfrSBvuE5zn3DAKTXw37ZT21jkQzIt+dUEu0X3jCLY1dWel3Rbr9JI/PLnUnANDHOY/YtFUfrK9Q== - dependencies: - "@devtools-ds/object-inspector" "^1.1.2" - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/components" "6.5.15" - "@storybook/core-common" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/instrumenter" "6.5.15" - "@storybook/theming" "6.5.15" - core-js "^3.8.2" - global "^4.4.0" +"@storybook/addon-highlight@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-highlight/-/addon-highlight-7.0.0-beta.43.tgz#3b0bcbfed3f44a40498edadf71115aadf919d586" + integrity sha512-XMFTqqJbDDPU3E9TAihMKJQTTV5q7yAUjWHkTlUJyG8sefgl8zyaPZ4yd7INN+ZznbtThySzz10gPR921ny0Zg== + dependencies: + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/preview-api" "7.0.0-beta.43" + +"@storybook/addon-interactions@^7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-interactions/-/addon-interactions-7.0.0-beta.43.tgz#ca52f9622b5fe3e734e68c40f0d6ed1ce9d36a04" + integrity sha512-/RJd6qSG+UM0Op1cywN9ZcAlCOd0CLWijoFHED07Me2RLM5LSqcSxzi+3o78qxnoXmf+mRGiBF92S8DYi1IzvQ== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/core-common" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/instrumenter" "7.0.0-beta.43" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/theming" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" jest-mock "^27.0.6" polished "^4.2.2" ts-dedent "^2.2.0" -"@storybook/addon-links@^6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-6.5.15.tgz#97508726090a006f6c042a687ec89496c96436c4" - integrity sha512-L7Q3u/xEUuy1uPq8ttjDfvDj19Hr2Crq/Us0RfowfGAAzOb7fCoiUJDP37ADtRUlCYyuKM5V/nHxN8eGpWtugw== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.15" - "@types/qs" "^6.9.5" - core-js "^3.8.2" - global "^4.4.0" +"@storybook/addon-links@^7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-7.0.0-beta.43.tgz#331ef9374077a1b3fba29c3f693c29eb6b7fe71d" + integrity sha512-uzLE4dDBW13DYXnqpELCXnY4/bPah/3/Q081mi7bnLaHf5Z6y1DoVA6WaxSJjmTTCe8+51hlmcXsLp1cVorlNQ== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/csf" next + "@storybook/global" "^5.0.0" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/router" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" prop-types "^15.7.2" - qs "^6.10.0" - regenerator-runtime "^0.13.7" ts-dedent "^2.0.0" -"@storybook/addon-measure@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addon-measure/-/addon-measure-6.5.15.tgz#a174bf498168e52469f602a8d6ba6160d4b8a9d6" - integrity sha512-j77WX/v6qpWK8ZuYscWLIc+Am4/WOJRsVgyXLIw1EZIviQsjoXPo7mmyoTneEIbbHfPtWlLRbtmkjh8DAVDrCA== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/components" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - core-js "^3.8.2" - global "^4.4.0" - -"@storybook/addon-outline@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addon-outline/-/addon-outline-6.5.15.tgz#7cf9127f3d321136d6780ea2db525b4fd2678281" - integrity sha512-8yGEZQOYypnliU3rsakoZlgT4Pkq8iOhX9JclVXZL/fJMQWFQGCsXqlLaRn8sx7qsa+21PPxY5bd2+Hv/Au4zQ== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/components" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - core-js "^3.8.2" - global "^4.4.0" - regenerator-runtime "^0.13.7" +"@storybook/addon-measure@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-measure/-/addon-measure-7.0.0-beta.43.tgz#cd14337207a9f7368bdaf5b10381d570327d45d0" + integrity sha512-IK+kTOWTbzLtnIlqxG9CzKK/EB8+DJjHBV3aLsaRCCN6+x+CP+uoNplCJcrBEW5zJ5l1BBun1Fb5Mf3RCP5BqA== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + +"@storybook/addon-outline@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-outline/-/addon-outline-7.0.0-beta.43.tgz#8aad90076104e2422ccc8d917b69706a0d84c765" + integrity sha512-Q8r/AqvI+m900jTjgatODHvPE+MC+/vTaz324r8xjBiNgQzrS+gp8dV8zlNqz/8YtvV4hN6qJNkFsxJCmZQytA== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" ts-dedent "^2.0.0" -"@storybook/addon-toolbars@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addon-toolbars/-/addon-toolbars-6.5.15.tgz#6c11c9cbcc958ffe881c04cd5f04c2f47ed22f44" - integrity sha512-btwDTgElmaaT0dBRASABbTpq6m1UiQXQmLUmxfjLxVC3I2SK5tyJKbPQ2hVLFAQHK4cQn4u45BxdZ5LDpJ830A== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/components" "6.5.15" - "@storybook/theming" "6.5.15" - core-js "^3.8.2" - regenerator-runtime "^0.13.7" - -"@storybook/addon-viewport@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-6.5.15.tgz#c30d0f865d86658c380d31f1ae3589392046e23b" - integrity sha512-oOiVzgFMlTnzPLVoHWQNzWdmpksrUyT6Aq8ZOyBPNMQ0RN2doIgFr7W53nZ1OBB5cPQx9q2FgWwzJ7Tawo+iVA== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/components" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/theming" "6.5.15" - core-js "^3.8.2" - global "^4.4.0" +"@storybook/addon-toolbars@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-toolbars/-/addon-toolbars-7.0.0-beta.43.tgz#aca5542216f9df1b2d5c2d4ac16ca5bdeb059093" + integrity sha512-j5v6xuva4oezIDUu/EDlgqT++atMv8XftPMNq8CmvPMeUxI4iIu8cEnGJ7xeRedgGg/zIdSN1ttNG77E2I87bg== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/theming" "7.0.0-beta.43" + +"@storybook/addon-viewport@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-7.0.0-beta.43.tgz#897a464367db795cbe5ec9e3b06cc633d6e6a303" + integrity sha512-XhiS3o6M4DTkPfetad+HqSw1wZzs+69YY3WWChuQ5px3NsJ8Lp77ew0wYfQwRf8WdrhnUtx1GRKEnU0XW4dHDw== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/theming" "7.0.0-beta.43" memoizerific "^1.11.3" prop-types "^15.7.2" - regenerator-runtime "^0.13.7" - -"@storybook/addons@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-6.5.15.tgz#3c3fafbf3c9ce2182d652cb6682f6581ba6580e1" - integrity sha512-xT31SuSX+kYGyxCNK2nqL7WTxucs3rSmhiCLovJcUjYk+QquV3c2c53Ki7lwwdDbzfXFcNAe0HJ4hoTN4jhn0Q== - dependencies: - "@storybook/api" "6.5.15" - "@storybook/channels" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.15" - "@storybook/theming" "6.5.15" - "@types/webpack-env" "^1.16.0" - core-js "^3.8.2" - global "^4.4.0" - regenerator-runtime "^0.13.7" - -"@storybook/api@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/api/-/api-6.5.15.tgz#a189dac82a57ae9cfac43c887207b1075a2a2e96" - integrity sha512-BBE0KXKvj1/3jTghbIoWfrcDM0t+xO7EYtWWAXD6XlhGsZVD2Dy82Z52ONyLulMDRpMWl0OYy3h6A1YnFUH25w== - dependencies: - "@storybook/channels" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.15" - "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.5.15" - core-js "^3.8.2" - fast-deep-equal "^3.1.3" - global "^4.4.0" + +"@storybook/addons@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-7.0.0-beta.43.tgz#3a8250a5530b35f2d1dce6c3e89a7e6f23bcf147" + integrity sha512-6AcQuSIhEnou/Pf/Vel2MzTFupBdiK1AYTsWDgMdwv9bxZkkkXqPlfaTmi7+wSzh6UxU5lkh4FJbKlIv5Fm6Kg== + dependencies: + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + +"@storybook/api@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/api/-/api-7.0.0-beta.43.tgz#a5f2a4f8e6a5acc90f86951ef100220eb78729c4" + integrity sha512-vo6mEFy2d4mJxQyGd0H0xbrRqbKGFdEWEPV52nykTI/MFhUS2gXvXDCMtf9nhTioWRAQ4a272yO0UGmUgKEwpA== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/manager-api" "7.0.0-beta.43" + +"@storybook/blocks@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/blocks/-/blocks-7.0.0-beta.43.tgz#66010980ddc16e916db015ab938e7501c9e507cc" + integrity sha512-9HlD3dP3zZea1RGKLRBTL9OlygH5HLaekMEMRj8mtP1yM1ZAFpGN1Yz/TiRDjljOd7iKmBRtbY1t4vYn9tyJJg== + dependencies: + "@storybook/channels" "7.0.0-beta.43" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/csf" next + "@storybook/docs-tools" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/theming" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + "@types/lodash" "^4.14.167" + color-convert "^2.0.1" + dequal "^2.0.2" lodash "^4.17.21" + markdown-to-jsx "^7.1.8" memoizerific "^1.11.3" - regenerator-runtime "^0.13.7" - store2 "^2.12.0" - telejson "^6.0.8" + polished "^4.2.2" + react-colorful "^5.1.2" ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/builder-webpack4@6.5.15", "@storybook/builder-webpack4@^6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/builder-webpack4/-/builder-webpack4-6.5.15.tgz#8050b2eec84e055eee9b181e067d9a8aa76e252a" - integrity sha512-1ZkMECUUdiYplhlgyUF5fqW3XU7eWNDJbuPUguyDOeidgJ111WZzBcLuKj+SNrzdNNgXwROCWAFybiNnX33YHQ== +"@storybook/builder-manager@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/builder-manager/-/builder-manager-7.0.0-beta.43.tgz#f43f89049a979732a26957c01d4e2ce9d5bafe10" + integrity sha512-gsQYDgrf9Z+Y3lMKv7/ENbua/uqJHLaPa3fI+dIiGOD9aRWyZYf85YYV4P8jQICipYVmjQgzPl8XFm4M1h0zSQ== + dependencies: + "@fal-works/esbuild-plugin-global-externals" "^2.1.2" + "@storybook/core-common" "7.0.0-beta.43" + "@storybook/manager" "7.0.0-beta.43" + "@storybook/node-logger" "7.0.0-beta.43" + "@types/ejs" "^3.1.1" + "@types/find-cache-dir" "^3.2.1" + "@yarnpkg/esbuild-plugin-pnp" "^3.0.0-rc.10" + browser-assert "^1.2.1" + ejs "^3.1.8" + esbuild "^0.16.4" + esbuild-plugin-alias "^0.2.1" + express "^4.17.3" + find-cache-dir "^3.0.0" + fs-extra "^11.1.0" + process "^0.11.10" + slash "^3.0.0" + util "^0.12.4" + +"@storybook/builder-webpack5@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/builder-webpack5/-/builder-webpack5-7.0.0-beta.43.tgz#f8ca39de1dd1132197f2e969add412c1250ad4d5" + integrity sha512-chGSSVsy7TzZ2nbxSKEQtvwtABbwjkr/artgN883rZ5S399XOiaYc5Jli/LlnphCCVTJTpg22BAbjNopPl6I4g== dependencies: "@babel/core" "^7.12.10" - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/channel-postmessage" "6.5.15" - "@storybook/channels" "6.5.15" - "@storybook/client-api" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/components" "6.5.15" - "@storybook/core-common" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/node-logger" "6.5.15" - "@storybook/preview-web" "6.5.15" - "@storybook/router" "6.5.15" - "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.15" - "@storybook/theming" "6.5.15" - "@storybook/ui" "6.5.15" - "@types/node" "^14.0.10 || ^16.0.0" - "@types/webpack" "^4.41.26" - autoprefixer "^9.8.6" - babel-loader "^8.0.0" - case-sensitive-paths-webpack-plugin "^2.3.0" - core-js "^3.8.2" - css-loader "^3.6.0" - file-loader "^6.2.0" - find-up "^5.0.0" - fork-ts-checker-webpack-plugin "^4.1.6" - glob "^7.1.6" - glob-promise "^3.4.0" - global "^4.4.0" - html-webpack-plugin "^4.0.0" - pnp-webpack-plugin "1.6.4" - postcss "^7.0.36" - postcss-flexbugs-fixes "^4.2.1" - postcss-loader "^4.2.0" - raw-loader "^4.0.2" - stable "^0.1.8" - style-loader "^1.3.0" - terser-webpack-plugin "^4.2.3" + "@storybook/addons" "7.0.0-beta.43" + "@storybook/api" "7.0.0-beta.43" + "@storybook/channel-postmessage" "7.0.0-beta.43" + "@storybook/channel-websocket" "7.0.0-beta.43" + "@storybook/channels" "7.0.0-beta.43" + "@storybook/client-api" "7.0.0-beta.43" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/core-common" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/core-webpack" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/node-logger" "7.0.0-beta.43" + "@storybook/preview" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/router" "7.0.0-beta.43" + "@storybook/store" "7.0.0-beta.43" + "@storybook/theming" "7.0.0-beta.43" + "@types/node" "^16.0.0" + "@types/semver" "^7.3.4" + babel-loader "^9.0.0" + babel-plugin-named-exports-order "^0.0.2" + browser-assert "^1.2.1" + case-sensitive-paths-webpack-plugin "^2.4.0" + css-loader "^6.7.1" + express "^4.17.3" + fork-ts-checker-webpack-plugin "^7.2.8" + fs-extra "^11.1.0" + html-webpack-plugin "^5.5.0" + path-browserify "^1.0.1" + process "^0.11.10" + semver "^7.3.7" + slash "^3.0.0" + style-loader "^3.3.1" + terser-webpack-plugin "^5.3.1" ts-dedent "^2.0.0" - url-loader "^4.1.1" + util "^0.12.4" util-deprecate "^1.0.2" - webpack "4" - webpack-dev-middleware "^3.7.3" - webpack-filter-warnings-plugin "^1.2.1" + webpack "5" + webpack-dev-middleware "^5.3.1" webpack-hot-middleware "^2.25.1" - webpack-virtual-modules "^0.2.2" - -"@storybook/channel-postmessage@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-6.5.15.tgz#a9d614be56bededf7cec41b833c46d35958b6d2b" - integrity sha512-gMpA8LWT8lC4z5KWnaMh03aazEwtDO7GtY5kZVru+EEMgExGmaR82qgekwmLmgLj2nRJEv0o138o9IqYUcou8w== - dependencies: - "@storybook/channels" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/core-events" "6.5.15" - core-js "^3.8.2" - global "^4.4.0" - qs "^6.10.0" - telejson "^6.0.8" - -"@storybook/channel-websocket@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/channel-websocket/-/channel-websocket-6.5.15.tgz#3fa090412d122428a7bc3d622e4cd36fdac7dd78" - integrity sha512-K85KEgzo5ahzJNJjyUbSNyuRmkeC8glJX2hCg2j9HiJ9rasX53qugkODrKDlWAeheulo3kR13VSuAqIuwVbmbw== - dependencies: - "@storybook/channels" "6.5.15" - "@storybook/client-logger" "6.5.15" - core-js "^3.8.2" - global "^4.4.0" - telejson "^6.0.8" + webpack-virtual-modules "^0.4.3" -"@storybook/channels@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-6.5.15.tgz#586681b6ec458124da084c39bc8c518d9e96b10b" - integrity sha512-gPpsBgirv2NCXbH4WbYqdkI0JLE96aiVuu7UEWfn9yu071pQ9CLHbhXGD9fSFNrfOkyBBY10ppSE7uCXw3Wexg== +"@storybook/channel-postmessage@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-7.0.0-beta.43.tgz#64cb5a3e80cce72fc435ab2d4d0c587f3ec70558" + integrity sha512-zBb5Rhr6uSRRVP1x8JxGqgXooYO/oZnj8OQJFAZKRX0v+N6Vbt/50WFW1q6VMbHwlSs38tTqnBvxvv5UEm1unQ== dependencies: - core-js "^3.8.2" - ts-dedent "^2.0.0" - util-deprecate "^1.0.2" - -"@storybook/client-api@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-6.5.15.tgz#70f3ced6d0fcc7b71217cae858bf81c3b2c50eba" - integrity sha512-0ZGpRgVz7rdbCguBqBpwObXbsVY5qlSTWDzzIBpmz8EkxW/MtK5wEyeq+0L0O+DTn41FwvH5yCGLAENpzWD8BQ== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/channel-postmessage" "6.5.15" - "@storybook/channels" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.15" - "@types/qs" "^6.9.5" - "@types/webpack-env" "^1.16.0" - core-js "^3.8.2" - fast-deep-equal "^3.1.3" - global "^4.4.0" - lodash "^4.17.21" - memoizerific "^1.11.3" + "@storybook/channels" "7.0.0-beta.43" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" qs "^6.10.0" - regenerator-runtime "^0.13.7" - store2 "^2.12.0" - synchronous-promise "^2.0.15" + telejson "^7.0.3" + +"@storybook/channel-websocket@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/channel-websocket/-/channel-websocket-7.0.0-beta.43.tgz#9660e5624702bb9485bc218330b5815a012e74e1" + integrity sha512-n5avyOxh1jDIAxXkwl4CJ0yn6WeJtS9HUu9vPhdCaHN3VQDn32FqUh7Se4gls3rlwJKRfKbjY0OxmqcNTB1nbA== + dependencies: + "@storybook/channels" "7.0.0-beta.43" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + telejson "^7.0.3" + +"@storybook/channels@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-7.0.0-beta.43.tgz#37d54f7e1d3694a4febd0479f7cd25507d37758c" + integrity sha512-fofNqgO9PwTBscYl2vE1j5a8cUi0IB+zMd6s1yec29c9A+y9pzHE5u9ncmM1PuM5VZ1ienQSBb0NKBvLmTm+jw== + +"@storybook/cli@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/cli/-/cli-7.0.0-beta.43.tgz#408df746ef4ae16eea8c903392916adf0016ae21" + integrity sha512-V6CBhKDQWGSCvZEvqIeOhXB3qwUmFszYhPVjsKLRCyZQA4p43f382MWgN2Z7YNpsm2lzc8KhaKVpdjZU1tVaLg== + dependencies: + "@babel/core" "^7.20.2" + "@babel/preset-env" "^7.20.2" + "@storybook/codemod" "7.0.0-beta.43" + "@storybook/core-common" "7.0.0-beta.43" + "@storybook/core-server" "7.0.0-beta.43" + "@storybook/csf-tools" "7.0.0-beta.43" + "@storybook/node-logger" "7.0.0-beta.43" + "@storybook/telemetry" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + "@types/semver" "^7.3.4" + boxen "^5.1.2" + chalk "^4.1.0" + commander "^6.2.1" + cross-spawn "^7.0.3" + detect-indent "^6.1.0" + envinfo "^7.7.3" + execa "^5.0.0" + express "^4.17.3" + find-up "^5.0.0" + fs-extra "^11.1.0" + get-port "^5.1.1" + giget "^1.0.0" + globby "^11.0.2" + jscodeshift "^0.14.0" + leven "^3.1.0" + prompts "^2.4.0" + puppeteer-core "^2.1.1" + read-pkg-up "^7.0.1" + semver "^7.3.7" + shelljs "^0.8.5" + simple-update-notifier "^1.0.0" + strip-json-comments "^3.0.1" + tempy "^1.0.1" ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-logger@6.5.15", "@storybook/client-logger@^6.4.0": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-6.5.15.tgz#0d9878af893a3493b6ee108cc097ae1436d7da4d" - integrity sha512-0uyxKvodq+FycGv6aUwC1wUR6suXf2+7ywMFAOlYolI4UvNj8NyU/5AfgKT5XnxYAgPmoCiAjOE700TrfHrosw== +"@storybook/client-api@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-7.0.0-beta.43.tgz#eb033dba301a945114351c4b7b367f3c55175595" + integrity sha512-qyBUeQvlkI4QSGKxPLwFmyc8yPmDyIEsEXRW/8HWYydt5T53RMOah/NSIc/qib4yV85N3FUj+/DMG6aEfaCMHA== dependencies: - core-js "^3.8.2" - global "^4.4.0" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" -"@storybook/components@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/components/-/components-6.5.15.tgz#8145be807bf48c1d010f29114411f390a9e3228f" - integrity sha512-bHTT0Oa3s4g+MBMaLBbX9ofMtb1AW59AzIUNGrfqW1XqJMGuUHMiJ7TSo+i5dRSFpbFygnwMEG9LfHxpR2Z0Dw== +"@storybook/client-logger@7.0.0-beta.43", "@storybook/client-logger@next": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-7.0.0-beta.43.tgz#fd12ce4f3f19d44d7a0a26428490565338f53a6d" + integrity sha512-UxYT1hCewi1x/cyX0yEz70gCMvEa8D/ST2vojLDlb7lKfrMIPfiVsSuTztTNMH8whrEuQd/Yt5PASWJZCg5kCQ== dependencies: - "@storybook/client-logger" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.15" - core-js "^3.8.2" - memoizerific "^1.11.3" - qs "^6.10.0" - regenerator-runtime "^0.13.7" - util-deprecate "^1.0.2" + "@storybook/global" "^5.0.0" -"@storybook/core-client@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-6.5.15.tgz#57d86a07f920ab0cb058820dbcb1f48cc9dc6257" - integrity sha512-i9t4WONy2MxJwLI1FIp5ck7b52EXyJfALnxUn4O/3GTkw09J0NOKi2DPjefUsi7IB5MzFpDjDH9vw/XiTM+OZw== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/channel-postmessage" "6.5.15" - "@storybook/channel-websocket" "6.5.15" - "@storybook/client-api" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/preview-web" "6.5.15" - "@storybook/store" "6.5.15" - "@storybook/ui" "6.5.15" - airbnb-js-shims "^2.2.1" - ansi-to-html "^0.6.11" - core-js "^3.8.2" - global "^4.4.0" +"@storybook/codemod@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/codemod/-/codemod-7.0.0-beta.43.tgz#022890878f4ddee124737ee310e2e7c60425dba3" + integrity sha512-pMjcObaH6kur3MED9h2Pz3I9KK/q5zLjHcK1zQMtvnEw8LrJykD2HwWy1dWZwkLqEYRCPL7GnowAnxiMTUc69w== + dependencies: + "@babel/core" "^7.20.2" + "@babel/preset-env" "^7.20.2" + "@babel/types" "^7.20.7" + "@storybook/csf" next + "@storybook/csf-tools" "7.0.0-beta.43" + "@storybook/node-logger" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + cross-spawn "^7.0.3" + globby "^11.0.2" + jscodeshift "^0.14.0" lodash "^4.17.21" - qs "^6.10.0" - regenerator-runtime "^0.13.7" - ts-dedent "^2.0.0" - unfetch "^4.2.0" + prettier "^2.8.0" + recast "^0.23.1" + util "^0.12.4" + +"@storybook/components@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/components/-/components-7.0.0-beta.43.tgz#109fe7a3e88ed6d5ffdce74a70d4ed9447a53fad" + integrity sha512-jZWwCUvJFSubm+D/HWBDCACCp5ezMcvNM1EMLML1YVON+8QAbHpD2LzJK9nh4iHN8dy8cvT81ucfP+Gtm1kGqA== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/csf" next + "@storybook/global" "^5.0.0" + "@storybook/theming" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + memoizerific "^1.11.3" + use-resize-observer "^9.1.0" util-deprecate "^1.0.2" -"@storybook/core-common@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-6.5.15.tgz#3ab524c7abdae52024caeb5c0349a764cb08769f" - integrity sha512-uits9o6qwHTPnjsNZP25f7hWmUBGRJ7FXtxxtEaNSmtiwk50KWxBaro7wt505lJ1Gb9vOhpNPhS7y3IxdsXNmQ== - dependencies: - "@babel/core" "^7.12.10" - "@babel/plugin-proposal-class-properties" "^7.12.1" - "@babel/plugin-proposal-decorators" "^7.12.12" - "@babel/plugin-proposal-export-default-from" "^7.12.1" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.12.1" - "@babel/plugin-proposal-object-rest-spread" "^7.12.1" - "@babel/plugin-proposal-optional-chaining" "^7.12.7" - "@babel/plugin-proposal-private-methods" "^7.12.1" - "@babel/plugin-proposal-private-property-in-object" "^7.12.1" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-transform-arrow-functions" "^7.12.1" - "@babel/plugin-transform-block-scoping" "^7.12.12" - "@babel/plugin-transform-classes" "^7.12.1" - "@babel/plugin-transform-destructuring" "^7.12.1" - "@babel/plugin-transform-for-of" "^7.12.1" - "@babel/plugin-transform-parameters" "^7.12.1" - "@babel/plugin-transform-shorthand-properties" "^7.12.1" - "@babel/plugin-transform-spread" "^7.12.1" - "@babel/preset-env" "^7.12.11" - "@babel/preset-react" "^7.12.10" - "@babel/preset-typescript" "^7.12.7" - "@babel/register" "^7.12.1" - "@storybook/node-logger" "6.5.15" - "@storybook/semver" "^7.3.2" - "@types/node" "^14.0.10 || ^16.0.0" +"@storybook/core-client@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-7.0.0-beta.43.tgz#8cae89b24a85e659e27120788249872655ad4c03" + integrity sha512-9dkJldN7zm0JfXllSxuKPxwKRNF0o+Vc03km9hSP1Ka8ItVNEwM/DqPpfLHssZADmyBJuVmWuUj15vYPNRUg3g== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + +"@storybook/core-common@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-7.0.0-beta.43.tgz#ee254c7349ca52462e282d79ad224cab5623d5fb" + integrity sha512-6kNUHgK8h2N8yI4eLMupuXNH8XWxddkd3vl8FDxptSSqgi4HVuyiY8BsraCK9gUYE+fN6bk5p1LaYOSHL9CYlw== + dependencies: + "@babel/core" "^7.20.2" + "@storybook/csf-tools" "7.0.0-beta.43" + "@storybook/node-logger" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + "@types/babel__core" "^7.1.20" + "@types/express" "^4.7.0" + "@types/node" "^16.0.0" "@types/pretty-hrtime" "^1.0.0" - babel-loader "^8.0.0" - babel-plugin-macros "^3.0.1" - babel-plugin-polyfill-corejs3 "^0.1.0" chalk "^4.1.0" - core-js "^3.8.2" - express "^4.17.1" - file-system-cache "^1.0.5" + esbuild "^0.16.4" + esbuild-register "^3.3.3" + express "^4.17.3" + file-system-cache "^2.0.0" find-up "^5.0.0" - fork-ts-checker-webpack-plugin "^6.0.4" - fs-extra "^9.0.1" - glob "^7.1.6" + fs-extra "^11.1.0" + glob "^8.1.0" + glob-promise "^4.2.0" handlebars "^4.7.7" - interpret "^2.2.0" - json5 "^2.1.3" - lazy-universal-dotenv "^3.0.1" + lazy-universal-dotenv "^4.0.0" picomatch "^2.3.0" pkg-dir "^5.0.0" pretty-hrtime "^1.0.3" resolve-from "^5.0.0" slash "^3.0.0" - telejson "^6.0.8" ts-dedent "^2.0.0" - util-deprecate "^1.0.2" - webpack "4" -"@storybook/core-events@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-6.5.15.tgz#c12f645b50231c50eb9b26038aa67ab92b1ba24e" - integrity sha512-B1Ba6l5W7MeNclclqMMTMHgYgfdpB5SIhNCQFnzIz8blynzRhNFMdxvbAl6Je5G0S4xydYYd7Lno2kXQebs7HA== - dependencies: - core-js "^3.8.2" +"@storybook/core-events@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-7.0.0-beta.43.tgz#9164a23c1cfd27f7e3dc75befcf32e9337d2a7f8" + integrity sha512-byuHDRhU1pugrz3wDcemOT4FtXh4MC3eUJxrXcx4hizxJ4AaZqlyVLAaiyrkT+JKv4RBUt5WcJ1SNskY2MAbOw== -"@storybook/core-server@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/core-server/-/core-server-6.5.15.tgz#217c40d7a33708b9ac69f73dd51ed9d2f031d19d" - integrity sha512-m+pZwHhCjwryeqTptyyKHSbIjnnPGKoRSnkqLTOpKQf8llZMnNQWUFrn4fx6UDKzxFQ2st2+laV8O2QbMs8qwQ== +"@storybook/core-server@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/core-server/-/core-server-7.0.0-beta.43.tgz#d15026cd03e0f1e1f48ffc3ff52344c3575251a9" + integrity sha512-99QNW6qbHdHO1KF1tz3/GJyIMMr0AK97IWQBWHsSWxDi0kX4oiR54flEZv6iaFs6GsCNN5U+ksOYqrsK37Zb3A== dependencies: + "@aw-web-design/x-default-browser" "1.4.88" "@discoveryjs/json-ext" "^0.5.3" - "@storybook/builder-webpack4" "6.5.15" - "@storybook/core-client" "6.5.15" - "@storybook/core-common" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/csf-tools" "6.5.15" - "@storybook/manager-webpack4" "6.5.15" - "@storybook/node-logger" "6.5.15" - "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.15" - "@storybook/telemetry" "6.5.15" - "@types/node" "^14.0.10 || ^16.0.0" + "@storybook/builder-manager" "7.0.0-beta.43" + "@storybook/core-common" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/csf" next + "@storybook/csf-tools" "7.0.0-beta.43" + "@storybook/docs-mdx" next + "@storybook/global" "^5.0.0" + "@storybook/node-logger" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/telemetry" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + "@types/detect-port" "^1.3.0" + "@types/node" "^16.0.0" "@types/node-fetch" "^2.5.7" "@types/pretty-hrtime" "^1.0.0" - "@types/webpack" "^4.41.26" + "@types/semver" "^7.3.4" better-opn "^2.1.1" boxen "^5.1.2" chalk "^4.1.0" cli-table3 "^0.6.1" - commander "^6.2.1" compression "^1.7.4" - core-js "^3.8.2" - cpy "^8.1.2" detect-port "^1.3.0" - express "^4.17.1" - fs-extra "^9.0.1" - global "^4.4.0" + express "^4.17.3" + fs-extra "^11.1.0" globby "^11.0.2" ip "^2.0.0" lodash "^4.17.21" @@ -2828,51 +2704,46 @@ open "^8.4.0" pretty-hrtime "^1.0.3" prompts "^2.4.0" - regenerator-runtime "^0.13.7" + read-pkg-up "^7.0.1" + semver "^7.3.7" serve-favicon "^2.5.0" slash "^3.0.0" - telejson "^6.0.8" + telejson "^7.0.3" ts-dedent "^2.0.0" util-deprecate "^1.0.2" watchpack "^2.2.0" - webpack "4" ws "^8.2.3" - x-default-browser "^0.4.0" -"@storybook/core@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/core/-/core-6.5.15.tgz#82e0998d908fc9e66a659e1217072c425d63f9b6" - integrity sha512-T9TjLxbb5P/XvLEoj0dnbtexJa0V3pqCifRlIUNkTJO0nU3PdGLMcKMSyIYWjkthAJ9oBrajnodV0UveM/epTg== +"@storybook/core-webpack@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/core-webpack/-/core-webpack-7.0.0-beta.43.tgz#66999d1da36eaf2df7920d56cfab186a57dcf24b" + integrity sha512-A7jEHQhF6GC8J5olML8H3/YQfzta46IGwhDZitdQ3/lmMtZGDPByIF7RLw8ZY6HO0+a6073zjIAecT3/w2kdbA== dependencies: - "@storybook/core-client" "6.5.15" - "@storybook/core-server" "6.5.15" + "@storybook/core-common" "7.0.0-beta.43" + "@storybook/node-logger" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + "@types/node" "^16.0.0" + ts-dedent "^2.0.0" -"@storybook/csf-tools@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/csf-tools/-/csf-tools-6.5.15.tgz#dc5d0fe946c25d60bf201e5180c4fc81b24f763b" - integrity sha512-2LwSD7yE/ccXBc58K4vdKw/oJJg6IpC4WD51rBt2mAl5JUCkxhOq7wG/Z8Wy1lZw2LVuKNTmjVou5blGRI/bTg== +"@storybook/csf-plugin@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/csf-plugin/-/csf-plugin-7.0.0-beta.43.tgz#b0aea83a53c5b74db487b4e4b279cc532297540b" + integrity sha512-plrZZP0sJ+qYaygDNuv130xVoRUC3mlbl4rsx+EHR9B2XZ0CRFg32DSXW/0k9uE5g449WACzSkbmLIVvT4RR+Q== dependencies: - "@babel/core" "^7.12.10" - "@babel/generator" "^7.12.11" - "@babel/parser" "^7.12.11" - "@babel/plugin-transform-react-jsx" "^7.12.12" - "@babel/preset-env" "^7.12.11" - "@babel/traverse" "^7.12.11" - "@babel/types" "^7.12.11" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/mdx1-csf" "^0.0.1" - core-js "^3.8.2" - fs-extra "^9.0.1" - global "^4.4.0" - regenerator-runtime "^0.13.7" - ts-dedent "^2.0.0" + "@storybook/csf-tools" "7.0.0-beta.43" + unplugin "^0.10.2" -"@storybook/csf@0.0.2--canary.4566f4d.1": - version "0.0.2--canary.4566f4d.1" - resolved "https://registry.yarnpkg.com/@storybook/csf/-/csf-0.0.2--canary.4566f4d.1.tgz#dac52a21c40ef198554e71fe4d20d61e17f65327" - integrity sha512-9OVvMVh3t9znYZwb0Svf/YQoxX2gVOeQTGe2bses2yj+a3+OJnCrUF3/hGv6Em7KujtOdL2LL+JnG49oMVGFgQ== +"@storybook/csf-tools@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/csf-tools/-/csf-tools-7.0.0-beta.43.tgz#d6831d4f92bfd2fb8f9e54b07d10f0e7df868f75" + integrity sha512-/KbLRdE36FwbpRB0HYE5BHbDbGKnkVhTqgHvVO9E+NgIGX811EOp1GVeyhrSl+oj7m73MQIqR1al0OcMd4IE8A== dependencies: - lodash "^4.17.15" + "@babel/types" "^7.20.2" + "@storybook/csf" next + "@storybook/types" "7.0.0-beta.43" + fs-extra "^11.1.0" + recast "^0.23.1" + ts-dedent "^2.0.0" "@storybook/csf@^0.0.1": version "0.0.1" @@ -2881,128 +2752,143 @@ dependencies: lodash "^4.17.15" -"@storybook/docs-tools@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/docs-tools/-/docs-tools-6.5.15.tgz#c9a3954719c45c3748abd6aaa735e33f5c961912" - integrity sha512-8w78NFOtlJGuIa9vPPsr87J9iQUGmLFh7CrMS2+t9LxW+0oH5MZ8QqPQUHNuTuKsYN3r+QAmmi2pj0auZmCoKA== +"@storybook/csf@next": + version "0.0.2-next.8" + resolved "https://registry.yarnpkg.com/@storybook/csf/-/csf-0.0.2-next.8.tgz#e1033032368177c0eefb4c79898641a77e5fd21d" + integrity sha512-3T6rflW7D9q1iXOR+bidwoNbd9rVUTyjYH/sqsnYjbXhb/aOXsQzGKwNeq9QqZIFVpKfg5BoOF5i7DCMtoGknQ== dependencies: - "@babel/core" "^7.12.10" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.15" - core-js "^3.8.2" - doctrine "^3.0.0" - lodash "^4.17.21" - regenerator-runtime "^0.13.7" + expect-type "^0.14.2" + lodash "^4.17.15" + type-fest "^2.19.0" -"@storybook/instrumenter@6.5.15", "@storybook/instrumenter@^6.4.0": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/instrumenter/-/instrumenter-6.5.15.tgz#4dcb826201fcc09465fd5d6e37bd9147ec1dcfd0" - integrity sha512-93WyH0s63RCv496eHjQ5dWFXoExXg9dlNMe7i4/FVVbWeDdb1pPVIHsLn28WxOiVQahQEAW2EA7Mao3BiBWg+A== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/core-events" "6.5.15" - core-js "^3.8.2" - global "^4.4.0" +"@storybook/docs-mdx@next": + version "0.0.1-next.6" + resolved "https://registry.yarnpkg.com/@storybook/docs-mdx/-/docs-mdx-0.0.1-next.6.tgz#8fa2d0e30e7487101e7e286e593323b1ce750699" + integrity sha512-DjoSIXADmLJtdroXAjUotFiZlcZ2usWhqrS7aeOtZs0DVR0Ws5WQjnwtpDUXt8gryTSd+OZJ0cNsDcqg4JDEvQ== -"@storybook/manager-webpack4@6.5.15", "@storybook/manager-webpack4@^6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/manager-webpack4/-/manager-webpack4-6.5.15.tgz#09808b87b510591390765af708ab511ff63a1e5c" - integrity sha512-zRvBTMoaFO6MvHDsDLnt3tsFENhpY3k+e/UIPdqbIDMbUPGGQzxJucAM9aS/kbVSO5IVs8IflVxbeeB/uTIIfA== +"@storybook/docs-tools@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/docs-tools/-/docs-tools-7.0.0-beta.43.tgz#d5516f7f1501f730f4aa3d662577835fdbe8bd22" + integrity sha512-v7hjvqP+dkxW9cTUZgBQMMoNOFBL40GULckIlBs0RqqXjYpj/AmBEZGFlICH1FiaIrm++oR7PvBJJ2tscK3VWQ== dependencies: "@babel/core" "^7.12.10" - "@babel/plugin-transform-template-literals" "^7.12.1" - "@babel/preset-react" "^7.12.10" - "@storybook/addons" "6.5.15" - "@storybook/core-client" "6.5.15" - "@storybook/core-common" "6.5.15" - "@storybook/node-logger" "6.5.15" - "@storybook/theming" "6.5.15" - "@storybook/ui" "6.5.15" - "@types/node" "^14.0.10 || ^16.0.0" - "@types/webpack" "^4.41.26" - babel-loader "^8.0.0" - case-sensitive-paths-webpack-plugin "^2.3.0" - chalk "^4.1.0" - core-js "^3.8.2" - css-loader "^3.6.0" - express "^4.17.1" - file-loader "^6.2.0" - find-up "^5.0.0" - fs-extra "^9.0.1" - html-webpack-plugin "^4.0.0" - node-fetch "^2.6.7" - pnp-webpack-plugin "1.6.4" - read-pkg-up "^7.0.1" - regenerator-runtime "^0.13.7" - resolve-from "^5.0.0" - style-loader "^1.3.0" - telejson "^6.0.8" - terser-webpack-plugin "^4.2.3" - ts-dedent "^2.0.0" - url-loader "^4.1.1" - util-deprecate "^1.0.2" - webpack "4" - webpack-dev-middleware "^3.7.3" - webpack-virtual-modules "^0.2.2" + "@storybook/core-common" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + "@types/doctrine" "^0.0.3" + doctrine "^3.0.0" + lodash "^4.17.21" -"@storybook/mdx1-csf@^0.0.1": - version "0.0.1" - resolved "https://registry.yarnpkg.com/@storybook/mdx1-csf/-/mdx1-csf-0.0.1.tgz#d4184e3f6486fade9f7a6bfaf934d9bc07718d5b" - integrity sha512-4biZIWWzoWlCarMZmTpqcJNgo/RBesYZwGFbQeXiGYsswuvfWARZnW9RE9aUEMZ4XPn7B1N3EKkWcdcWe/K2tg== - dependencies: - "@babel/generator" "^7.12.11" - "@babel/parser" "^7.12.11" - "@babel/preset-env" "^7.12.11" - "@babel/types" "^7.12.11" - "@mdx-js/mdx" "^1.6.22" - "@types/lodash" "^4.14.167" - js-string-escape "^1.0.1" - loader-utils "^2.0.0" +"@storybook/global@^5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@storybook/global/-/global-5.0.0.tgz#b793d34b94f572c1d7d9e0f44fac4e0dbc9572ed" + integrity sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ== + +"@storybook/instrumenter@7.0.0-beta.43", "@storybook/instrumenter@next": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/instrumenter/-/instrumenter-7.0.0-beta.43.tgz#3938a3c71a41253f782e196112d53c03b3582e8e" + integrity sha512-z9+XroBxWLbL0yZmq34HpRjf+zsoETK56+gScBQzIgOr0ZinshAyoCQbLGueiN8dyxjcFQSLMIZjjPj2pIZ7wA== + dependencies: + "@storybook/channels" "7.0.0-beta.43" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/preview-api" "7.0.0-beta.43" + +"@storybook/manager-api@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/manager-api/-/manager-api-7.0.0-beta.43.tgz#edba40dbcb343c77d555bc5a62adfab7c62b0233" + integrity sha512-e3ST+lZdmeokT4GVTrrM02XQ4lHeiiwNg2HRjlStdtsL/3+qOqi/0YicLB5ZBcL8sqTkYT7b0V04vQY5k+sCng== + dependencies: + "@storybook/channels" "7.0.0-beta.43" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/csf" next + "@storybook/global" "^5.0.0" + "@storybook/router" "7.0.0-beta.43" + "@storybook/theming" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + dequal "^2.0.2" lodash "^4.17.21" - prettier ">=2.2.1 <=2.3.0" + memoizerific "^1.11.3" + semver "^7.3.7" + store2 "^2.14.2" + telejson "^7.0.3" ts-dedent "^2.0.0" -"@storybook/node-logger@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-6.5.15.tgz#d99695e8d5f8cf434e8fdcca719b5b5fa5c88e2e" - integrity sha512-LQjjbfMuUXm7wZTBKb+iGeCNnej4r1Jb2NxG3Svu2bVhaoB6u33jHAcbmhXpXW1jghzW3kQwOU7BoLuJiRRFIw== +"@storybook/manager@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/manager/-/manager-7.0.0-beta.43.tgz#d46d6cc9795ac64c3c24f02ec4ebb193eca896d8" + integrity sha512-4UG1bDB04Kn9gMqslIa7Ao7/814zNwvEZmiuAHjeDZ37gpkhi3CcjZqU5Xy/COb436XiXsbWYRGeg0pcHc8b+A== + +"@storybook/mdx2-csf@next": + version "1.0.0-next.5" + resolved "https://registry.yarnpkg.com/@storybook/mdx2-csf/-/mdx2-csf-1.0.0-next.5.tgz#b43b403b3a0b2ebdb3603bf6d20d7319b407e199" + integrity sha512-02w0sgGZaK1agT050yCVhJ+o4rLHANWvLKWjQjeAsYbjneLC5ITt+3GDB4jRiWwJboZ8dHW1fGSK1Vg5fA34aQ== + +"@storybook/node-logger@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-7.0.0-beta.43.tgz#0c76e7f38b0d13aa0805bd05661b50f31a7e14d5" + integrity sha512-/DYIT/EUYSOFwUQErGVSO7yVtcB5s/us8/bNMeps+EzbLLNZHaFnuvNml8I8c6Ghb4A6Jc+uJmz7df6qqh6cWw== dependencies: "@types/npmlog" "^4.1.2" chalk "^4.1.0" - core-js "^3.8.2" npmlog "^5.0.1" pretty-hrtime "^1.0.3" -"@storybook/postinstall@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/postinstall/-/postinstall-6.5.15.tgz#90989c8049357a6df6f38c933172210c9c6caf8c" - integrity sha512-l7pApTgLD10OedNOyuf4vUdVCHLOSaIUIL9gdJl1WaSFHiUpJvvzBIh5M4aRICYPbnuExQc8y2GAjERKO4Ep+g== - dependencies: - core-js "^3.8.2" - -"@storybook/preview-web@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/preview-web/-/preview-web-6.5.15.tgz#5f47899dff1580ed3dc1b5a7bfdf67d6574536fc" - integrity sha512-gIHABSAD0JS0iRaG67BnSDq/q8Zf4fFwEWBQOSYgcEx2TzhAUeSkhGZUQHdlOTCwuA2PpXT0/cWDH8u2Ev+msg== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/channel-postmessage" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.15" - ansi-to-html "^0.6.11" - core-js "^3.8.2" - global "^4.4.0" +"@storybook/postinstall@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/postinstall/-/postinstall-7.0.0-beta.43.tgz#9e4ed73aa832f82ec4beb628a91948d475a51497" + integrity sha512-wyfwhw6uUazZsxKsmquXM9uL61IhUVV6/Bmz2NQOPcNcQbKXPwWTU5CIFlYP+/Xx5eK1Mx+iqmGXqQzuCi+QPw== + +"@storybook/preset-react-webpack@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/preset-react-webpack/-/preset-react-webpack-7.0.0-beta.43.tgz#d2eb6ecdfaef1dbc7a50b412d7286d100f4dfb4f" + integrity sha512-pyrhWffv+G+LdixKzRCseZs/Nbg7RitEW1ViM1OJePMqYNQbDkWRM+cKI+K6xbPaf/bSzYMceVz9xTQ13ezKUA== + dependencies: + "@babel/preset-flow" "^7.18.6" + "@babel/preset-react" "^7.18.6" + "@pmmmwh/react-refresh-webpack-plugin" "^0.5.5" + "@storybook/core-webpack" "7.0.0-beta.43" + "@storybook/docs-tools" "7.0.0-beta.43" + "@storybook/node-logger" "7.0.0-beta.43" + "@storybook/react" "7.0.0-beta.43" + "@storybook/react-docgen-typescript-plugin" "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" + "@types/node" "^16.0.0" + "@types/semver" "^7.3.4" + babel-plugin-add-react-displayname "^0.0.5" + babel-plugin-react-docgen "^4.2.1" + fs-extra "^11.1.0" + react-refresh "^0.11.0" + semver "^7.3.7" + +"@storybook/preview-api@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/preview-api/-/preview-api-7.0.0-beta.43.tgz#b8b405d8d473a0c908d2bbfd9c8764ce7cc3dfed" + integrity sha512-HlYYbVl8WYkmeSYYta3hgWiteGycvbpSb7/7InjNTplertD9G7GJUwG5DUdddBBd3q4eYLvAwrrsNgPogIOESA== + dependencies: + "@storybook/channel-postmessage" "7.0.0-beta.43" + "@storybook/channels" "7.0.0-beta.43" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/csf" next + "@storybook/global" "^5.0.0" + "@storybook/types" "7.0.0-beta.43" + "@types/qs" "^6.9.5" + dequal "^2.0.2" lodash "^4.17.21" + memoizerific "^1.11.3" qs "^6.10.0" - regenerator-runtime "^0.13.7" + slash "^3.0.0" synchronous-promise "^2.0.15" ts-dedent "^2.0.0" - unfetch "^4.2.0" util-deprecate "^1.0.2" +"@storybook/preview@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/preview/-/preview-7.0.0-beta.43.tgz#9c6ceb40f5caadc4859614868b5ef80d01922926" + integrity sha512-JQlHPdNf4RTFb4+kD7uT2Toi0qSaEfJKSAHxOmNzaYIULueHYy8hTA3V5phPb1XSuKbD/+LedCrMsl9l4WAQlA== + "@storybook/react-docgen-typescript-plugin@1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0": version "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" resolved "https://registry.yarnpkg.com/@storybook/react-docgen-typescript-plugin/-/react-docgen-typescript-plugin-1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0.tgz#3103532ff494fb7dc3cf835f10740ecf6a26c0f9" @@ -3016,161 +2902,106 @@ react-docgen-typescript "^2.1.1" tslib "^2.0.0" -"@storybook/react@^6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/react/-/react-6.5.15.tgz#83e645b16a4d241ec84a8d0015b1a7a2d55c5091" - integrity sha512-iQta2xOs/oK0sw/zpn3g/huvOmvggzi8z2/WholmUmmRiSQRo9lOhRXH0u13T4ja4fEa+u7m58G83xOG6i73Kw== - dependencies: - "@babel/preset-flow" "^7.12.1" - "@babel/preset-react" "^7.12.10" - "@pmmmwh/react-refresh-webpack-plugin" "^0.5.3" - "@storybook/addons" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/core" "6.5.15" - "@storybook/core-common" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/docs-tools" "6.5.15" - "@storybook/node-logger" "6.5.15" - "@storybook/react-docgen-typescript-plugin" "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" - "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.15" +"@storybook/react-webpack5@^7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/react-webpack5/-/react-webpack5-7.0.0-beta.43.tgz#bdf832fb8b064a7437bbfac7551b21e4f8110a0f" + integrity sha512-1CPVRbB5ZVMmKerCztlGma30Xqf4oaiDBz8U7nC8WjU2p23amzYarbjHECMF0seE3h1VXK0ALWzUGxnM/dthBQ== + dependencies: + "@storybook/builder-webpack5" "7.0.0-beta.43" + "@storybook/preset-react-webpack" "7.0.0-beta.43" + "@storybook/react" "7.0.0-beta.43" + "@types/node" "^16.0.0" + +"@storybook/react@7.0.0-beta.43", "@storybook/react@^7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/react/-/react-7.0.0-beta.43.tgz#41086e28d88b6a703aa84c3a53e6d00a31eb1695" + integrity sha512-IrtOCLLf+ZS3Rtci9Ce8WnqftTJmZ3GR9DludrclmY1vI8Vj8ejmM5M44qI76SDX5EeVsvWcrQzJGqvuWj1Swg== + dependencies: + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/core-client" "7.0.0-beta.43" + "@storybook/docs-tools" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + "@types/escodegen" "^0.0.6" "@types/estree" "^0.0.51" - "@types/node" "^14.14.20 || ^16.0.0" - "@types/webpack-env" "^1.16.0" + "@types/node" "^16.0.0" acorn "^7.4.1" acorn-jsx "^5.3.1" acorn-walk "^7.2.0" - babel-plugin-add-react-displayname "^0.0.5" - babel-plugin-react-docgen "^4.2.1" - core-js "^3.8.2" escodegen "^2.0.0" - fs-extra "^9.0.1" - global "^4.4.0" html-tags "^3.1.0" lodash "^4.17.21" prop-types "^15.7.2" - react-element-to-jsx-string "^14.3.4" - react-refresh "^0.11.0" - read-pkg-up "^7.0.1" - regenerator-runtime "^0.13.7" + react-element-to-jsx-string "^15.0.0" ts-dedent "^2.0.0" + type-fest "^2.19.0" util-deprecate "^1.0.2" - webpack ">=4.43.0 <6.0.0" -"@storybook/router@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/router/-/router-6.5.15.tgz#bf01d35bdd4603bf188629a6578489e313a312fd" - integrity sha512-9t8rI8t7/Krolau29gsdjdbRQ66orONIyP0efp0EukVgv6reNFzb/U14ARrl0uHys6Tl5Xyece9FoakQUdn8Kg== +"@storybook/router@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/router/-/router-7.0.0-beta.43.tgz#8233981b5a9f28873bb85eaafda4c33bcbe122bd" + integrity sha512-yvZ0Gx8rqVjmdRa2DqfZsEL2kqn/yqYNzUqzAj3yaTxoEznn/LqZaWGBBiBUrT3A53n6AQH6nFACiZ4bu81E/A== dependencies: - "@storybook/client-logger" "6.5.15" - core-js "^3.8.2" + "@storybook/client-logger" "7.0.0-beta.43" memoizerific "^1.11.3" qs "^6.10.0" - regenerator-runtime "^0.13.7" -"@storybook/semver@^7.3.2": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/semver/-/semver-7.3.2.tgz#f3b9c44a1c9a0b933c04e66d0048fcf2fa10dac0" - integrity sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg== +"@storybook/store@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/store/-/store-7.0.0-beta.43.tgz#c45cc09e48387b27a76eaf5c7afbbb22625c061f" + integrity sha512-rQDdFx3kRniGIcObeInbQ8jqklq+LGVJ3nwfWv04fdkVWBGzabzv3DLW6dnvG9Zb8pSBy0Sm9m382Da141V9eA== dependencies: - core-js "^3.6.5" - find-up "^4.1.0" - -"@storybook/source-loader@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/source-loader/-/source-loader-6.5.15.tgz#363a9b2812a2cef6cc5cb948e55d8a2624e18643" - integrity sha512-MaWzki40g0/7NWmJgUBhOp+e7y8Ohw6G/bRr/rcDP7eXSnud6ThYylXv0QqBScLPPTy8txjmBClCoqdLGyvLWQ== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - core-js "^3.8.2" - estraverse "^5.2.0" - global "^4.4.0" - loader-utils "^2.0.4" - lodash "^4.17.21" - prettier ">=2.2.1 <=2.3.0" - regenerator-runtime "^0.13.7" - -"@storybook/store@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/store/-/store-6.5.15.tgz#d6ca7a3165442aabfde335f243bdd179d53bca1a" - integrity sha512-r6cYTf6GtbqgdI4ZG3xuWdJAAu5fJ3xAWMiDkHyoK2u+R2TeYXIsJvgn0BPrW87sZhELIkg4ckdFECmATs3kpQ== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/csf" "0.0.2--canary.4566f4d.1" - core-js "^3.8.2" - fast-deep-equal "^3.1.3" - global "^4.4.0" - lodash "^4.17.21" - memoizerific "^1.11.3" - regenerator-runtime "^0.13.7" - slash "^3.0.0" - stable "^0.1.8" - synchronous-promise "^2.0.15" - ts-dedent "^2.0.0" - util-deprecate "^1.0.2" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" -"@storybook/telemetry@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/telemetry/-/telemetry-6.5.15.tgz#852050c1e54bf704a104e47e4e498d999096e0e7" - integrity sha512-WHMRG6xMkEGscn1q4SotwzV8hxM1g3zHyXPN77iosY5zpOIn/qAzvkmW28V1DPH9jPWMZMizBgG1TIQvUpduXg== +"@storybook/telemetry@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/telemetry/-/telemetry-7.0.0-beta.43.tgz#99ef1cd72c737f1314cad5f685dd64ee8ea4a932" + integrity sha512-OoMUd49u1eO351Kuoyf8QzD9Uhkqay7KoBtLZSs8nc40uZWmx1Ho/9EQnI71ETpaHjYf1SPSBD/PL0fmMBtGCQ== dependencies: - "@storybook/client-logger" "6.5.15" - "@storybook/core-common" "6.5.15" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/core-common" "7.0.0-beta.43" chalk "^4.1.0" - core-js "^3.8.2" detect-package-manager "^2.0.1" fetch-retry "^5.0.2" - fs-extra "^9.0.1" - global "^4.4.0" + fs-extra "^11.1.0" isomorphic-unfetch "^3.1.0" nanoid "^3.3.1" read-pkg-up "^7.0.1" - regenerator-runtime "^0.13.7" -"@storybook/testing-library@^0.0.13": - version "0.0.13" - resolved "https://registry.yarnpkg.com/@storybook/testing-library/-/testing-library-0.0.13.tgz#417c87d4ea62895092ec5fdf67027ae201254f45" - integrity sha512-vRMeIGer4EjJkTgI8sQyK9W431ekPWYCWL//OmSDJ64IT3h7FnW7Xg6p+eqM3oII98/O5pcya5049GxnjaPtxw== +"@storybook/testing-library@^0.0.14-next.1": + version "0.0.14-next.1" + resolved "https://registry.yarnpkg.com/@storybook/testing-library/-/testing-library-0.0.14-next.1.tgz#c8e93aea7b2a4caba4f4b60b2195e4de589f8a3c" + integrity sha512-1CAl40IKIhcPaCC4pYCG0b9IiYNymktfV/jTrX7ctquRY3akaN7f4A1SippVHosksft0M+rQTFE0ccfWW581fw== dependencies: - "@storybook/client-logger" "^6.4.0" - "@storybook/instrumenter" "^6.4.0" + "@storybook/client-logger" next + "@storybook/instrumenter" next "@testing-library/dom" "^8.3.0" "@testing-library/user-event" "^13.2.1" ts-dedent "^2.2.0" -"@storybook/theming@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-6.5.15.tgz#048461b37ad0c29dc8d91a065a6bf1c90067524c" - integrity sha512-pgdW0lVZKKXQ4VhIfLHycMmwFSVOY7vLTKnytag4Y8Yz+aXm0bwDN/QxPntFzDH47F1Rcy2ywNnvty8ooDTvuA== +"@storybook/theming@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-7.0.0-beta.43.tgz#4c483364870c1bc31c0399682e72408749eebca4" + integrity sha512-+oZRoVn88vZs4/gLv6SRrz90JRtCf0PYZ+t2Dnlhp+HEBu9daiaKQxJNAcDsdnZv4n6nRtBU07QZPVWqgmJEaw== dependencies: - "@storybook/client-logger" "6.5.15" - core-js "^3.8.2" - memoizerific "^1.11.3" - regenerator-runtime "^0.13.7" - -"@storybook/ui@6.5.15": - version "6.5.15" - resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-6.5.15.tgz#e4d80465116e53d48d2c3bb616909c37f5405181" - integrity sha512-OO+TWZmI8ebWA1C3JBKNvbUbsgvt4GppqsGlkf5CTBZrT/MzmMlYiooLAtlY1ZPcMtTd5ynLxvroHWBEnMOk2A== - dependencies: - "@storybook/addons" "6.5.15" - "@storybook/api" "6.5.15" - "@storybook/channels" "6.5.15" - "@storybook/client-logger" "6.5.15" - "@storybook/components" "6.5.15" - "@storybook/core-events" "6.5.15" - "@storybook/router" "6.5.15" - "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.5.15" - core-js "^3.8.2" + "@emotion/use-insertion-effect-with-fallbacks" "^1.0.0" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" memoizerific "^1.11.3" - qs "^6.10.0" - regenerator-runtime "^0.13.7" - resolve-from "^5.0.0" + +"@storybook/types@7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/types/-/types-7.0.0-beta.43.tgz#6ad52e4bff5b0fd014c086c0861a0466be6fb4bd" + integrity sha512-6YJ5EvVfQ/WrQBGX3y5KQx8JRR8vHCSqpIlVwnL7vutbe1ZJZpYjAbdH5bApoiG35Prgfq3oM9RavDnDlln7Fw== + dependencies: + "@babel/core" "^7.12.10" + "@storybook/channels" "7.0.0-beta.43" + "@types/babel__core" "^7.0.0" + "@types/express" "^4.7.0" + express "^4.17.3" + file-system-cache "^2.0.0" "@swc/core-darwin-arm64@1.3.25": version "1.3.25" @@ -3337,6 +3168,17 @@ resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.1.tgz#3286741fb8f1e1580ac28784add4c7a1d49bdfbc" integrity sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q== +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.20": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.0.tgz#61bc5a4cae505ce98e1e36c5445e4bee060d8891" + integrity sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ== + dependencies: + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + "@types/babel__core@^7.1.14": version "7.1.20" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.20.tgz#e168cdd612c92a2d335029ed62ac94c95b362359" @@ -3370,15 +3212,50 @@ dependencies: "@babel/types" "^7.3.0" -"@types/eslint-scope@^3.7.3": - version "3.7.4" - resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.4.tgz#37fc1223f0786c39627068a12e94d6e6fc61de16" - integrity sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA== +"@types/body-parser@*": + version "1.19.2" + resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.2.tgz#aea2059e28b7658639081347ac4fab3de166e6f0" + integrity sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g== dependencies: - "@types/eslint" "*" - "@types/estree" "*" + "@types/connect" "*" + "@types/node" "*" -"@types/eslint@*": +"@types/connect@*": + version "3.4.35" + resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.35.tgz#5fcf6ae445e4021d1fc2219a4873cc73a3bb2ad1" + integrity sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ== + dependencies: + "@types/node" "*" + +"@types/detect-port@^1.3.0": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@types/detect-port/-/detect-port-1.3.2.tgz#8c06a975e472803b931ee73740aeebd0a2eb27ae" + integrity sha512-xxgAGA2SAU4111QefXPSp5eGbDm/hW6zhvYl9IeEPZEry9F4d66QAHm5qpUXjb6IsevZV/7emAEx5MhP6O192g== + +"@types/doctrine@^0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@types/doctrine/-/doctrine-0.0.3.tgz#e892d293c92c9c1d3f9af72c15a554fbc7e0895a" + integrity sha512-w5jZ0ee+HaPOaX25X2/2oGR/7rgAQSYII7X7pp0m9KgBfMP7uKfMfTvcpl5Dj+eDBbpxKGiqE+flqDr6XTd2RA== + +"@types/ejs@^3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@types/ejs/-/ejs-3.1.1.tgz#29c539826376a65e7f7d672d51301f37ed718f6d" + integrity sha512-RQul5wEfY7BjWm0sYY86cmUN/pcXWGyVxWX93DFFJvcrxax5zKlieLwA3T77xJGwNcZW0YW6CYG70p1m8xPFmA== + +"@types/escodegen@^0.0.6": + version "0.0.6" + resolved "https://registry.yarnpkg.com/@types/escodegen/-/escodegen-0.0.6.tgz#5230a9ce796e042cda6f086dbf19f22ea330659c" + integrity sha512-AjwI4MvWx3HAOaZqYsjKWyEObT9lcVV0Y0V8nXo6cXzN8ZiMxVhf6F3d/UNvXVGKrEzL/Dluc5p+y9GkzlTWig== + +"@types/eslint-scope@^3.7.3": + version "3.7.4" + resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.4.tgz#37fc1223f0786c39627068a12e94d6e6fc61de16" + integrity sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA== + dependencies: + "@types/eslint" "*" + "@types/estree" "*" + +"@types/eslint@*": version "8.4.10" resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.4.10.tgz#19731b9685c19ed1552da7052b6f668ed7eb64bb" integrity sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw== @@ -3396,15 +3273,31 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== -"@types/glob@*": - version "8.0.1" - resolved "https://registry.yarnpkg.com/@types/glob/-/glob-8.0.1.tgz#6e3041640148b7764adf21ce5c7138ad454725b0" - integrity sha512-8bVUjXZvJacUFkJXHdyZ9iH1Eaj5V7I8c4NdH5sQJsdXkqT4CA5Dhb4yb4VE/3asyx4L9ayZr1NIhTsWHczmMw== +"@types/express-serve-static-core@^4.17.33": + version "4.17.33" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz#de35d30a9d637dc1450ad18dd583d75d5733d543" + integrity sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA== dependencies: - "@types/minimatch" "^5.1.2" "@types/node" "*" + "@types/qs" "*" + "@types/range-parser" "*" -"@types/glob@^7.1.1": +"@types/express@^4.7.0": + version "4.17.17" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.17.tgz#01d5437f6ef9cfa8668e616e13c2f2ac9a491ae4" + integrity sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q== + dependencies: + "@types/body-parser" "*" + "@types/express-serve-static-core" "^4.17.33" + "@types/qs" "*" + "@types/serve-static" "*" + +"@types/find-cache-dir@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@types/find-cache-dir/-/find-cache-dir-3.2.1.tgz#7b959a4b9643a1e6a1a5fe49032693cc36773501" + integrity sha512-frsJrz2t/CeGifcu/6uRo4b+SzAwT4NYCVPu1GN8IB9XTzrpPkGuV0tmh9mN+/L0PklAlsC3u5Fxt0ju00LXIw== + +"@types/glob@^7.1.3": version "7.2.0" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA== @@ -3412,13 +3305,6 @@ "@types/minimatch" "*" "@types/node" "*" -"@types/graceful-fs@^4.1.2": - version "4.1.6" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae" - integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw== - dependencies: - "@types/node" "*" - "@types/graceful-fs@^4.1.3": version "4.1.5" resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" @@ -3426,28 +3312,16 @@ dependencies: "@types/node" "*" -"@types/hast@^2.0.0": - version "2.3.4" - resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.4.tgz#8aa5ef92c117d20d974a82bdfb6a648b08c0bafc" - integrity sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g== - dependencies: - "@types/unist" "*" - -"@types/html-minifier-terser@^5.0.0": - version "5.1.2" - resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz#693b316ad323ea97eed6b38ed1a3cc02b1672b57" - integrity sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w== +"@types/html-minifier-terser@^6.0.0": + version "6.1.0" + resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35" + integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg== "@types/http-cache-semantics@^4.0.1": version "4.0.1" resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812" integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ== -"@types/is-function@^1.0.0": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@types/is-function/-/is-function-1.0.1.tgz#2d024eace950c836d9e3335a66b97960ae41d022" - integrity sha512-A79HEEiwXTFtfY+Bcbo58M2GRYzCr9itHWzbzHVFNEYCcoU/MMGwYYf721gBrnhpj1s6RGVVha/IgNFnR0Iw/Q== - "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.4" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" @@ -3484,7 +3358,7 @@ "@types/tough-cookie" "*" parse5 "^7.0.0" -"@types/json-schema@*", "@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": +"@types/json-schema@*", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.11" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== @@ -3499,14 +3373,22 @@ resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.191.tgz#09511e7f7cba275acd8b419ddac8da9a6a79e2fa" integrity sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ== -"@types/mdast@^3.0.0": - version "3.0.10" - resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.10.tgz#4724244a82a4598884cbbe9bcfd73dff927ee8af" - integrity sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA== - dependencies: - "@types/unist" "*" +"@types/mdx@^2.0.0": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/mdx/-/mdx-2.0.3.tgz#43fd32414f17fcbeced3578109a6edd877a2d96e" + integrity sha512-IgHxcT3RC8LzFLhKwP3gbMPeaK7BM9eBH46OdapPA7yvuIUJ8H6zHZV53J8hGZcTSnt95jANt+rTBNUUc22ACQ== + +"@types/mime-types@^2.1.0": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@types/mime-types/-/mime-types-2.1.1.tgz#d9ba43490fa3a3df958759adf69396c3532cf2c1" + integrity sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw== -"@types/minimatch@*", "@types/minimatch@^5.1.2": +"@types/mime@*": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-3.0.1.tgz#5f8f2bca0a5863cb69bc0b0acd88c96cb1d4ae10" + integrity sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA== + +"@types/minimatch@*": version "5.1.2" resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA== @@ -3529,10 +3411,10 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.18.tgz#8dfb97f0da23c2293e554c5a50d61ef134d7697f" integrity sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA== -"@types/node@^14.0.10 || ^16.0.0", "@types/node@^14.14.20 || ^16.0.0": - version "16.18.11" - resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.11.tgz#cbb15c12ca7c16c85a72b6bdc4d4b01151bb3cae" - integrity sha512-3oJbGBUWuS6ahSnEq1eN2XrCyf4YsWI8OyCvo7c64zQJNplk3mO84t53o8lfTk+2ji59g5ycfc6qQ3fdHliHuA== +"@types/node@^16.0.0": + version "16.18.12" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.12.tgz#e3bfea80e31523fde4292a6118f19ffa24fd6f65" + integrity sha512-vzLe5NaNMjIE3mcddFVGlAXN1LEWueUsMsOJWaT6wWMJGyljHAWHznqfnKUQWGzu7TLPrGvWdNAsvQYW+C0xtw== "@types/normalize-package-data@^2.4.0": version "2.4.1" @@ -3549,11 +3431,6 @@ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== -"@types/parse5@^5.0.0": - version "5.0.3" - resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-5.0.3.tgz#e7b5aebbac150f8b5fdd4a46e7f0bd8e65e19109" - integrity sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw== - "@types/prettier@^2.1.5": version "2.7.2" resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.2.tgz#6c2324641cc4ba050a8c710b2b251b377581fbf0" @@ -3569,11 +3446,16 @@ resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf" integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== -"@types/qs@^6.9.5": +"@types/qs@*", "@types/qs@^6.9.5": version "6.9.7" resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.7.tgz#63bb7d067db107cc1e457c303bc25d511febf6cb" integrity sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw== +"@types/range-parser@*": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" + integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== + "@types/react-dom@^18.0.0", "@types/react-dom@^18.0.10": version "18.0.10" resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.0.10.tgz#3b66dec56aa0f16a6cc26da9e9ca96c35c0b4352" @@ -3590,86 +3472,53 @@ "@types/scheduler" "*" csstype "^3.0.2" +"@types/react@>=16": + version "18.0.27" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.27.tgz#d9425abe187a00f8a5ec182b010d4fd9da703b71" + integrity sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA== + dependencies: + "@types/prop-types" "*" + "@types/scheduler" "*" + csstype "^3.0.2" + "@types/scheduler@*": version "0.16.2" resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== -"@types/semver@^7.3.12": +"@types/semver@^7.3.12", "@types/semver@^7.3.4": version "7.3.13" resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91" integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== -"@types/source-list-map@*": - version "0.1.2" - resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" - integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA== +"@types/serve-static@*": + version "1.15.0" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.15.0.tgz#c7930ff61afb334e121a9da780aac0d9b8f34155" + integrity sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg== + dependencies: + "@types/mime" "*" + "@types/node" "*" "@types/stack-utils@^2.0.0": version "2.0.1" resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== -"@types/tapable@^1", "@types/tapable@^1.0.5": - version "1.0.8" - resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.8.tgz#b94a4391c85666c7b73299fd3ad79d4faa435310" - integrity sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ== - "@types/tough-cookie@*": version "4.0.2" resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397" integrity sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw== -"@types/uglify-js@*": - version "3.17.1" - resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.17.1.tgz#e0ffcef756476410e5bce2cb01384ed878a195b5" - integrity sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g== - dependencies: - source-map "^0.6.1" - -"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2", "@types/unist@^2.0.3": +"@types/unist@^2.0.0": version "2.0.6" resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.6.tgz#250a7b16c3b91f672a24552ec64678eeb1d3a08d" integrity sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ== -"@types/webpack-env@^1.16.0": - version "1.18.0" - resolved "https://registry.yarnpkg.com/@types/webpack-env/-/webpack-env-1.18.0.tgz#ed6ecaa8e5ed5dfe8b2b3d00181702c9925f13fb" - integrity sha512-56/MAlX5WMsPVbOg7tAxnYvNYMMWr/QJiIp6BxVSW3JJXUVzzOn64qW8TzQyMSqSUFM2+PVI4aUHcHOzIz/1tg== - -"@types/webpack-sources@*": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-3.2.0.tgz#16d759ba096c289034b26553d2df1bf45248d38b" - integrity sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg== - dependencies: - "@types/node" "*" - "@types/source-list-map" "*" - source-map "^0.7.3" - -"@types/webpack@^4.41.26", "@types/webpack@^4.41.8": - version "4.41.33" - resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.33.tgz#16164845a5be6a306bcbe554a8e67f9cac215ffc" - integrity sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g== - dependencies: - "@types/node" "*" - "@types/tapable" "^1" - "@types/uglify-js" "*" - "@types/webpack-sources" "*" - anymatch "^3.0.0" - source-map "^0.6.0" - "@types/yargs-parser@*": version "21.0.0" resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== -"@types/yargs@^15.0.0": - version "15.0.15" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.15.tgz#e609a2b1ef9e05d90489c2f5f45bbfb2be092158" - integrity sha512-IziEYMU9XoVj8hWg7k+UJrXALkGFjWJhn5QFEv9q4p+v40oZhSuC135M38st8XPjICL7Ey4TV64ferBGUoJhBg== - dependencies: - "@types/yargs-parser" "*" - "@types/yargs@^16.0.0": version "16.0.5" resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.5.tgz#12cc86393985735a283e387936398c2f9e5f88e3" @@ -3823,64 +3672,21 @@ "@webassemblyjs/helper-numbers" "1.11.1" "@webassemblyjs/helper-wasm-bytecode" "1.11.1" -"@webassemblyjs/ast@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" - integrity sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA== - dependencies: - "@webassemblyjs/helper-module-context" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/wast-parser" "1.9.0" - "@webassemblyjs/floating-point-hex-parser@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== -"@webassemblyjs/floating-point-hex-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" - integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA== - "@webassemblyjs/helper-api-error@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== -"@webassemblyjs/helper-api-error@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" - integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw== - "@webassemblyjs/helper-buffer@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== -"@webassemblyjs/helper-buffer@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" - integrity sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA== - -"@webassemblyjs/helper-code-frame@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz#647f8892cd2043a82ac0c8c5e75c36f1d9159f27" - integrity sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA== - dependencies: - "@webassemblyjs/wast-printer" "1.9.0" - -"@webassemblyjs/helper-fsm@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8" - integrity sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw== - -"@webassemblyjs/helper-module-context@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz#25d8884b76839871a08a6c6f806c3979ef712f07" - integrity sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-numbers@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" @@ -3895,11 +3701,6 @@ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== -"@webassemblyjs/helper-wasm-bytecode@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" - integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw== - "@webassemblyjs/helper-wasm-section@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a" @@ -3910,16 +3711,6 @@ "@webassemblyjs/helper-wasm-bytecode" "1.11.1" "@webassemblyjs/wasm-gen" "1.11.1" -"@webassemblyjs/helper-wasm-section@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" - integrity sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" - "@webassemblyjs/ieee754@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614" @@ -3927,13 +3718,6 @@ dependencies: "@xtuc/ieee754" "^1.2.0" -"@webassemblyjs/ieee754@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" - integrity sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg== - dependencies: - "@xtuc/ieee754" "^1.2.0" - "@webassemblyjs/leb128@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5" @@ -3941,23 +3725,11 @@ dependencies: "@xtuc/long" "4.2.2" -"@webassemblyjs/leb128@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" - integrity sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw== - dependencies: - "@xtuc/long" "4.2.2" - "@webassemblyjs/utf8@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff" integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ== -"@webassemblyjs/utf8@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" - integrity sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w== - "@webassemblyjs/wasm-edit@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6" @@ -3972,20 +3744,6 @@ "@webassemblyjs/wasm-parser" "1.11.1" "@webassemblyjs/wast-printer" "1.11.1" -"@webassemblyjs/wasm-edit@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf" - integrity sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/helper-wasm-section" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" - "@webassemblyjs/wasm-opt" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - "@webassemblyjs/wast-printer" "1.9.0" - "@webassemblyjs/wasm-gen@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" @@ -3997,17 +3755,6 @@ "@webassemblyjs/leb128" "1.11.1" "@webassemblyjs/utf8" "1.11.1" -"@webassemblyjs/wasm-gen@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" - integrity sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/ieee754" "1.9.0" - "@webassemblyjs/leb128" "1.9.0" - "@webassemblyjs/utf8" "1.9.0" - "@webassemblyjs/wasm-opt@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" @@ -4018,16 +3765,6 @@ "@webassemblyjs/wasm-gen" "1.11.1" "@webassemblyjs/wasm-parser" "1.11.1" -"@webassemblyjs/wasm-opt@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" - integrity sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - "@webassemblyjs/wasm-parser@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" @@ -4040,30 +3777,6 @@ "@webassemblyjs/leb128" "1.11.1" "@webassemblyjs/utf8" "1.11.1" -"@webassemblyjs/wasm-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" - integrity sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-api-error" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/ieee754" "1.9.0" - "@webassemblyjs/leb128" "1.9.0" - "@webassemblyjs/utf8" "1.9.0" - -"@webassemblyjs/wast-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz#3031115d79ac5bd261556cecc3fa90a3ef451914" - integrity sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/floating-point-hex-parser" "1.9.0" - "@webassemblyjs/helper-api-error" "1.9.0" - "@webassemblyjs/helper-code-frame" "1.9.0" - "@webassemblyjs/helper-fsm" "1.9.0" - "@xtuc/long" "4.2.2" - "@webassemblyjs/wast-printer@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0" @@ -4072,15 +3785,6 @@ "@webassemblyjs/ast" "1.11.1" "@xtuc/long" "4.2.2" -"@webassemblyjs/wast-printer@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" - integrity sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/wast-parser" "1.9.0" - "@xtuc/long" "4.2.2" - "@xtuc/ieee754@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" @@ -4091,6 +3795,13 @@ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== +"@yarnpkg/esbuild-plugin-pnp@^3.0.0-rc.10": + version "3.0.0-rc.15" + resolved "https://registry.yarnpkg.com/@yarnpkg/esbuild-plugin-pnp/-/esbuild-plugin-pnp-3.0.0-rc.15.tgz#4e40e7d2eb28825c9a35ab9d04c363931d7c0e67" + integrity sha512-kYzDJO5CA9sy+on/s2aIW0411AklfCi8Ck/4QDivOqsMKpStZA2SsR+X27VTggGwpStWaLrjJcDcdDMowtG8MA== + dependencies: + tslib "^2.4.0" + JSONStream@^1.0.4: version "1.3.5" resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" @@ -4140,11 +3851,6 @@ acorn-walk@^8.0.2, acorn-walk@^8.1.1, acorn-walk@^8.2.0: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== -acorn@^6.4.1: - version "6.4.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" - integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== - acorn@^7.4.1: version "7.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" @@ -4165,6 +3871,11 @@ address@^1.0.1: resolved "https://registry.yarnpkg.com/address/-/address-1.2.2.tgz#2b5248dac5485a6390532c6a517fda2e3faac89e" integrity sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA== +agent-base@5: + version "5.1.1" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-5.1.1.tgz#e8fb3f242959db44d63be665db7a8e739537a32c" + integrity sha512-TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g== + agent-base@6, agent-base@^6.0.0, agent-base@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" @@ -4180,40 +3891,26 @@ aggregate-error@^3.0.0: clean-stack "^2.0.0" indent-string "^4.0.0" -airbnb-js-shims@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/airbnb-js-shims/-/airbnb-js-shims-2.2.1.tgz#db481102d682b98ed1daa4c5baa697a05ce5c040" - integrity sha512-wJNXPH66U2xjgo1Zwyjf9EydvJ2Si94+vSdk6EERcBfB2VZkeltpqIats0cqIZMLCXP3zcyaUKGYQeIBT6XjsQ== - dependencies: - array-includes "^3.0.3" - array.prototype.flat "^1.2.1" - array.prototype.flatmap "^1.2.1" - es5-shim "^4.5.13" - es6-shim "^0.35.5" - function.prototype.name "^1.1.0" - globalthis "^1.0.0" - object.entries "^1.1.0" - object.fromentries "^2.0.0 || ^1.0.0" - object.getownpropertydescriptors "^2.0.3" - object.values "^1.1.0" - promise.allsettled "^1.0.0" - promise.prototype.finally "^3.1.0" - string.prototype.matchall "^4.0.0 || ^3.0.1" - string.prototype.padend "^3.0.0" - string.prototype.padstart "^3.0.0" - symbol.prototype.description "^1.0.0" - -ajv-errors@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" - integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== +ajv-formats@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" + integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== + dependencies: + ajv "^8.0.0" -ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: +ajv-keywords@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== -ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5: +ajv-keywords@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" + integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw== + dependencies: + fast-deep-equal "^3.1.3" + +ajv@^6.10.0, ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -4223,7 +3920,7 @@ ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.11.0: +ajv@^8.0.0, ajv@^8.11.0, ajv@^8.8.0: version "8.12.0" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== @@ -4240,11 +3937,6 @@ ansi-align@^3.0.0, ansi-align@^3.0.1: dependencies: string-width "^4.1.0" -ansi-colors@^3.0.0: - version "3.2.4" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" - integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== - ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" @@ -4264,11 +3956,6 @@ ansi-html-community@0.0.8, ansi-html-community@^0.0.8: resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41" integrity sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw== -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== - ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" @@ -4303,27 +3990,12 @@ ansi-styles@^6.0.0, ansi-styles@^6.1.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== -ansi-to-html@^0.6.11: - version "0.6.15" - resolved "https://registry.yarnpkg.com/ansi-to-html/-/ansi-to-html-0.6.15.tgz#ac6ad4798a00f6aa045535d7f6a9cb9294eebea7" - integrity sha512-28ijx2aHJGdzbs+O5SNQF65r6rrKYnkuwTYm8lZlChuoJ9P1vVzIpWO20sQTqTPDXYp6NFwk326vApTtLVFXpQ== - dependencies: - entities "^2.0.0" - any-promise@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A== -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -anymatch@^3.0.0, anymatch@^3.0.3, anymatch@~3.1.2: +anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== @@ -4341,11 +4013,6 @@ app-root-dir@^1.0.2: resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== -aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - are-we-there-yet@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz#372e0e7bd279d8e94c653aaa1f67200884bf3e1c" @@ -4385,26 +4052,6 @@ aria-query@^5.0.0: dependencies: deep-equal "^2.0.5" -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== - -arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== - -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" - integrity sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw== - array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" @@ -4415,7 +4062,7 @@ array-ify@^1.0.0: resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" integrity sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng== -array-includes@^3.0.3, array-includes@^3.1.4, array-includes@^3.1.5, array-includes@^3.1.6: +array-includes@^3.1.4, array-includes@^3.1.5, array-includes@^3.1.6: version "3.1.6" resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.6.tgz#9e9e720e194f198266ba9e18c29e6a9b0e4b225f" integrity sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw== @@ -4426,29 +4073,12 @@ array-includes@^3.0.3, array-includes@^3.1.4, array-includes@^3.1.5, array-inclu get-intrinsic "^1.1.3" is-string "^1.0.7" -array-union@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng== - dependencies: - array-uniq "^1.0.1" - array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== - -array.prototype.flat@^1.2.1, array.prototype.flat@^1.2.5: +array.prototype.flat@^1.2.5: version "1.3.1" resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz#ffc6576a7ca3efc2f46a143b9d1dda9b4b3cf5e2" integrity sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA== @@ -4458,7 +4088,7 @@ array.prototype.flat@^1.2.1, array.prototype.flat@^1.2.5: es-abstract "^1.20.4" es-shim-unscopables "^1.0.0" -array.prototype.flatmap@^1.2.1, array.prototype.flatmap@^1.3.1: +array.prototype.flatmap@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz#1aae7903c2100433cb8261cd4ed310aab5c4a183" integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ== @@ -4479,17 +4109,6 @@ array.prototype.map@^1.0.5: es-array-method-boxes-properly "^1.0.0" is-string "^1.0.7" -array.prototype.reduce@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz#6b20b0daa9d9734dd6bc7ea66b5bbce395471eac" - integrity sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - es-array-method-boxes-properly "^1.0.0" - is-string "^1.0.7" - array.prototype.tosorted@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz#ccf44738aa2b5ac56578ffda97c03fd3e23dd532" @@ -4506,33 +4125,22 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== -arrify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" - integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== - -asn1.js@^5.2.0: - version "5.4.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" - integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA== +assert@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/assert/-/assert-2.0.0.tgz#95fc1c616d48713510680f2eaf2d10dd22e02d32" + integrity sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A== dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - safer-buffer "^2.1.0" + es6-object-assign "^1.1.0" + is-nan "^1.2.1" + object-is "^1.0.1" + util "^0.12.0" -assert@^1.1.1: - version "1.5.0" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb" - integrity sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA== +ast-types@0.15.2: + version "0.15.2" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.15.2.tgz#39ae4809393c4b16df751ee563411423e85fb49d" + integrity sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg== dependencies: - object-assign "^4.1.1" - util "0.10.3" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== + tslib "^2.0.1" ast-types@^0.13.2: version "0.13.4" @@ -4548,15 +4156,22 @@ ast-types@^0.14.2: dependencies: tslib "^2.0.1" +ast-types@^0.16.1: + version "0.16.1" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.16.1.tgz#7a9da1617c9081bc121faafe91711b4c8bb81da2" + integrity sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg== + dependencies: + tslib "^2.0.1" + astral-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== -async-each@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" - integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== +async-limiter@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" + integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== async-retry@1.3.3: version "1.3.3" @@ -4565,39 +4180,26 @@ async-retry@1.3.3: dependencies: retry "0.13.1" +async@^3.2.3: + version "3.2.4" + resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" + integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ== + asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== -at-least-node@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" - integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== - -atob@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -autoprefixer@^9.8.6: - version "9.8.8" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.8.tgz#fd4bd4595385fa6f06599de749a4d5f7a474957a" - integrity sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA== - dependencies: - browserslist "^4.12.0" - caniuse-lite "^1.0.30001109" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - picocolors "^0.2.1" - postcss "^7.0.32" - postcss-value-parser "^4.1.0" - available-typed-arrays@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== +babel-core@^7.0.0-bridge.0: + version "7.0.0-bridge.0" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" + integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== + babel-jest@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.3.1.tgz#05c83e0d128cd48c453eea851482a38782249f44" @@ -4611,7 +4213,7 @@ babel-jest@^29.3.1: graceful-fs "^4.2.9" slash "^3.0.0" -babel-loader@^8.0.0, babel-loader@^8.3.0: +babel-loader@^8.3.0: version "8.3.0" resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.3.0.tgz#124936e841ba4fe8176786d6ff28add1f134d6a8" integrity sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q== @@ -4621,27 +4223,20 @@ babel-loader@^8.0.0, babel-loader@^8.3.0: make-dir "^3.1.0" schema-utils "^2.6.5" +babel-loader@^9.0.0: + version "9.1.2" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-9.1.2.tgz#a16a080de52d08854ee14570469905a5fc00d39c" + integrity sha512-mN14niXW43tddohGl8HPu5yfQq70iUThvFL/4QzESA7GcZoC0eVOhvWdQ8+3UlSjaDE9MVtsW9mxDY07W7VpVA== + dependencies: + find-cache-dir "^3.3.2" + schema-utils "^4.0.0" + babel-plugin-add-react-displayname@^0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/babel-plugin-add-react-displayname/-/babel-plugin-add-react-displayname-0.0.5.tgz#339d4cddb7b65fd62d1df9db9fe04de134122bd5" integrity sha512-LY3+Y0XVDYcShHHorshrDbt4KFWL4bSeniCtl4SYZbask+Syngk1uMPCeN9+nSiZo6zX5s0RTq/J9Pnaaf/KHw== -babel-plugin-apply-mdx-type-prop@1.6.22: - version "1.6.22" - resolved "https://registry.yarnpkg.com/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz#d216e8fd0de91de3f1478ef3231e05446bc8705b" - integrity sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ== - dependencies: - "@babel/helper-plugin-utils" "7.10.4" - "@mdx-js/util" "1.6.22" - -babel-plugin-extract-import-names@1.6.22: - version "1.6.22" - resolved "https://registry.yarnpkg.com/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz#de5f9a28eb12f3eb2578bf74472204e66d1a13dc" - integrity sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ== - dependencies: - "@babel/helper-plugin-utils" "7.10.4" - -babel-plugin-istanbul@^6.0.0, babel-plugin-istanbul@^6.1.1: +babel-plugin-istanbul@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== @@ -4662,7 +4257,7 @@ babel-plugin-jest-hoist@^29.2.0: "@types/babel__core" "^7.1.14" "@types/babel__traverse" "^7.0.6" -babel-plugin-macros@^3.0.1, babel-plugin-macros@^3.1.0: +babel-plugin-macros@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg== @@ -4671,6 +4266,11 @@ babel-plugin-macros@^3.0.1, babel-plugin-macros@^3.1.0: cosmiconfig "^7.0.0" resolve "^1.19.0" +babel-plugin-named-exports-order@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/babel-plugin-named-exports-order/-/babel-plugin-named-exports-order-0.0.2.tgz#ae14909521cf9606094a2048239d69847540cb09" + integrity sha512-OgOYHOLoRK+/mvXU9imKHlG6GkPLYrUCvFXG/CM93R/aNNO8pOOF4aS+S8CCHMDQoNSeiOYEZb/G6RwL95Jktw== + babel-plugin-polyfill-corejs2@^0.3.3: version "0.3.3" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz#5d1bd3836d0a19e1b84bbf2d9640ccb6f951c122" @@ -4680,14 +4280,6 @@ babel-plugin-polyfill-corejs2@^0.3.3: "@babel/helper-define-polyfill-provider" "^0.3.3" semver "^6.1.1" -babel-plugin-polyfill-corejs3@^0.1.0: - version "0.1.7" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.1.7.tgz#80449d9d6f2274912e05d9e182b54816904befd0" - integrity sha512-u+gbS9bbPhZWEeyy1oR/YaaSpod/KDT07arZHb80aTpl8H5ZBq+uN1nN9/xtX7jQyfLdPfoqI4Rue/MQSWJquw== - dependencies: - "@babel/helper-define-polyfill-provider" "^0.1.5" - core-js-compat "^3.8.1" - babel-plugin-polyfill-corejs3@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz#56ad88237137eade485a71b52f72dbed57c6230a" @@ -4738,34 +4330,16 @@ babel-preset-jest@^29.2.0: babel-plugin-jest-hoist "^29.2.0" babel-preset-current-node-syntax "^1.0.0" -bail@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" - integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== - balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -base64-js@^1.0.2, base64-js@^1.3.1: +base64-js@^1.3.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - before-after-hook@^2.2.0: version "2.2.3" resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.3.tgz#c51e809c81a4e354084422b9b26bad88249c517c" @@ -4778,7 +4352,7 @@ better-opn@^2.1.1: dependencies: open "^7.0.3" -big-integer@^1.6.7: +big-integer@^1.6.44: version "1.6.51" resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.51.tgz#0df92a5d9880560d3ff2d5fd20245c889d130686" integrity sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg== @@ -4788,23 +4362,11 @@ big.js@^5.2.2: resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== -binary-extensions@^1.0.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" - integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== - binary-extensions@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== -bindings@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== - dependencies: - file-uri-to-path "1.0.0" - bl@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/bl/-/bl-5.1.0.tgz#183715f678c7188ecef9fe475d90209400624273" @@ -4814,21 +4376,6 @@ bl@^5.0.0: inherits "^2.0.4" readable-stream "^3.4.0" -bluebird@^3.5.5: - version "3.7.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" - integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: - version "4.12.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" - integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== - -bn.js@^5.0.0, bn.js@^5.1.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" - integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== - body-parser@1.20.1: version "1.20.1" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668" @@ -4880,12 +4427,12 @@ boxen@^7.0.0: widest-line "^4.0.1" wrap-ansi "^8.0.1" -bplist-parser@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/bplist-parser/-/bplist-parser-0.1.1.tgz#d60d5dcc20cba6dc7e1f299b35d3e1f95dafbae6" - integrity sha512-2AEM0FXy8ZxVLBuqX0hqt1gDwcnz2zygEkQ6zaD5Wko/sB9paUNwlpawrFtKeHUAQUOzjVy9AO4oeonqIHKA9Q== +bplist-parser@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/bplist-parser/-/bplist-parser-0.2.0.tgz#43a9d183e5bf9d545200ceac3e712f79ebbe8d0e" + integrity sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw== dependencies: - big-integer "^1.6.7" + big-integer "^1.6.44" brace-expansion@^1.1.7: version "1.1.11" @@ -4895,21 +4442,12 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -braces@^2.3.1, braces@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" + balanced-match "^1.0.0" braces@^3.0.2, braces@~3.0.2: version "3.0.2" @@ -4918,73 +4456,12 @@ braces@^3.0.2, braces@~3.0.2: dependencies: fill-range "^7.0.1" -brorand@^1.0.1, brorand@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== - -browserify-aes@^1.0.0, browserify-aes@^1.0.4: - version "1.2.0" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== - dependencies: - buffer-xor "^1.0.3" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.3" - inherits "^2.0.1" - safe-buffer "^5.0.1" - -browserify-cipher@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" - integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d" - integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog== - dependencies: - bn.js "^5.0.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3" - integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg== - dependencies: - bn.js "^5.1.1" - browserify-rsa "^4.0.1" - create-hash "^1.2.0" - create-hmac "^1.1.7" - elliptic "^6.5.3" - inherits "^2.0.4" - parse-asn1 "^5.1.5" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" - -browserify-zlib@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== - dependencies: - pako "~1.0.5" +browser-assert@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/browser-assert/-/browser-assert-1.2.1.tgz#9aaa5a2a8c74685c2ae05bfe46efd606f068c200" + integrity sha512-nfulgvOR6S4gt9UKCeGJOuSGBPGiFT6oQ/2UBnvTY/5aQ1PnksW72fhZkM30DzoRRv2WpwZf1vHHEr3mtuXIWQ== -browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.21.3, browserslist@^4.21.4: +browserslist@^4.14.5, browserslist@^4.21.3, browserslist@^4.21.4: version "4.21.4" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.4.tgz#e7496bbc67b9e39dd0f98565feccdcb0d4ff6987" integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw== @@ -5001,25 +4478,16 @@ bser@2.1.1: dependencies: node-int64 "^0.4.0" +buffer-crc32@~0.2.3: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== + buffer-from@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -buffer-xor@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== - -buffer@^4.3.0: - version "4.9.2" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" - integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - buffer@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" @@ -5028,11 +4496,6 @@ buffer@^6.0.3: base64-js "^1.3.1" ieee754 "^1.2.1" -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ== - bundle-require@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bundle-require/-/bundle-require-3.1.2.tgz#1374a7bdcb8b330a7ccc862ccbf7c137cc43ad27" @@ -5073,66 +4536,6 @@ cac@^6.7.12: resolved "https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959" integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== -cacache@^12.0.2: - version "12.0.4" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" - integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ== - dependencies: - bluebird "^3.5.5" - chownr "^1.1.1" - figgy-pudding "^3.5.1" - glob "^7.1.4" - graceful-fs "^4.1.15" - infer-owner "^1.0.3" - lru-cache "^5.1.1" - mississippi "^3.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.3" - ssri "^6.0.1" - unique-filename "^1.1.1" - y18n "^4.0.0" - -cacache@^15.0.5: - version "15.3.0" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" - integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== - dependencies: - "@npmcli/fs" "^1.0.0" - "@npmcli/move-file" "^1.0.1" - chownr "^2.0.0" - fs-minipass "^2.0.0" - glob "^7.1.4" - infer-owner "^1.0.4" - lru-cache "^6.0.0" - minipass "^3.1.1" - minipass-collect "^1.0.2" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.2" - mkdirp "^1.0.3" - p-map "^4.0.0" - promise-inflight "^1.0.1" - rimraf "^3.0.2" - ssri "^8.0.1" - tar "^6.0.2" - unique-filename "^1.1.1" - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - cacheable-lookup@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz#3476a8215d046e5a3202a9209dd13fec1f933a27" @@ -5159,17 +4562,12 @@ call-bind@^1.0.0, call-bind@^1.0.2: function-bind "^1.1.1" get-intrinsic "^1.0.2" -call-me-maybe@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa" - integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ== - callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== -camel-case@^4.1.1: +camel-case@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== @@ -5177,19 +4575,6 @@ camel-case@^4.1.1: pascal-case "^3.1.2" tslib "^2.0.3" -camelcase-css@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" - integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== - -camelcase-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" - integrity sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ== - dependencies: - camelcase "^2.0.0" - map-obj "^1.0.0" - camelcase-keys@^6.2.2: version "6.2.2" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" @@ -5199,11 +4584,6 @@ camelcase-keys@^6.2.2: map-obj "^4.0.0" quick-lru "^4.0.1" -camelcase@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - integrity sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw== - camelcase@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" @@ -5219,39 +4599,22 @@ camelcase@^7.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-7.0.1.tgz#f02e50af9fd7782bc8b88a3558c32fd3a388f048" integrity sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw== -caniuse-lite@^1.0.30001109: - version "1.0.30001447" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001447.tgz#ef1f39ae38d839d7176713735a8e467a0a2523bd" - integrity sha512-bdKU1BQDPeEXe9A39xJnGtY0uRq/z5osrnXUw0TcK+EYno45Y+U7QU9HhHEyzvMDffpYadFXi3idnSNkcwLkTw== - caniuse-lite@^1.0.30001400: version "1.0.30001442" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001442.tgz#40337f1cf3be7c637b061e2f78582dc1daec0614" integrity sha512-239m03Pqy0hwxYPYR5JwOIxRJfLTWtle9FV8zosfV5pHg+/51uD4nxcUlM8+mWWGfwKtt8lJNHnD3cWw9VZ6ow== -capture-exit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" - integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== - dependencies: - rsvp "^4.8.4" - -case-sensitive-paths-webpack-plugin@^2.3.0: +case-sensitive-paths-webpack-plugin@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz#db64066c6422eed2e08cc14b986ca43796dbc6d4" integrity sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw== -ccount@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.1.0.tgz#246687debb6014735131be8abab2d93898f8d043" - integrity sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg== - chalk@5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.1.2.tgz#d957f370038b75ac572471e83be4c5ca9f8e8c45" integrity sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ== -chalk@^2.0.0, chalk@^2.4.1: +chalk@^2.0.0: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -5260,7 +4623,7 @@ chalk@^2.0.0, chalk@^2.4.1: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^4.0.0, chalk@^4.1.0: +chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -5283,46 +4646,12 @@ char-regex@^2.0.0: resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-2.0.1.tgz#6dafdb25f9d3349914079f010ba8d0e6ff9cd01e" integrity sha512-oSvEeo6ZUD7NepqAat3RqoucZ5SeqLJgOvVIwkafu6IP3V0pO38s/ypdVUmDDK6qIIHNlYHJAKX9E7R7HoKElw== -character-entities-legacy@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" - integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== - -character-entities@^1.0.0: - version "1.2.4" - resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" - integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== - -character-reference-invalid@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" - integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== - chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -chokidar@^2.1.8: - version "2.1.8" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" - integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.1" - braces "^2.3.2" - glob-parent "^3.1.0" - inherits "^2.0.3" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - normalize-path "^3.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.2.1" - upath "^1.1.1" - optionalDependencies: - fsevents "^1.2.7" - -chokidar@^3.4.1, chokidar@^3.4.2, chokidar@^3.5.1: +chokidar@^3.5.1, chokidar@^3.5.3: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== @@ -5337,11 +4666,6 @@ chokidar@^3.4.1, chokidar@^3.4.2, chokidar@^3.5.1: optionalDependencies: fsevents "~2.3.2" -chownr@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== - chownr@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" @@ -5352,43 +4676,20 @@ chrome-trace-event@^1.0.2: resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== -ci-info@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" - integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== - ci-info@^3.2.0: version "3.7.1" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.7.1.tgz#708a6cdae38915d597afdf3b145f2f8e1ff55f3f" integrity sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w== -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - cjs-module-lexer@^1.0.0: version "1.2.2" resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -clean-css@^4.2.3: - version "4.2.4" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.4.tgz#733bf46eba4e607c6891ea57c24a989356831178" - integrity sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A== +clean-css@^5.2.2: + version "5.3.2" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.3.2.tgz#70ecc7d4d4114921f5d298349ff86a31a9975224" + integrity sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww== dependencies: source-map "~0.6.0" @@ -5488,44 +4789,21 @@ clone@^1.0.2: resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== -clsx@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.1.0.tgz#62937c6adfea771247c34b54d320fb99624f5702" - integrity sha512-3avwM37fSK5oP6M5rQ9CNe99lwxhXDOeSWVPAOYF6OazUTgZCMb0yWlJpmdD74REy1gkEaFiub2ULv4fq9GUhA== - clsx@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.1.1.tgz#98b3134f9abbdf23b2663491ace13c5c03a73188" integrity sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA== -clsx@^1.0.4: - version "1.2.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12" - integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== - co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== -collapse-white-space@^1.0.2: - version "1.0.6" - resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-1.0.6.tgz#e63629c0016665792060dbbeb79c42239d2c5287" - integrity sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ== - collect-v8-coverage@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -5555,7 +4833,7 @@ color-support@^1.1.2: resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -colorette@^2.0.19: +colorette@^2.0.10, colorette@^2.0.19: version "2.0.19" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== @@ -5567,17 +4845,12 @@ combined-stream@^1.0.8: dependencies: delayed-stream "~1.0.0" -comma-separated-tokens@^1.0.0: - version "1.0.8" - resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz#632b80b6117867a158f1080ad498b2fbe7e3f5ea" - integrity sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw== - commander@^2.19.0, commander@^2.20.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== -commander@^4.0.0, commander@^4.1.1: +commander@^4.0.0: version "4.1.1" resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== @@ -5587,6 +4860,11 @@ commander@^6.2.1: resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== +commander@^8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== + commander@^9.4.1: version "9.4.1" resolved "https://registry.yarnpkg.com/commander/-/commander-9.4.1.tgz#d1dd8f2ce6faf93147295c0df13c7c21141cfbdd" @@ -5610,11 +4888,6 @@ compare-func@^2.0.0: array-ify "^1.0.0" dot-prop "^5.1.0" -component-emitter@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" - integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== - compressible@~2.0.16: version "2.0.18" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" @@ -5640,7 +4913,7 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== -concat-stream@^1.5.0: +concat-stream@^1.6.2: version "1.6.2" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== @@ -5679,21 +4952,11 @@ configstore@^6.0.0: write-file-atomic "^3.0.3" xdg-basedir "^5.0.1" -console-browserify@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" - integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== - console-control-strings@^1.0.0, console-control-strings@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ== - content-disposition@0.5.4: version "0.5.4" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" @@ -5873,7 +5136,7 @@ conventional-recommended-bump@^6.1.0: meow "^8.0.0" q "^1.5.1" -convert-source-map@^1.4.0, convert-source-map@^1.5.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: +convert-source-map@^1.5.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: version "1.9.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== @@ -5893,24 +5156,7 @@ cookie@0.5.0: resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== - -core-js-compat@^3.25.1, core-js-compat@^3.8.1: +core-js-compat@^3.25.1: version "3.27.2" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.27.2.tgz#607c50ad6db8fd8326af0b2883ebb987be3786da" integrity sha512-welaYuF7ZtbYKGrIy7y3eb40d37rG1FvzEOfe7hSLd2iD6duMDqUhRfSvCGyC46HhR6Y8JXXdZ2lnRUMkPBpvg== @@ -5922,11 +5168,6 @@ core-js-pure@^3.23.3: resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.27.2.tgz#47e9cc96c639eefc910da03c3ece26c5067c7553" integrity sha512-Cf2jqAbXgWH3VVzjyaaFkY1EBazxugUepGymDoeteyYr9ByX51kD2jdHZlsEF/xnJMyN3Prua7mQuzwMg6Zc9A== -core-js@^3.0.4, core-js@^3.6.5, core-js@^3.8.2: - version "3.27.2" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.27.2.tgz#85b35453a424abdcacb97474797815f4d62ebbf7" - integrity sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w== - core-util-is@~1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" @@ -5947,18 +5188,7 @@ cosmiconfig@8.0.0, cosmiconfig@^8.0.0: parse-json "^5.0.0" path-type "^4.0.0" -cosmiconfig@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" - integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== - dependencies: - "@types/parse-json" "^4.0.0" - import-fresh "^3.1.0" - parse-json "^5.0.0" - path-type "^4.0.0" - yaml "^1.7.2" - -cosmiconfig@^7.0.0: +cosmiconfig@^7.0.0, cosmiconfig@^7.0.1: version "7.1.0" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== @@ -5969,78 +5199,11 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" -cp-file@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/cp-file/-/cp-file-7.0.0.tgz#b9454cfd07fe3b974ab9ea0e5f29655791a9b8cd" - integrity sha512-0Cbj7gyvFVApzpK/uhCtQ/9kE9UnYpxMzaq5nQQC/Dh4iaj5fxp7iEFIullrYwzj8nf0qnsI1Qsx34hAeAebvw== - dependencies: - graceful-fs "^4.1.2" - make-dir "^3.0.0" - nested-error-stacks "^2.0.0" - p-event "^4.1.0" - -cpy@^8.1.2: - version "8.1.2" - resolved "https://registry.yarnpkg.com/cpy/-/cpy-8.1.2.tgz#e339ea54797ad23f8e3919a5cffd37bfc3f25935" - integrity sha512-dmC4mUesv0OYH2kNFEidtf/skUwv4zePmGeepjyyJ0qTo5+8KhA1o99oIAwVVLzQMAeDJml74d6wPPKb6EZUTg== - dependencies: - arrify "^2.0.1" - cp-file "^7.0.0" - globby "^9.2.0" - has-glob "^1.0.0" - junk "^3.1.0" - nested-error-stacks "^2.1.0" - p-all "^2.1.0" - p-filter "^2.1.0" - p-map "^3.0.0" - -create-ecdh@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e" - integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A== - dependencies: - bn.js "^4.1.0" - elliptic "^6.5.3" - -create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - md5.js "^1.3.4" - ripemd160 "^2.0.1" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - create-require@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== -cross-spawn@^6.0.0: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -6050,22 +5213,10 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" -crypto-browserify@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - randomfill "^1.0.3" +crypto-random-string@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" + integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== crypto-random-string@^4.0.0: version "4.0.0" @@ -6074,24 +5225,19 @@ crypto-random-string@^4.0.0: dependencies: type-fest "^1.0.1" -css-loader@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.6.0.tgz#2e4b2c7e6e2d27f8c8f28f61bffcd2e6c91ef645" - integrity sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ== +css-loader@^6.7.1: + version "6.7.3" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.7.3.tgz#1e8799f3ccc5874fdd55461af51137fcc5befbcd" + integrity sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ== dependencies: - camelcase "^5.3.1" - cssesc "^3.0.0" - icss-utils "^4.1.1" - loader-utils "^1.2.3" - normalize-path "^3.0.0" - postcss "^7.0.32" - postcss-modules-extract-imports "^2.0.0" - postcss-modules-local-by-default "^3.0.2" - postcss-modules-scope "^2.2.0" - postcss-modules-values "^3.0.0" - postcss-value-parser "^4.1.0" - schema-utils "^2.7.0" - semver "^6.3.0" + icss-utils "^5.1.0" + postcss "^8.4.19" + postcss-modules-extract-imports "^3.0.0" + postcss-modules-local-by-default "^4.0.0" + postcss-modules-scope "^3.0.0" + postcss-modules-values "^4.0.0" + postcss-value-parser "^4.2.0" + semver "^7.3.8" css-select@^4.1.3: version "4.3.0" @@ -6141,18 +5287,6 @@ csstype@^3.0.2: resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" - integrity sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng== - dependencies: - array-find-index "^1.0.1" - -cyclist@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" - integrity sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A== - dargs@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" @@ -6182,7 +5316,7 @@ dateformat@^3.0.0: resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== -debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.9: +debug@2.6.9, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -6196,7 +5330,7 @@ debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: dependencies: ms "2.1.2" -debug@^3.0.0, debug@^3.2.7: +debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== @@ -6211,7 +5345,7 @@ decamelize-keys@^1.1.0: decamelize "^1.1.0" map-obj "^1.0.0" -decamelize@^1.1.0, decamelize@^1.1.2: +decamelize@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== @@ -6221,11 +5355,6 @@ decimal.js@^10.4.2: resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== -decode-uri-component@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" - integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== - decompress-response@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" @@ -6276,14 +5405,13 @@ deepmerge@^4.2.2: resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== -default-browser-id@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/default-browser-id/-/default-browser-id-1.0.4.tgz#e59d09a5d157b828b876c26816e61c3d2a2c203a" - integrity sha512-qPy925qewwul9Hifs+3sx1ZYn14obHxpkX+mPD369w4Rzg+YkJBgi3SOvwUq81nWSjqGUegIgEPwD8u+HUnxlw== +default-browser-id@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/default-browser-id/-/default-browser-id-3.0.0.tgz#bee7bbbef1f4e75d31f98f4d3f1556a14cea790c" + integrity sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA== dependencies: - bplist-parser "^0.1.0" - meow "^3.1.0" - untildify "^2.0.0" + bplist-parser "^0.2.0" + untildify "^4.0.0" defaults@^1.0.3: version "1.0.4" @@ -6302,7 +5430,7 @@ define-lazy-prop@^2.0.0: resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== -define-properties@^1.1.2, define-properties@^1.1.3, define-properties@^1.1.4: +define-properties@^1.1.3, define-properties@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1" integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== @@ -6310,27 +5438,10 @@ define-properties@^1.1.2, define-properties@^1.1.3, define-properties@^1.1.4: has-property-descriptors "^1.0.0" object-keys "^1.1.1" -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" +defu@^6.1.1: + version "6.1.2" + resolved "https://registry.yarnpkg.com/defu/-/defu-6.1.2.tgz#1217cba167410a1765ba93893c6dbac9ed9d9e5c" + integrity sha512-+uO4+qr7msjNNWKYPHqN/3+Dx3NFkmIzayk2L1MyZQlvgZb/J1A0fo410dpKrN2SnqFjt8n4JL8fDJE0wIgjFQ== degenerator@^3.0.2: version "3.0.2" @@ -6342,6 +5453,20 @@ degenerator@^3.0.2: esprima "^4.0.0" vm2 "^3.9.8" +del@^6.0.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/del/-/del-6.1.1.tgz#3b70314f1ec0aa325c6b14eb36b95786671edb7a" + integrity sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg== + dependencies: + globby "^11.0.1" + graceful-fs "^4.2.4" + is-glob "^4.0.1" + is-path-cwd "^2.2.0" + is-path-inside "^3.0.2" + p-map "^4.0.0" + rimraf "^3.0.2" + slash "^3.0.0" + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -6362,25 +5487,20 @@ deprecation@^2.0.0, deprecation@^2.3.1: resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== -des.js@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" - integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA== - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" +dequal@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" + integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== destroy@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== -detab@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/detab/-/detab-2.0.4.tgz#b927892069aff405fbb9a186fe97a44a92a94b43" - integrity sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g== - dependencies: - repeat-string "^1.5.4" +detect-indent@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" + integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== detect-newline@^3.0.0: version "3.1.0" @@ -6412,22 +5532,6 @@ diff@^4.0.1: resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== -diffie-hellman@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - -dir-glob@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" - integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== - dependencies: - path-type "^3.0.0" - dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -6470,16 +5574,6 @@ dom-serializer@^1.0.1: domhandler "^4.2.0" entities "^2.0.0" -dom-walk@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" - integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w== - -domain-browser@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== - domelementtype@^2.0.1, domelementtype@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" @@ -6530,25 +5624,15 @@ dot-prop@^6.0.1: dependencies: is-obj "^2.0.0" -dotenv-expand@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" - integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== - -dotenv@^8.0.0: - version "8.6.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" - integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== +dotenv-expand@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-10.0.0.tgz#12605d00fb0af6d0a592e6558585784032e4ef37" + integrity sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A== -duplexify@^3.4.2, duplexify@^3.6.0: - version "3.7.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" - integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" +dotenv@^16.0.0: + version "16.0.3" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.0.3.tgz#115aec42bac5053db3c456db30cc243a5a836a07" + integrity sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ== eastasianwidth@^0.2.0: version "0.2.0" @@ -6560,24 +5644,18 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== +ejs@^3.1.8: + version "3.1.8" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.8.tgz#758d32910c78047585c7ef1f92f9ee041c1c190b" + integrity sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ== + dependencies: + jake "^10.8.5" + electron-to-chromium@^1.4.251: version "1.4.284" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz#61046d1e4cab3a25238f6bf7413795270f125592" integrity sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA== -elliptic@^6.5.3: - version "6.5.4" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" - integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== - dependencies: - bn.js "^4.11.9" - brorand "^1.1.0" - hash.js "^1.0.0" - hmac-drbg "^1.0.1" - inherits "^2.0.4" - minimalistic-assert "^1.0.1" - minimalistic-crypto-utils "^1.0.1" - emittery@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" @@ -6603,13 +5681,6 @@ encodeurl@~1.0.2: resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.4" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" - integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== - dependencies: - once "^1.4.0" - endent@^2.0.1: version "2.1.0" resolved "https://registry.yarnpkg.com/endent/-/endent-2.1.0.tgz#5aaba698fb569e5e18e69e1ff7a28ff35373cd88" @@ -6619,15 +5690,6 @@ endent@^2.0.1: fast-json-parse "^1.0.3" objectorarray "^1.0.5" -enhanced-resolve@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz#2f3cfd84dbe3b487f18f2db2ef1e064a571ca5ec" - integrity sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg== - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.5.0" - tapable "^1.0.0" - enhanced-resolve@^5.10.0: version "5.12.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz#300e1c90228f5b570c4d35babf263f6da7155634" @@ -6646,14 +5708,12 @@ entities@^4.4.0: resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174" integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA== -errno@^0.1.3, errno@~0.1.7: - version "0.1.8" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" - integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== - dependencies: - prr "~1.0.1" +envinfo@^7.7.3: + version "7.8.1" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" + integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== -error-ex@^1.2.0, error-ex@^1.3.1: +error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== @@ -6769,15 +5829,10 @@ es-to-primitive@^1.2.1: is-date-object "^1.0.1" is-symbol "^1.0.2" -es5-shim@^4.5.13: - version "4.6.7" - resolved "https://registry.yarnpkg.com/es5-shim/-/es5-shim-4.6.7.tgz#bc67ae0fc3dd520636e0a1601cc73b450ad3e955" - integrity sha512-jg21/dmlrNQI7JyyA2w7n+yifSxBng0ZralnSfVZjoCawgNTCnS+yBCyVM9DL5itm7SUnDGgv7hcq2XCZX4iRQ== - -es6-shim@^0.35.5: - version "0.35.7" - resolved "https://registry.yarnpkg.com/es6-shim/-/es6-shim-0.35.7.tgz#db00f1cbb7d4de70b50dcafa45b157e9ba28f5d2" - integrity sha512-baZkUfTDSx7X69+NA8imbvGrsPfqH0MX7ADdIDjqwsI8lkTgLIiD2QWrUCSGsUQ0YMnSCA/4pNgSyXdnLHWf3A== +es6-object-assign@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/es6-object-assign/-/es6-object-assign-1.1.0.tgz#c2c3582656247c39ea107cb1e6652b6f9f24523c" + integrity sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw== esbuild-android-64@0.15.18: version "0.15.18" @@ -6859,6 +5914,11 @@ esbuild-openbsd-64@0.15.18: resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.18.tgz#79591a90aa3b03e4863f93beec0d2bab2853d0a8" integrity sha512-yK5NCcH31Uae076AyQAXeJzt/vxIo9+omZRKj1pauhk3ITuADzuOx5N2fdHrAKPxN+zH3w96uFKlY7yIn490xQ== +esbuild-plugin-alias@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/esbuild-plugin-alias/-/esbuild-plugin-alias-0.2.1.tgz#45a86cb941e20e7c2bc68a2bea53562172494fcb" + integrity sha512-jyfL/pwPqaFXyKnj8lP8iLk6Z0m099uXR45aSN8Av1XD4vhvQutxxPzgA2bTcAwQpa1zCXDcWOlhFgyP3GKqhQ== + esbuild-plugin-replace@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/esbuild-plugin-replace/-/esbuild-plugin-replace-1.3.0.tgz#5959eb19bc5cb3ec2d0a69228b62fc3682bd2f26" @@ -6866,6 +5926,13 @@ esbuild-plugin-replace@^1.3.0: dependencies: magic-string "^0.25.7" +esbuild-register@^3.3.3: + version "3.4.2" + resolved "https://registry.yarnpkg.com/esbuild-register/-/esbuild-register-3.4.2.tgz#1e39ee0a77e8f320a9790e68c64c3559620b9175" + integrity sha512-kG/XyTDyz6+YDuyfB9ZoSIOOmgyFCH+xPRtsCa8W85HLRV5Csp+o3jWVbOSHgSLfyLc5DmP+KFDNwty4mEjC+Q== + dependencies: + debug "^4.3.4" + esbuild-sunos-64@0.15.18: version "0.15.18" resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.15.18.tgz#fd528aa5da5374b7e1e93d36ef9b07c3dfed2971" @@ -6914,6 +5981,34 @@ esbuild@^0.15.1: esbuild-windows-64 "0.15.18" esbuild-windows-arm64 "0.15.18" +esbuild@^0.16.4: + version "0.16.17" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.16.17.tgz#fc2c3914c57ee750635fee71b89f615f25065259" + integrity sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg== + optionalDependencies: + "@esbuild/android-arm" "0.16.17" + "@esbuild/android-arm64" "0.16.17" + "@esbuild/android-x64" "0.16.17" + "@esbuild/darwin-arm64" "0.16.17" + "@esbuild/darwin-x64" "0.16.17" + "@esbuild/freebsd-arm64" "0.16.17" + "@esbuild/freebsd-x64" "0.16.17" + "@esbuild/linux-arm" "0.16.17" + "@esbuild/linux-arm64" "0.16.17" + "@esbuild/linux-ia32" "0.16.17" + "@esbuild/linux-loong64" "0.16.17" + "@esbuild/linux-mips64el" "0.16.17" + "@esbuild/linux-ppc64" "0.16.17" + "@esbuild/linux-riscv64" "0.16.17" + "@esbuild/linux-s390x" "0.16.17" + "@esbuild/linux-x64" "0.16.17" + "@esbuild/netbsd-x64" "0.16.17" + "@esbuild/openbsd-x64" "0.16.17" + "@esbuild/sunos-x64" "0.16.17" + "@esbuild/win32-arm64" "0.16.17" + "@esbuild/win32-ia32" "0.16.17" + "@esbuild/win32-x64" "0.16.17" + escalade@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" @@ -7088,14 +6183,6 @@ eslint-scope@5.1.1, eslint-scope@^5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" -eslint-scope@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" - integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - eslint-scope@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642" @@ -7175,7 +6262,7 @@ espree@^9.4.0: acorn-jsx "^5.3.2" eslint-visitor-keys "^3.3.0" -esprima@^4.0.0, esprima@^4.0.1: +esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== @@ -7187,7 +6274,7 @@ esquery@^1.4.0: dependencies: estraverse "^5.1.0" -esrecurse@^4.1.0, esrecurse@^4.3.0: +esrecurse@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== @@ -7223,24 +6310,11 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== -events@^3.0.0, events@^3.2.0: +events@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== -evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - -exec-sh@^0.3.2: - version "0.3.6" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" - integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== - execa@6.1.0, execa@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/execa/-/execa-6.1.0.tgz#cea16dee211ff011246556388effa0818394fb20" @@ -7256,19 +6330,6 @@ execa@6.1.0, execa@^6.1.0: signal-exit "^3.0.7" strip-final-newline "^3.0.0" -execa@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" - integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== - dependencies: - cross-spawn "^6.0.0" - get-stream "^4.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - execa@^5.0.0, execa@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" @@ -7289,18 +6350,10 @@ exit@^0.1.2: resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" +expect-type@^0.14.2: + version "0.14.2" + resolved "https://registry.yarnpkg.com/expect-type/-/expect-type-0.14.2.tgz#3924d0e596455a9b27af48e8a99c582cdd4506eb" + integrity sha512-ed3+tr5ujbIYXZ8Pl/VgIphwJQ0q5tBLGGdn7Zvwt1WyPBRX83xjT5pT77P/GkuQbctx0K2ZNSSan7eruJqTCQ== expect@^29.0.0, expect@^29.3.1: version "29.3.1" @@ -7313,7 +6366,7 @@ expect@^29.0.0, expect@^29.3.1: jest-message-util "^29.3.1" jest-util "^29.3.1" -express@^4.17.1: +express@^4.17.3: version "4.18.2" resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ== @@ -7350,21 +6403,6 @@ express@^4.17.1: utils-merge "1.0.1" vary "~1.1.2" -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - extend@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" @@ -7379,19 +6417,15 @@ external-editor@^3.0.3: iconv-lite "^0.4.24" tmp "^0.0.33" -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" +extract-zip@^1.6.6: + version "1.7.0" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.7.0.tgz#556cc3ae9df7f452c493a0cfb51cc30277940927" + integrity sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA== + dependencies: + concat-stream "^1.6.2" + debug "^2.6.9" + mkdirp "^0.5.4" + yauzl "^2.10.0" fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" @@ -7403,18 +6437,6 @@ fast-diff@^1.1.2: resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== -fast-glob@^2.2.6: - version "2.2.7" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" - integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== - dependencies: - "@mrmlnc/readdir-enhanced" "^2.2.1" - "@nodelib/fs.stat" "^1.1.2" - glob-parent "^3.1.0" - is-glob "^4.0.0" - merge2 "^1.2.3" - micromatch "^3.1.10" - fast-glob@^3.2.11, fast-glob@^3.2.9: version "3.2.12" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" @@ -7455,6 +6477,13 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" +fd-slicer@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" + integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== + dependencies: + pend "~1.2.0" + fetch-blob@^3.1.2, fetch-blob@^3.1.4: version "3.2.0" resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-3.2.0.tgz#f09b8d4bbd45adc6f0c20b7e787e793e309dcce9" @@ -7468,11 +6497,6 @@ fetch-retry@^5.0.2: resolved "https://registry.yarnpkg.com/fetch-retry/-/fetch-retry-5.0.3.tgz#edfa3641892995f9afee94f25b168827aa97fe3d" integrity sha512-uJQyMrX5IJZkhoEUBQ3EjxkeiZkppBd5jS/fMTJmfZxLSiaQjv2zD0kTvuvkSH89uFvgSlB6ueGpjD3HWN7Bxw== -figgy-pudding@^3.5.1: - version "3.5.2" - resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" - integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== - figures@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/figures/-/figures-5.0.0.tgz#126cd055052dea699f8a54e8c9450e6ecfc44d5f" @@ -7488,41 +6512,25 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" -file-loader@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" - integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== - dependencies: - loader-utils "^2.0.0" - schema-utils "^3.0.0" - -file-system-cache@^1.0.5: - version "1.1.0" - resolved "https://registry.yarnpkg.com/file-system-cache/-/file-system-cache-1.1.0.tgz#984de17b976b75a77a27e08d6828137c1aa80fa1" - integrity sha512-IzF5MBq+5CR0jXx5RxPe4BICl/oEhBSXKaL9fLhAXrIfIUS77Hr4vzrYyqYMHN6uTt+BOqi3fDCTjjEBCjERKw== +file-system-cache@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/file-system-cache/-/file-system-cache-2.0.2.tgz#6b51d58c5786302146fa883529e0d7f88896e948" + integrity sha512-lp4BHO4CWqvRyx88Tt3quZic9ZMf4cJyquYq7UI8sH42Bm2ArlBBjKQAalZOo+UfaBassb7X123Lik5qZ/tSAA== dependencies: - fs-extra "^10.1.0" + fs-extra "^11.1.0" ramda "^0.28.0" -file-uri-to-path@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== - file-uri-to-path@2: version "2.0.0" resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz#7b415aeba227d575851e0a5b0c640d7656403fba" integrity sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg== -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== +filelist@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" + integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" + minimatch "^5.0.1" fill-range@^7.0.1: version "7.0.1" @@ -7544,7 +6552,7 @@ finalhandler@1.2.0: statuses "2.0.1" unpipe "~1.0.0" -find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: +find-cache-dir@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== @@ -7553,7 +6561,7 @@ find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: make-dir "^2.0.0" pkg-dir "^3.0.0" -find-cache-dir@^3.3.1: +find-cache-dir@^3.0.0, find-cache-dir@^3.3.1, find-cache-dir@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b" integrity sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig== @@ -7567,14 +6575,6 @@ find-root@^1.1.0: resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA== - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - find-up@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" @@ -7618,20 +6618,10 @@ flatted@^3.1.0: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== -flush-write-stream@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" - integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== - dependencies: - inherits "^2.0.3" - readable-stream "^2.3.6" - -focus-lock@^0.8.0: - version "0.8.1" - resolved "https://registry.yarnpkg.com/focus-lock/-/focus-lock-0.8.1.tgz#bb36968abf77a2063fa173cb6c47b12ac8599d33" - integrity sha512-/LFZOIo82WDsyyv7h7oc0MJF9ACOvDRdx9rWPZ2pgMfNWu/z8hQDBtOchuB/0BVLmuFOZjV02YwUVzNsWx/EzA== - dependencies: - tslib "^1.9.3" +flow-parser@0.*: + version "0.199.1" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.199.1.tgz#d2e37d3ccd3a4301738a429079a41320a54ada57" + integrity sha512-Mt+GFUQYij3miM7Z6o8E3aHTGXZKSOhvlCFgdQRoi6fkWfhyijnoX51zpOxM5PmZuiV6gallWhDZzwOsWxRutg== for-each@^0.3.3: version "0.3.3" @@ -7640,11 +6630,6 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" -for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== - foreground-child@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-2.0.0.tgz#71b32800c9f15aa8f2f83f4a6bd9bff35d861a53" @@ -7653,37 +6638,23 @@ foreground-child@^2.0.0: cross-spawn "^7.0.0" signal-exit "^3.0.2" -fork-ts-checker-webpack-plugin@^4.1.6: - version "4.1.6" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-4.1.6.tgz#5055c703febcf37fa06405d400c122b905167fc5" - integrity sha512-DUxuQaKoqfNne8iikd14SAkh5uw4+8vNifp6gmA73yYNS6ywLIWSLD/n/mBzHQRpW3J7rbATEakmiA8JvkTyZw== - dependencies: - "@babel/code-frame" "^7.5.5" - chalk "^2.4.1" - micromatch "^3.1.10" - minimatch "^3.0.4" - semver "^5.6.0" - tapable "^1.0.0" - worker-rpc "^0.1.0" - -fork-ts-checker-webpack-plugin@^6.0.4: - version "6.5.2" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz#4f67183f2f9eb8ba7df7177ce3cf3e75cdafb340" - integrity sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA== +fork-ts-checker-webpack-plugin@^7.2.8: + version "7.3.0" + resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-7.3.0.tgz#a9c984a018493962360d7c7e77a67b44a2d5f3aa" + integrity sha512-IN+XTzusCjR5VgntYFgxbxVx3WraPRnKehBFrf00cMSrtUuW9MsG9dhL6MWpY6MkjC3wVwoujfCDgZZCQwbswA== dependencies: - "@babel/code-frame" "^7.8.3" - "@types/json-schema" "^7.0.5" - chalk "^4.1.0" - chokidar "^3.4.2" - cosmiconfig "^6.0.0" + "@babel/code-frame" "^7.16.7" + chalk "^4.1.2" + chokidar "^3.5.3" + cosmiconfig "^7.0.1" deepmerge "^4.2.2" - fs-extra "^9.0.0" - glob "^7.1.6" - memfs "^3.1.2" + fs-extra "^10.0.0" + memfs "^3.4.1" minimatch "^3.0.4" - schema-utils "2.7.0" - semver "^7.3.2" - tapable "^1.0.0" + node-abort-controller "^3.0.1" + schema-utils "^3.1.1" + semver "^7.3.5" + tapable "^2.2.1" form-data-encoder@^2.1.2: version "2.1.4" @@ -7720,27 +6691,12 @@ forwarded@0.2.0: resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== - dependencies: - map-cache "^0.2.2" - fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g== - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - -fs-extra@^10.1.0: +fs-extra@^10.0.0: version "10.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== @@ -7749,7 +6705,7 @@ fs-extra@^10.1.0: jsonfile "^6.0.1" universalify "^2.0.0" -fs-extra@^11.0.0: +fs-extra@^11.0.0, fs-extra@^11.1.0: version "11.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.0.tgz#5784b102104433bb0e090f48bfc4a30742c357ed" integrity sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw== @@ -7767,16 +6723,6 @@ fs-extra@^8.1.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^9.0.0, fs-extra@^9.0.1: - version "9.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" - integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== - dependencies: - at-least-node "^1.0.0" - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - fs-minipass@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" @@ -7789,30 +6735,12 @@ fs-monkey@^1.0.3: resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.3.tgz#ae3ac92d53bb328efe0e9a1d9541f6ad8d48e2d3" integrity sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q== -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA== - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@^1.2.7: - version "1.2.13" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" - integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== - dependencies: - bindings "^1.5.0" - nan "^2.12.1" - -fsevents@^2.1.2, fsevents@^2.3.2, fsevents@~2.3.2: +fsevents@^2.3.2, fsevents@~2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== @@ -7830,7 +6758,7 @@ function-bind@^1.1.1: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== -function.prototype.name@^1.1.0, function.prototype.name@^1.1.5: +function.prototype.name@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== @@ -7860,7 +6788,7 @@ gauge@^3.0.0: strip-ansi "^6.0.1" wide-align "^1.1.2" -gensync@^1.0.0-beta.1, gensync@^1.0.0-beta.2: +gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== @@ -7894,17 +6822,10 @@ get-pkg-repo@^4.0.0: through2 "^2.0.0" yargs "^16.2.0" -get-stdin@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" - integrity sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw== - -get-stream@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== - dependencies: - pump "^3.0.0" +get-port@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" + integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== get-stream@^6.0.0, get-stream@^6.0.1: version "6.0.1" @@ -7936,10 +6857,18 @@ get-uri@3: fs-extra "^8.1.0" ftp "^0.3.10" -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== +giget@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/giget/-/giget-1.0.0.tgz#fdd7e61a84996b19e00d2d4a6a65c60cc1f61c3d" + integrity sha512-KWELZn3Nxq5+0So485poHrFriK9Bn3V/x9y+wgqrHkbmnGbjfLmZ685/SVA/ovW+ewoqW0gVI47pI4yW/VNobQ== + dependencies: + colorette "^2.0.19" + defu "^6.1.1" + https-proxy-agent "^5.0.1" + mri "^1.2.0" + node-fetch-native "^1.0.1" + pathe "^1.0.0" + tar "^6.1.12" git-raw-commits@^2.0.0, git-raw-commits@^2.0.8: version "2.0.11" @@ -7995,14 +6924,6 @@ github-slugger@^1.0.0: resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.5.0.tgz#17891bbc73232051474d68bd867a34625c955f7d" integrity sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw== -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA== - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" @@ -8017,17 +6938,12 @@ glob-parent@^6.0.2: dependencies: is-glob "^4.0.3" -glob-promise@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/glob-promise/-/glob-promise-3.4.0.tgz#b6b8f084504216f702dc2ce8c9bc9ac8866fdb20" - integrity sha512-q08RJ6O+eJn+dVanerAndJwIcumgbDdYiUT7zFQl3Wm1xD6fBKtah7H8ZJChj4wP+8C+QfeVy8xautR7rdmKEw== +glob-promise@^4.2.0: + version "4.2.2" + resolved "https://registry.yarnpkg.com/glob-promise/-/glob-promise-4.2.2.tgz#15f44bcba0e14219cd93af36da6bb905ff007877" + integrity sha512-xcUzJ8NWN5bktoTIX7eOclO1Npxd/dyVqUJxlLIDasT4C7KZyqlPIwkdJ0Ypiy3p2ZKahTjK4M9uC3sNSfNMzw== dependencies: - "@types/glob" "*" - -glob-to-regexp@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - integrity sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig== + "@types/glob" "^7.1.3" glob-to-regexp@^0.4.1: version "0.4.1" @@ -8046,7 +6962,7 @@ glob@7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.0, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: +glob@^7.0.0, glob@^7.1.3, glob@^7.1.4: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -8058,6 +6974,17 @@ glob@^7.0.0, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^5.0.1" + once "^1.3.0" + global-dirs@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" @@ -8072,14 +6999,6 @@ global-dirs@^3.0.0: dependencies: ini "2.0.0" -global@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406" - integrity sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w== - dependencies: - min-document "^2.19.0" - process "^0.11.10" - globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" @@ -8092,7 +7011,7 @@ globals@^13.19.0: dependencies: type-fest "^0.20.2" -globalthis@^1.0.0, globalthis@^1.0.3: +globalthis@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== @@ -8115,7 +7034,7 @@ globby@13.1.2: merge2 "^1.4.1" slash "^4.0.0" -globby@^11.0.2, globby@^11.0.3, globby@^11.1.0: +globby@^11.0.1, globby@^11.0.2, globby@^11.0.3, globby@^11.1.0: version "11.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== @@ -8138,20 +7057,6 @@ globby@^13.1.2: merge2 "^1.4.1" slash "^4.0.0" -globby@^9.2.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz#fd029a706c703d29bdd170f4b6db3a3f7a7cb63d" - integrity sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg== - dependencies: - "@types/glob" "^7.1.1" - array-union "^1.0.2" - dir-glob "^2.2.2" - fast-glob "^2.2.6" - glob "^7.1.3" - ignore "^4.0.3" - pify "^4.0.1" - slash "^2.0.0" - globrex@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz#dd5d9ec826232730cd6793a5e33a9302985e6098" @@ -8181,7 +7086,7 @@ got@12.5.3, got@^12.1.0: p-cancelable "^3.0.0" responselike "^3.0.0" -graceful-fs@4.2.10, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: +graceful-fs@4.2.10, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.10" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== @@ -8223,13 +7128,6 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-glob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-glob/-/has-glob-1.0.0.tgz#9aaa9eedbffb1ba3990a7b0010fb678ee0081207" - integrity sha512-D+8A457fBShSEI3tFCj65PAbT++5sKiFtdCdOam0gnfBgw9D277OERk+HM9qYJXmdVLZ/znez10SqHN0BBQ50g== - dependencies: - is-glob "^3.0.0" - has-property-descriptors@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" @@ -8259,37 +7157,6 @@ has-unicode@^2.0.1: resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - has-yarn@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-3.0.0.tgz#c3c21e559730d1d3b57e28af1f30d06fac38147d" @@ -8302,105 +7169,11 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" -hash-base@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" - integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== - dependencies: - inherits "^2.0.4" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" - integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.1" - -hast-to-hyperscript@^9.0.0: - version "9.0.1" - resolved "https://registry.yarnpkg.com/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz#9b67fd188e4c81e8ad66f803855334173920218d" - integrity sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA== - dependencies: - "@types/unist" "^2.0.3" - comma-separated-tokens "^1.0.0" - property-information "^5.3.0" - space-separated-tokens "^1.0.0" - style-to-object "^0.3.0" - unist-util-is "^4.0.0" - web-namespaces "^1.0.0" - -hast-util-from-parse5@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz#554e34abdeea25ac76f5bd950a1f0180e0b3bc2a" - integrity sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA== - dependencies: - "@types/parse5" "^5.0.0" - hastscript "^6.0.0" - property-information "^5.0.0" - vfile "^4.0.0" - vfile-location "^3.2.0" - web-namespaces "^1.0.0" - -hast-util-parse-selector@^2.0.0: - version "2.2.5" - resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz#d57c23f4da16ae3c63b3b6ca4616683313499c3a" - integrity sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ== - -hast-util-raw@6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-6.0.1.tgz#973b15930b7529a7b66984c98148b46526885977" - integrity sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig== - dependencies: - "@types/hast" "^2.0.0" - hast-util-from-parse5 "^6.0.0" - hast-util-to-parse5 "^6.0.0" - html-void-elements "^1.0.0" - parse5 "^6.0.0" - unist-util-position "^3.0.0" - vfile "^4.0.0" - web-namespaces "^1.0.0" - xtend "^4.0.0" - zwitch "^1.0.0" - -hast-util-to-parse5@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz#1ec44650b631d72952066cea9b1445df699f8479" - integrity sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ== - dependencies: - hast-to-hyperscript "^9.0.0" - property-information "^5.0.0" - web-namespaces "^1.0.0" - xtend "^4.0.0" - zwitch "^1.0.0" - -hastscript@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-6.0.0.tgz#e8768d7eac56c3fdeac8a92830d58e811e5bf640" - integrity sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w== - dependencies: - "@types/hast" "^2.0.0" - comma-separated-tokens "^1.0.0" - hast-util-parse-selector "^2.0.0" - property-information "^5.0.0" - space-separated-tokens "^1.0.0" - he@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== -hmac-drbg@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - hoist-non-react-statics@^3.3.1: version "3.3.2" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" @@ -8437,43 +7210,34 @@ html-escaper@^2.0.0: resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== -html-minifier-terser@^5.0.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" - integrity sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg== +html-minifier-terser@^6.0.2: + version "6.1.0" + resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#bfc818934cc07918f6b3669f5774ecdfd48f32ab" + integrity sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw== dependencies: - camel-case "^4.1.1" - clean-css "^4.2.3" - commander "^4.1.1" + camel-case "^4.1.2" + clean-css "^5.2.2" + commander "^8.3.0" he "^1.2.0" - param-case "^3.0.3" + param-case "^3.0.4" relateurl "^0.2.7" - terser "^4.6.3" + terser "^5.10.0" html-tags@^3.1.0: version "3.2.0" resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.2.0.tgz#dbb3518d20b726524e4dd43de397eb0a95726961" integrity sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg== -html-void-elements@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-1.0.5.tgz#ce9159494e86d95e45795b166c2021c2cfca4483" - integrity sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w== - -html-webpack-plugin@^4.0.0: - version "4.5.2" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz#76fc83fa1a0f12dd5f7da0404a54e2699666bc12" - integrity sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A== - dependencies: - "@types/html-minifier-terser" "^5.0.0" - "@types/tapable" "^1.0.5" - "@types/webpack" "^4.41.8" - html-minifier-terser "^5.0.1" - loader-utils "^1.2.3" - lodash "^4.17.20" - pretty-error "^2.1.1" - tapable "^1.1.3" - util.promisify "1.0.0" +html-webpack-plugin@^5.5.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz#c3911936f57681c1f9f4d8b68c158cd9dfe52f50" + integrity sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw== + dependencies: + "@types/html-minifier-terser" "^6.0.0" + html-minifier-terser "^6.0.2" + lodash "^4.17.21" + pretty-error "^4.0.0" + tapable "^2.0.0" htmlparser2@^6.1.0: version "6.1.0" @@ -8527,11 +7291,6 @@ http2-wrapper@^2.1.10: quick-lru "^5.1.1" resolve-alpn "^1.2.0" -https-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg== - https-proxy-agent@5, https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" @@ -8540,6 +7299,14 @@ https-proxy-agent@5, https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: agent-base "6" debug "4" +https-proxy-agent@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz#702b71fb5520a132a66de1f67541d9e62154d82b" + integrity sha512-zoDhWrkR3of1l9QAL8/scJZyLu8j/gBkcwcaQOZh7Gyh/+uJQzGVETdgT30akuwkpL8HTRfssqI3BZuV18teDg== + dependencies: + agent-base "5" + debug "4" + human-signals@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" @@ -8569,28 +7336,16 @@ iconv-lite@0.6.3: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -icss-utils@^4.0.0, icss-utils@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" - integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== - dependencies: - postcss "^7.0.14" +icss-utils@^5.0.0, icss-utils@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" + integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== -ieee754@^1.1.4, ieee754@^1.2.1: +ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA== - -ignore@^4.0.3: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - ignore@^5.2.0: version "5.2.4" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" @@ -8601,7 +7356,7 @@ immutable@^4.2.2: resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.2.2.tgz#2da9ff4384a4330c36d4d1bc88e90f9e0b0ccd16" integrity sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og== -import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: +import-fresh@^3.0.0, import-fresh@^3.2.1: version "3.3.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== @@ -8627,23 +7382,11 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" - integrity sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg== - dependencies: - repeating "^2.0.0" - indent-string@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== -infer-owner@^1.0.3, infer-owner@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" - integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -8652,21 +7395,11 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - integrity sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA== - -inherits@2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== - ini@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5" @@ -8677,11 +7410,6 @@ ini@^1.3.2, ini@^1.3.4, ini@~1.3.0: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== -inline-style-parser@0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" - integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== - inquirer@9.1.4: version "9.1.4" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-9.1.4.tgz#482da8803670a64bd942bc5166a9547a19d41474" @@ -8717,11 +7445,6 @@ interpret@^1.0.0: resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== -interpret@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" - integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== - ip@^1.1.5: version "1.1.8" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.8.tgz#ae05948f6b075435ed3307acce04629da8cdbf48" @@ -8739,37 +7462,10 @@ ipaddr.js@1.9.1: is-absolute-url@^3.0.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" - integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - -is-alphabetical@1.0.4, is-alphabetical@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" - integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== - -is-alphanumerical@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" - integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== - dependencies: - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" + integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== -is-arguments@^1.1.0, is-arguments@^1.1.1: +is-arguments@^1.0.4, is-arguments@^1.1.0, is-arguments@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== @@ -8798,13 +7494,6 @@ is-bigint@^1.0.1: dependencies: has-bigints "^1.0.1" -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q== - dependencies: - binary-extensions "^1.0.0" - is-binary-path@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -8820,16 +7509,6 @@ is-boolean-object@^1.1.0: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-buffer@^2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" - integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== - is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" @@ -8842,13 +7521,6 @@ is-ci@3.0.1, is-ci@^3.0.1: dependencies: ci-info "^3.2.0" -is-ci@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" - integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== - dependencies: - ci-info "^2.0.0" - is-core-module@^2.10.0, is-core-module@^2.5.0, is-core-module@^2.8.1, is-core-module@^2.9.0: version "2.11.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" @@ -8856,20 +7528,6 @@ is-core-module@^2.10.0, is-core-module@^2.5.0, is-core-module@^2.8.1, is-core-mo dependencies: has "^1.0.3" -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - is-date-object@^1.0.1, is-date-object@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" @@ -8877,64 +7535,16 @@ is-date-object@^1.0.1, is-date-object@^1.0.5: dependencies: has-tostringtag "^1.0.0" -is-decimal@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" - integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - is-docker@^2.0.0, is-docker@^2.1.1: version "2.2.1" resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== -is-dom@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-dom/-/is-dom-1.1.0.tgz#af1fced292742443bb59ca3f76ab5e80907b4e8a" - integrity sha512-u82f6mvhYxRPKpw8V1N0W8ce1xXwOrQtgGcxl6UCL5zBmZu3is/18K0rR7uFCnMDuAsS/3W54mGL4vsaFUQlEQ== - dependencies: - is-object "^1.0.1" - is-window "^1.0.2" - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^2.1.0, is-extglob@^2.1.1: +is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== -is-finite@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3" - integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w== - is-fullwidth-code-point@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" @@ -8945,22 +7555,17 @@ is-fullwidth-code-point@^4.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz#fae3167c729e7463f8461ce512b080a49268aa88" integrity sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ== -is-function@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.2.tgz#4f097f30abf6efadac9833b17ca5dc03f8144e08" - integrity sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ== - is-generator-fn@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== -is-glob@^3.0.0, is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw== +is-generator-function@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72" + integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A== dependencies: - is-extglob "^2.1.0" + has-tostringtag "^1.0.0" is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" @@ -8969,11 +7574,6 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" -is-hexadecimal@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" - integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== - is-installed-globally@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz#9a0fd407949c30f86eb6959ef1b7994ed0b7b520" @@ -8992,6 +7592,14 @@ is-map@^2.0.1, is-map@^2.0.2: resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127" integrity sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg== +is-nan@^1.2.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/is-nan/-/is-nan-1.3.2.tgz#043a54adea31748b55b6cd4e09aadafa69bd9e1d" + integrity sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + is-negative-zero@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" @@ -9009,13 +7617,6 @@ is-number-object@^1.0.4: dependencies: has-tostringtag "^1.0.0" -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== - dependencies: - kind-of "^3.0.2" - is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" @@ -9026,10 +7627,10 @@ is-obj@^2.0.0: resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== -is-object@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.2.tgz#a56552e1c665c9e950b4a025461da87e72f86fcf" - integrity sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA== +is-path-cwd@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" + integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== is-path-inside@^3.0.2, is-path-inside@^3.0.3: version "3.0.3" @@ -9041,17 +7642,12 @@ is-plain-obj@^1.1.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== -is-plain-obj@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" - integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== - is-plain-object@5.0.0, is-plain-object@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== -is-plain-object@^2.0.3, is-plain-object@^2.0.4: +is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== @@ -9063,7 +7659,7 @@ is-potential-custom-element-name@^1.0.1: resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== -is-regex@^1.1.2, is-regex@^1.1.4: +is-regex@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== @@ -9090,11 +7686,6 @@ is-ssh@^1.4.0: dependencies: protocols "^2.0.1" -is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== - is-stream@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" @@ -9126,7 +7717,7 @@ is-text-path@^1.0.1: dependencies: text-extensions "^1.0.0" -is-typed-array@^1.1.10, is-typed-array@^1.1.9: +is-typed-array@^1.1.10, is-typed-array@^1.1.3, is-typed-array@^1.1.9: version "1.1.10" resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.10.tgz#36a5b5cb4189b575d1a3e4b08536bfb485801e3f" integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A== @@ -9147,11 +7738,6 @@ is-unicode-supported@^1.1.0, is-unicode-supported@^1.2.0: resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz#d824984b616c292a2e198207d4a609983842f714" integrity sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ== -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== - is-weakmap@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2" @@ -9172,31 +7758,6 @@ is-weakset@^2.0.1: call-bind "^1.0.2" get-intrinsic "^1.1.1" -is-whitespace-character@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz#0858edd94a95594c7c9dd0b5c174ec6e45ee4aa7" - integrity sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w== - -is-window@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-window/-/is-window-1.0.2.tgz#2c896ca53db97de45d3c33133a65d8c9f563480d" - integrity sha512-uj00kdXyZb9t9RcAUAwMZAnkBUwdYGhYlt7djMXhfyhUCzwNba50tIiBKR7q0l7tdoBtFVw/3JmLY6fI3rmZmg== - -is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - -is-word-character@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-word-character/-/is-word-character-1.0.4.tgz#ce0e73216f98599060592f62ff31354ddbeb0230" - integrity sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA== - -is-wsl@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw== - is-wsl@^2.1.1, is-wsl@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" @@ -9214,38 +7775,26 @@ isarray@0.0.1: resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== - isarray@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: +isobject@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== -isobject@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-4.0.0.tgz#3f1c9155e73b192022a80819bacd0343711697b0" - integrity sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA== - isomorphic-unfetch@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz#87341d5f4f7b63843d468438128cb087b7c3e98f" @@ -9309,6 +7858,16 @@ iterate-value@^1.0.2: es-get-iterator "^1.0.2" iterate-iterator "^1.0.1" +jake@^10.8.5: + version "10.8.5" + resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.5.tgz#f2183d2c59382cb274226034543b9c03b8164c46" + integrity sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw== + dependencies: + async "^3.2.3" + chalk "^4.0.2" + filelist "^1.0.1" + minimatch "^3.0.4" + jest-changed-files@^29.2.0: version "29.2.0" resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.2.0.tgz#b6598daa9803ea6a4dce7968e20ab380ddbee289" @@ -9447,27 +8006,6 @@ jest-get-type@^29.2.0: resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.2.0.tgz#726646f927ef61d583a3b3adb1ab13f3a5036408" integrity sha512-uXNJlg8hKFEnDgFsrCjznB+sTxdkuqiCL6zMgA75qEbAJjJYTs9XPrvDctrEig2GDow22T/LvHgO57iJhXB/UA== -jest-haste-map@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" - integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== - dependencies: - "@jest/types" "^26.6.2" - "@types/graceful-fs" "^4.1.2" - "@types/node" "*" - anymatch "^3.0.3" - fb-watchman "^2.0.0" - graceful-fs "^4.2.4" - jest-regex-util "^26.0.0" - jest-serializer "^26.6.2" - jest-util "^26.6.2" - jest-worker "^26.6.2" - micromatch "^4.0.2" - sane "^4.0.3" - walker "^1.0.7" - optionalDependencies: - fsevents "^2.1.2" - jest-haste-map@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.3.1.tgz#af83b4347f1dae5ee8c2fb57368dc0bb3e5af843" @@ -9542,11 +8080,6 @@ jest-pnp-resolver@^1.2.2: resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== -jest-regex-util@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" - integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== - jest-regex-util@^29.0.0, jest-regex-util@^29.2.0: version "29.2.0" resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.2.0.tgz#82ef3b587e8c303357728d0322d48bbfd2971f7b" @@ -9630,14 +8163,6 @@ jest-runtime@^29.3.1: slash "^3.0.0" strip-bom "^4.0.0" -jest-serializer@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" - integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== - dependencies: - "@types/node" "*" - graceful-fs "^4.2.4" - jest-snapshot@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.3.1.tgz#17bcef71a453adc059a18a32ccbd594b8cc4e45e" @@ -9668,18 +8193,6 @@ jest-snapshot@^29.3.1: pretty-format "^29.3.1" semver "^7.3.5" -jest-util@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" - integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== - dependencies: - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - graceful-fs "^4.2.4" - is-ci "^2.0.0" - micromatch "^4.0.2" - jest-util@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.3.1.tgz#1dda51e378bbcb7e3bc9d8ab651445591ed373e1" @@ -9731,15 +8244,6 @@ jest-watcher@^29.0.0, jest-watcher@^29.3.1: jest-util "^29.3.1" string-length "^4.0.1" -jest-worker@^26.5.0, jest-worker@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" - integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== - dependencies: - "@types/node" "*" - merge-stream "^2.0.0" - supports-color "^7.0.0" - jest-worker@^27.4.5: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" @@ -9784,11 +8288,6 @@ js-sdsl@^4.1.4: resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.2.0.tgz#278e98b7bea589b8baaf048c20aeb19eb7ad09d0" integrity sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ== -js-string-escape@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/js-string-escape/-/js-string-escape-1.0.1.tgz#e2625badbc0d67c7533e9edc1068c587ae4137ef" - integrity sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg== - "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -9809,6 +8308,31 @@ js-yaml@^4.1.0: dependencies: argparse "^2.0.1" +jscodeshift@^0.14.0: + version "0.14.0" + resolved "https://registry.yarnpkg.com/jscodeshift/-/jscodeshift-0.14.0.tgz#7542e6715d6d2e8bde0b4e883f0ccea358b46881" + integrity sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA== + dependencies: + "@babel/core" "^7.13.16" + "@babel/parser" "^7.13.16" + "@babel/plugin-proposal-class-properties" "^7.13.0" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.13.8" + "@babel/plugin-proposal-optional-chaining" "^7.13.12" + "@babel/plugin-transform-modules-commonjs" "^7.13.8" + "@babel/preset-flow" "^7.13.13" + "@babel/preset-typescript" "^7.13.0" + "@babel/register" "^7.13.16" + babel-core "^7.0.0-bridge.0" + chalk "^4.1.2" + flow-parser "0.*" + graceful-fs "^4.2.4" + micromatch "^4.0.4" + neo-async "^2.5.0" + node-dir "^0.1.17" + recast "^0.21.0" + temp "^0.8.4" + write-file-atomic "^2.3.0" + jsdom@^20.0.0: version "20.0.3" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-20.0.3.tgz#886a41ba1d4726f67a8858028c99489fed6ad4db" @@ -9856,7 +8380,7 @@ json-buffer@3.0.1: resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== -json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: +json-parse-better-errors@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== @@ -9893,7 +8417,7 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.1.2, json5@^2.1.3, json5@^2.2.2: +json5@^2.1.2, json5@^2.2.2: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== @@ -9932,11 +8456,6 @@ jsonparse@^1.2.0: array-includes "^3.1.5" object.assign "^4.1.3" -junk@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/junk/-/junk-3.1.0.tgz#31499098d902b7e98c5d9b9c80f43457a88abfa1" - integrity sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ== - keyv@^4.5.2: version "4.5.2" resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.2.tgz#0e310ce73bf7851ec702f2eaf46ec4e3805cce56" @@ -9944,26 +8463,7 @@ keyv@^4.5.2: dependencies: json-buffer "3.0.1" -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: +kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== @@ -9973,11 +8473,6 @@ kleur@^3.0.3: resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== -klona@^2.0.4: - version "2.0.6" - resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22" - integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA== - latest-version@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-7.0.0.tgz#843201591ea81a4d404932eeb61240fe04e9e5da" @@ -9985,16 +8480,14 @@ latest-version@^7.0.0: dependencies: package-json "^8.1.0" -lazy-universal-dotenv@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lazy-universal-dotenv/-/lazy-universal-dotenv-3.0.1.tgz#a6c8938414bca426ab8c9463940da451a911db38" - integrity sha512-prXSYk799h3GY3iOWnC6ZigYzMPjxN2svgjJ9shk7oMadSNX3wXy0B6F32PMJv7qtMnrIbUxoEHzbutvxR2LBQ== +lazy-universal-dotenv@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/lazy-universal-dotenv/-/lazy-universal-dotenv-4.0.0.tgz#0b220c264e89a042a37181a4928cdd298af73422" + integrity sha512-aXpZJRnTkpK6gQ/z4nk+ZBLd/Qdp118cvPruLSIQzQNRhKwEcdXCOzXuF55VDqIiuAaY3UGZ10DJtvZzDcvsxg== dependencies: - "@babel/runtime" "^7.5.0" app-root-dir "^1.0.2" - core-js "^3.0.4" - dotenv "^8.0.0" - dotenv-expand "^5.1.0" + dotenv "^16.0.0" + dotenv-expand "^10.0.0" leven@^3.1.0: version "3.1.0" @@ -10060,17 +8553,6 @@ listr2@^5.0.5: through "^2.3.8" wrap-ansi "^7.0.0" -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A== - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -10086,25 +8568,11 @@ load-tsconfig@^0.2.0: resolved "https://registry.yarnpkg.com/load-tsconfig/-/load-tsconfig-0.2.3.tgz#08af3e7744943caab0c75f8af7f1703639c3ef1f" integrity sha512-iyT2MXws+dc2Wi6o3grCFtGXpeMvHmJqS27sMPGtV2eUu4PeFnG+33I8BlFK1t1NWMjOpcx9bridn5yxLDX2gQ== -loader-runner@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" - integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== - loader-runner@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== -loader-utils@^1.2.3: - version "1.4.2" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.2.tgz#29a957f3a63973883eb684f10ffd3d151fec01a3" - integrity sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg== - dependencies: - big.js "^5.2.2" - emojis-list "^3.0.0" - json5 "^1.0.1" - loader-utils@^2.0.0, loader-utils@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c" @@ -10199,7 +8667,7 @@ lodash.startcase@^4.4.0: resolved "https://registry.yarnpkg.com/lodash.startcase/-/lodash.startcase-4.4.0.tgz#9436e34ed26093ed7ffae1936144350915d9add8" integrity sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg== -lodash.uniq@4.5.0, lodash.uniq@^4.5.0: +lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== @@ -10209,7 +8677,7 @@ lodash.upperfirst@^4.3.1: resolved "https://registry.yarnpkg.com/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz#1365edf431480481ef0d1c68957a5ed99d49f7ce" integrity sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg== -lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21: +lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -10239,14 +8707,6 @@ loose-envify@^1.1.0, loose-envify@^1.4.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - integrity sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ== - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - lower-case@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" @@ -10317,12 +8777,7 @@ makeerror@1.0.12: dependencies: tmpl "1.0.5" -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== - -map-obj@^1.0.0, map-obj@^1.0.1: +map-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg== @@ -10337,33 +8792,10 @@ map-or-similar@^1.5.0: resolved "https://registry.yarnpkg.com/map-or-similar/-/map-or-similar-1.5.0.tgz#6de2653174adfb5d9edc33c69d3e92a1b76faf08" integrity sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg== -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== - dependencies: - object-visit "^1.0.0" - -markdown-escapes@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/markdown-escapes/-/markdown-escapes-1.0.4.tgz#c95415ef451499d7602b91095f3c8e8975f78535" - integrity sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg== - -md5.js@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" - integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -mdast-squeeze-paragraphs@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz#7c4c114679c3bee27ef10b58e2e015be79f1ef97" - integrity sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ== - dependencies: - unist-util-remove "^2.0.0" +markdown-to-jsx@^7.1.8: + version "7.1.9" + resolved "https://registry.yarnpkg.com/markdown-to-jsx/-/markdown-to-jsx-7.1.9.tgz#1ffae0cda07c189163d273bd57a5b8f8f8745586" + integrity sha512-x4STVIKIJR0mGgZIZ5RyAeQD7FEZd5tS8m/htbcVGlex32J+hlSLj+ExrHCxP6nRKF1EKbcO7i6WhC1GtOpBlA== mdast-util-definitions@^4.0.0: version "4.0.0" @@ -10372,36 +8804,17 @@ mdast-util-definitions@^4.0.0: dependencies: unist-util-visit "^2.0.0" -mdast-util-to-hast@10.0.1: - version "10.0.1" - resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz#0cfc82089494c52d46eb0e3edb7a4eb2aea021eb" - integrity sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA== - dependencies: - "@types/mdast" "^3.0.0" - "@types/unist" "^2.0.0" - mdast-util-definitions "^4.0.0" - mdurl "^1.0.0" - unist-builder "^2.0.0" - unist-util-generated "^1.0.0" - unist-util-position "^3.0.0" - unist-util-visit "^2.0.0" - mdast-util-to-string@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-1.1.0.tgz#27055500103f51637bd07d01da01eb1967a43527" integrity sha512-jVU0Nr2B9X3MU4tSK7JP1CMkSvOj7X5l/GboG1tKRw52lLF1x2Ju92Ms9tNetCcbfX3hzlM73zYo2NKkWSfF/A== -mdurl@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" - integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== - media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== -memfs@^3.1.2: +memfs@^3.4.1, memfs@^3.4.3: version "3.4.13" resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.4.13.tgz#248a8bd239b3c240175cd5ec548de5227fc4f345" integrity sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg== @@ -10415,38 +8828,6 @@ memoizerific@^1.11.3: dependencies: map-or-similar "^1.5.0" -memory-fs@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ== - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -memory-fs@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" - integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -meow@^3.1.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - integrity sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA== - dependencies: - camelcase-keys "^2.0.0" - decamelize "^1.1.2" - loud-rejection "^1.0.0" - map-obj "^1.0.1" - minimist "^1.1.3" - normalize-package-data "^2.3.4" - object-assign "^4.0.1" - read-pkg-up "^1.0.1" - redent "^1.0.0" - trim-newlines "^1.0.0" - meow@^8.0.0: version "8.1.2" resolved "https://registry.yarnpkg.com/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" @@ -10474,7 +8855,7 @@ merge-stream@^2.0.0: resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== -merge2@^1.2.3, merge2@^1.3.0, merge2@^1.4.1: +merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== @@ -10484,30 +8865,6 @@ methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -microevent.ts@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/microevent.ts/-/microevent.ts-0.1.1.tgz#70b09b83f43df5172d0205a63025bce0f7357fa0" - integrity sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g== - -micromatch@^3.1.10, micromatch@^3.1.4: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5: version "4.0.5" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" @@ -10516,20 +8873,12 @@ micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5: braces "^3.0.2" picomatch "^2.3.1" -miller-rabin@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" - mime-db@1.52.0, "mime-db@>= 1.43.0 < 2": version "1.52.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -mime-types@2.1.35, mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.24, mime-types@~2.1.34: +mime-types@2.1.35, mime-types@^2.1.12, mime-types@^2.1.25, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== @@ -10541,7 +8890,7 @@ mime@1.6.0: resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@^2.4.4: +mime@^2.0.3: version "2.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== @@ -10566,28 +8915,11 @@ mimic-response@^4.0.0: resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-4.0.0.tgz#35468b19e7c75d10f5165ea25e75a5ceea7cf70f" integrity sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg== -min-document@^2.19.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" - integrity sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ== - dependencies: - dom-walk "^0.1.0" - min-indent@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== - -minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== - minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -10595,6 +8927,13 @@ minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatc dependencies: brace-expansion "^1.1.7" +minimatch@^5.0.1: + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + minimist-options@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -10604,33 +8943,12 @@ minimist-options@4.1.0: is-plain-obj "^1.1.0" kind-of "^6.0.3" -minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: +minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: version "1.2.7" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== -minipass-collect@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" - integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== - dependencies: - minipass "^3.0.0" - -minipass-flush@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" - integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== - dependencies: - minipass "^3.0.0" - -minipass-pipeline@^1.2.2: - version "1.2.4" - resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" - integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== - dependencies: - minipass "^3.0.0" - -minipass@^3.0.0, minipass@^3.1.1: +minipass@^3.0.0: version "3.3.6" resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== @@ -10652,38 +8970,14 @@ minizlib@^2.1.1: minipass "^3.0.0" yallist "^4.0.0" -mississippi@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" - integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^3.0.0" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mkdirp@^0.5.1, mkdirp@^0.5.3: +mkdirp@^0.5.4: version "0.5.6" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== dependencies: minimist "^1.2.6" -mkdirp@^1.0.3, mkdirp@^1.0.4: +mkdirp@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== @@ -10693,17 +8987,10 @@ modify-values@^1.0.0: resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ== - dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" +mri@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b" + integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA== ms@2.0.0: version "2.0.0" @@ -10739,33 +9026,11 @@ mz@^2.7.0: object-assign "^4.0.1" thenify-all "^1.0.0" -nan@^2.12.1: - version "2.17.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.17.0.tgz#c0150a2368a182f033e9aa5195ec76ea41a199cb" - integrity sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ== - -nanoid@^3.3.1: +nanoid@^3.3.1, nanoid@^3.3.4: version "3.3.4" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - natural-compare-lite@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" @@ -10786,11 +9051,6 @@ neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.1, neo-async@^2.6.2: resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== -nested-error-stacks@^2.0.0, nested-error-stacks@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.1.1.tgz#26c8a3cee6cc05fbcf1e333cd2fc3e003326c0b5" - integrity sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw== - netmask@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/netmask/-/netmask-2.0.2.tgz#8b01a07644065d536383835823bc52004ebac5e7" @@ -10803,11 +9063,6 @@ new-github-release-url@2.0.0: dependencies: type-fest "^2.5.1" -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - no-case@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" @@ -10816,7 +9071,12 @@ no-case@^3.0.4: lower-case "^2.0.2" tslib "^2.0.3" -node-dir@^0.1.10: +node-abort-controller@^3.0.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/node-abort-controller/-/node-abort-controller-3.1.1.tgz#a94377e964a9a37ac3976d848cb5c765833b8548" + integrity sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ== + +node-dir@^0.1.10, node-dir@^0.1.17: version "0.1.17" resolved "https://registry.yarnpkg.com/node-dir/-/node-dir-0.1.17.tgz#5f5665d93351335caabef8f1c554516cf5f1e4e5" integrity sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg== @@ -10828,6 +9088,11 @@ node-domexception@^1.0.0: resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== +node-fetch-native@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/node-fetch-native/-/node-fetch-native-1.0.1.tgz#1dfe78f57545d07e07016b7df4c0cb9d2ff416c7" + integrity sha512-VzW+TAk2wE4X9maiKMlT+GsPU4OMmR1U9CrHSmd3DFLn2IcZ9VJ6M6BBugGfYUnPCLSYxXdZy17M0BEJyhUTwg== + node-fetch@3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.3.0.tgz#37e71db4ecc257057af828d523a7243d651d91e4" @@ -10837,7 +9102,14 @@ node-fetch@3.3.0: fetch-blob "^3.1.4" formdata-polyfill "^4.0.10" -node-fetch@^2.6.1, node-fetch@^2.6.7: +node-fetch@^2.6.1: + version "2.6.9" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.9.tgz#7c7f744b5cc6eb5fd404e0c7a9fec630a55657e6" + integrity sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg== + dependencies: + whatwg-url "^5.0.0" + +node-fetch@^2.6.7: version "2.6.8" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.8.tgz#a68d30b162bc1d8fd71a367e81b997e1f4d4937e" integrity sha512-RZ6dBYuj8dRSfxpUSu+NsdF1dpPpluJxwOp+6IoDp/sH2QNDSvurYsAa+F1WxY2RjA1iP93xhcsUoYbF2XBqVg== @@ -10849,41 +9121,12 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-libs-browser@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" - integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q== - dependencies: - assert "^1.1.1" - browserify-zlib "^0.2.0" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^3.0.0" - https-browserify "^1.0.0" - os-browserify "^0.3.0" - path-browserify "0.0.1" - process "^0.11.10" - punycode "^1.2.4" - querystring-es3 "^0.2.0" - readable-stream "^2.3.3" - stream-browserify "^2.0.1" - stream-http "^2.7.2" - string_decoder "^1.0.0" - timers-browserify "^2.0.4" - tty-browserify "0.0.0" - url "^0.11.0" - util "^0.11.0" - vm-browserify "^1.0.1" - node-releases@^2.0.6: version "2.0.8" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.8.tgz#0f349cdc8fcfa39a92ac0be9bc48b7706292b9ae" integrity sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A== -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0: +normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -10903,35 +9146,16 @@ normalize-package-data@^3.0.0: semver "^7.3.4" validate-npm-package-license "^3.0.1" -normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== - dependencies: - remove-trailing-separator "^1.0.1" - normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== - normalize-url@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-8.0.0.tgz#593dbd284f743e8dcf6a5ddf8fadff149c82701a" integrity sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw== -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== - dependencies: - path-key "^2.0.0" - npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" @@ -10963,11 +9187,6 @@ nth-check@^2.0.1: dependencies: boolbase "^1.0.0" -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg== - nwsapi@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.2.tgz#e5418863e7905df67d51ec95938d67bf801f0bb0" @@ -10978,21 +9197,12 @@ object-assign@^4.0.1, object-assign@^4.1.1: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - object-inspect@^1.12.2, object-inspect@^1.9.0: version "1.12.2" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ== -object-is@^1.1.5: +object-is@^1.0.1, object-is@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac" integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw== @@ -11005,13 +9215,6 @@ object-keys@^1.1.1: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== - dependencies: - isobject "^3.0.0" - object.assign@^4.1.3, object.assign@^4.1.4: version "4.1.4" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" @@ -11022,7 +9225,7 @@ object.assign@^4.1.3, object.assign@^4.1.4: has-symbols "^1.0.3" object-keys "^1.1.1" -object.entries@^1.1.0, object.entries@^1.1.6: +object.entries@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.6.tgz#9737d0e5b8291edd340a3e3264bb8a3b00d5fa23" integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w== @@ -11031,7 +9234,7 @@ object.entries@^1.1.0, object.entries@^1.1.6: define-properties "^1.1.4" es-abstract "^1.20.4" -"object.fromentries@^2.0.0 || ^1.0.0", object.fromentries@^2.0.6: +object.fromentries@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.6.tgz#cdb04da08c539cffa912dcd368b886e0904bfa73" integrity sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg== @@ -11040,16 +9243,6 @@ object.entries@^1.1.0, object.entries@^1.1.6: define-properties "^1.1.4" es-abstract "^1.20.4" -object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.2: - version "2.1.5" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz#db5a9002489b64eef903df81d6623c07e5b4b4d3" - integrity sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw== - dependencies: - array.prototype.reduce "^1.0.5" - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - object.hasown@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.2.tgz#f919e21fad4eb38a57bc6345b3afd496515c3f92" @@ -11058,14 +9251,7 @@ object.hasown@^1.1.2: define-properties "^1.1.4" es-abstract "^1.20.4" -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== - dependencies: - isobject "^3.0.1" - -object.values@^1.1.0, object.values@^1.1.5, object.values@^1.1.6: +object.values@^1.1.5, object.values@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.6.tgz#4abbaa71eba47d63589d402856f908243eea9b1d" integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw== @@ -11091,7 +9277,7 @@ on-headers@~1.0.2: resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== -once@^1.3.0, once@^1.3.1, once@^1.4.0: +once@^1.3.0, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== @@ -11165,18 +9351,8 @@ ora@6.1.2, ora@^6.1.2: is-interactive "^2.0.0" is-unicode-supported "^1.1.0" log-symbols "^5.1.0" - strip-ansi "^7.0.1" - wcwidth "^1.0.1" - -os-browserify@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A== - -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ== + strip-ansi "^7.0.1" + wcwidth "^1.0.1" os-name@5.0.1: version "5.0.1" @@ -11191,37 +9367,11 @@ os-tmpdir@~1.0.2: resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== -p-all@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-all/-/p-all-2.1.0.tgz#91419be56b7dee8fe4c5db875d55e0da084244a0" - integrity sha512-HbZxz5FONzz/z2gJfk6bFca0BCiSRF8jU3yCsWOen/vR6lZjfPOu/e7L3uFzTW1i0H8TlC3vqQstEJPQL4/uLA== - dependencies: - p-map "^2.0.0" - p-cancelable@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-3.0.0.tgz#63826694b54d61ca1c20ebcb6d3ecf5e14cd8050" integrity sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw== -p-event@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/p-event/-/p-event-4.2.0.tgz#af4b049c8acd91ae81083ebd1e6f5cae2044c1b5" - integrity sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ== - dependencies: - p-timeout "^3.1.0" - -p-filter@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-filter/-/p-filter-2.1.0.tgz#1b1472562ae7a0f742f0f3d3d3718ea66ff9c09c" - integrity sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw== - dependencies: - p-map "^2.0.0" - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== - p-limit@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" @@ -11271,18 +9421,6 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" -p-map@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" - integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== - -p-map@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d" - integrity sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ== - dependencies: - aggregate-error "^3.0.0" - p-map@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" @@ -11290,13 +9428,6 @@ p-map@^4.0.0: dependencies: aggregate-error "^3.0.0" -p-timeout@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" - integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== - dependencies: - p-finally "^1.0.0" - p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -11341,21 +9472,7 @@ package-json@^8.1.0: registry-url "^6.0.0" semver "^7.3.7" -pako@~1.0.5: - version "1.0.11" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" - integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== - -parallel-transform@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" - integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg== - dependencies: - cyclist "^1.0.1" - inherits "^2.0.3" - readable-stream "^2.1.5" - -param-case@^3.0.3: +param-case@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== @@ -11370,36 +9487,6 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" -parse-asn1@^5.0.0, parse-asn1@^5.1.5: - version "5.1.6" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4" - integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== - dependencies: - asn1.js "^5.2.0" - browserify-aes "^1.0.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - safe-buffer "^5.1.1" - -parse-entities@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz#53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8" - integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== - dependencies: - character-entities "^1.0.0" - character-entities-legacy "^1.0.0" - character-reference-invalid "^1.0.0" - is-alphanumerical "^1.0.0" - is-decimal "^1.0.0" - is-hexadecimal "^1.0.0" - -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ== - dependencies: - error-ex "^1.2.0" - parse-json@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" @@ -11432,11 +9519,6 @@ parse-url@^8.1.0: dependencies: parse-path "^7.0.0" -parse5@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" - integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== - parse5@^7.0.0, parse5@^7.1.1: version "7.1.2" resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" @@ -11457,27 +9539,10 @@ pascal-case@^3.1.2: no-case "^3.0.4" tslib "^2.0.3" -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== - -path-browserify@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" - integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ== - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q== - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ== - dependencies: - pinkie-promise "^2.0.0" +path-browserify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" + integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== path-exists@^3.0.0: version "3.0.0" @@ -11494,11 +9559,6 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== - path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" @@ -11519,15 +9579,6 @@ path-to-regexp@0.1.7: resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg== - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - path-type@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -11540,21 +9591,15 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -pbkdf2@^3.0.3: - version "3.1.2" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" - integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA== - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" +pathe@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.0.tgz#e2e13f6c62b31a3289af4ba19886c230f295ec03" + integrity sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w== -picocolors@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-0.2.1.tgz#570670f793646851d1ba135996962abad587859f" - integrity sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA== +pend@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== picocolors@^1.0.0: version "1.0.0" @@ -11571,7 +9616,7 @@ pidtree@^0.6.0: resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c" integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g== -pify@^2.0.0, pify@^2.3.0: +pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== @@ -11586,18 +9631,6 @@ pify@^4.0.1: resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw== - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg== - pirates@^4.0.1, pirates@^4.0.4, pirates@^4.0.5: version "4.0.5" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" @@ -11624,13 +9657,6 @@ pkg-dir@^5.0.0: dependencies: find-up "^5.0.0" -pnp-webpack-plugin@1.6.4: - version "1.6.4" - resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz#c9711ac4dc48a685dabafc86f8b6dd9f8df84149" - integrity sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg== - dependencies: - ts-pnp "^1.1.6" - polished@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/polished/-/polished-4.2.2.tgz#2529bb7c3198945373c52e34618c8fe7b1aa84d1" @@ -11638,18 +9664,6 @@ polished@^4.2.2: dependencies: "@babel/runtime" "^7.17.8" -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== - -postcss-flexbugs-fixes@^4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz#9218a65249f30897deab1033aced8578562a6690" - integrity sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ== - dependencies: - postcss "^7.0.26" - postcss-load-config@^3.0.1: version "3.1.4" resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-3.1.4.tgz#1ab2571faf84bb078877e1d07905eabe9ebda855" @@ -11658,51 +9672,35 @@ postcss-load-config@^3.0.1: lilconfig "^2.0.5" yaml "^1.10.2" -postcss-loader@^4.2.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-4.3.0.tgz#2c4de9657cd4f07af5ab42bd60a673004da1b8cc" - integrity sha512-M/dSoIiNDOo8Rk0mUqoj4kpGq91gcxCfb9PoyZVdZ76/AuhxylHDYZblNE8o+EQ9AMSASeMFEKxZf5aU6wlx1Q== - dependencies: - cosmiconfig "^7.0.0" - klona "^2.0.4" - loader-utils "^2.0.0" - schema-utils "^3.0.0" - semver "^7.3.4" - -postcss-modules-extract-imports@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" - integrity sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ== - dependencies: - postcss "^7.0.5" +postcss-modules-extract-imports@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" + integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== -postcss-modules-local-by-default@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz#bb14e0cc78279d504dbdcbfd7e0ca28993ffbbb0" - integrity sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw== +postcss-modules-local-by-default@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz#ebbb54fae1598eecfdf691a02b3ff3b390a5a51c" + integrity sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ== dependencies: - icss-utils "^4.1.1" - postcss "^7.0.32" + icss-utils "^5.0.0" postcss-selector-parser "^6.0.2" postcss-value-parser "^4.1.0" -postcss-modules-scope@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee" - integrity sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ== +postcss-modules-scope@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" + integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== dependencies: - postcss "^7.0.6" - postcss-selector-parser "^6.0.0" + postcss-selector-parser "^6.0.4" -postcss-modules-values@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" - integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== +postcss-modules-values@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" + integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== dependencies: - icss-utils "^4.0.0" - postcss "^7.0.6" + icss-utils "^5.0.0" -postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: +postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: version "6.0.11" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz#2e41dc39b7ad74046e1615185185cd0b17d0c8dc" integrity sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g== @@ -11710,18 +9708,19 @@ postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: cssesc "^3.0.0" util-deprecate "^1.0.2" -postcss-value-parser@^4.1.0: +postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== -postcss@^7.0.14, postcss@^7.0.26, postcss@^7.0.32, postcss@^7.0.36, postcss@^7.0.5, postcss@^7.0.6: - version "7.0.39" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.39.tgz#9624375d965630e2e1f2c02a935c82a59cb48309" - integrity sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA== +postcss@^8.4.19: + version "8.4.21" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.21.tgz#c639b719a57efc3187b13a1d765675485f4134f4" + integrity sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg== dependencies: - picocolors "^0.2.1" - source-map "^0.6.1" + nanoid "^3.3.4" + picocolors "^1.0.0" + source-map-js "^1.0.2" prelude-ls@^1.2.1: version "1.2.1" @@ -11740,23 +9739,23 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" -"prettier@>=2.2.1 <=2.3.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.0.tgz#b6a5bf1284026ae640f17f7ff5658a7567fc0d18" - integrity sha512-kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w== +prettier@^2.8.0: + version "2.8.3" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.3.tgz#ab697b1d3dd46fb4626fbe2f543afe0cc98d8632" + integrity sha512-tJ/oJ4amDihPoufT5sM0Z1SKEuKay8LfVAMlbbhnnkvt6BUserZylqo2PN+p9KeljLr0OHa2rXHU1T8reeoTrw== prettier@^2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.1.tgz#4e1fd11c34e2421bc1da9aea9bd8127cd0a35efc" integrity sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg== -pretty-error@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.2.tgz#be89f82d81b1c86ec8fdfbc385045882727f93b6" - integrity sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw== +pretty-error@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-4.0.0.tgz#90a703f46dd7234adb46d0f84823e9d1cb8f10d6" + integrity sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw== dependencies: lodash "^4.17.20" - renderkid "^2.0.4" + renderkid "^3.0.0" pretty-format@^27.0.2: version "27.5.1" @@ -11796,12 +9795,12 @@ process@^0.11.10: resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== +progress@^2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -promise.allsettled@1.0.6, promise.allsettled@^1.0.0: +promise.allsettled@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/promise.allsettled/-/promise.allsettled-1.0.6.tgz#8dc8ba8edf429feb60f8e81335b920e109c94b6e" integrity sha512-22wJUOD3zswWFqgwjNHa1965LvqTX87WPu/lreY2KSd7SVcERfuZ4GfUaOnJNnvtoIv2yXT/W00YIGMetXtFXg== @@ -11813,15 +9812,6 @@ promise.allsettled@1.0.6, promise.allsettled@^1.0.0: get-intrinsic "^1.1.3" iterate-value "^1.0.2" -promise.prototype.finally@^3.1.0: - version "3.1.4" - resolved "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.4.tgz#4e756a154e4db27fae24c6b18703495c31da3927" - integrity sha512-nNc3YbgMfLzqtqvO/q5DP6RR0SiHI9pUPGzyDf1q+usTwCN2kjvAnJkBb7bHe3o+fFSBPpsGMoYtaSi+LTNqng== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - prompts@^2.0.1, prompts@^2.4.0: version "2.4.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" @@ -11830,7 +9820,7 @@ prompts@^2.0.1, prompts@^2.4.0: kleur "^3.0.3" sisteransi "^1.0.5" -prop-types@^15.0.0, prop-types@^15.7.2, prop-types@^15.8.1: +prop-types@^15.7.2, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== @@ -11839,13 +9829,6 @@ prop-types@^15.0.0, prop-types@^15.7.2, prop-types@^15.8.1: object-assign "^4.1.1" react-is "^16.13.1" -property-information@^5.0.0, property-information@^5.3.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.6.0.tgz#61675545fb23002f245c6540ec46077d4da3ed69" - integrity sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA== - dependencies: - xtend "^4.0.0" - proto-list@~1.2.1: version "1.2.4" resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" @@ -11883,63 +9866,11 @@ proxy-from-env@^1.0.0: resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== - psl@^1.1.33: version "1.9.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== -public-encrypt@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" - integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - safe-buffer "^5.1.2" - -pump@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pumpify@^1.3.3: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== - dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw== - -punycode@^1.2.4: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== - punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" @@ -11952,6 +9883,22 @@ pupa@^3.1.0: dependencies: escape-goat "^4.0.0" +puppeteer-core@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/puppeteer-core/-/puppeteer-core-2.1.1.tgz#e9b3fbc1237b4f66e25999832229e9db3e0b90ed" + integrity sha512-n13AWriBMPYxnpbb6bnaY5YoY6rGj8vPLrz6CZF3o0qJNEwlcfJVxBzYZ0NJsQ21UbdJoijPCDrM++SUVEz7+w== + dependencies: + "@types/mime-types" "^2.1.0" + debug "^4.1.0" + extract-zip "^1.6.6" + https-proxy-agent "^4.0.0" + mime "^2.0.3" + mime-types "^2.1.25" + progress "^2.0.1" + proxy-from-env "^1.0.0" + rimraf "^2.6.1" + ws "^6.1.0" + q@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" @@ -11964,16 +9911,6 @@ qs@6.11.0, qs@^6.10.0: dependencies: side-channel "^1.0.4" -querystring-es3@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA== - -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== - querystringify@^2.1.1: version "2.2.0" resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" @@ -11999,21 +9936,13 @@ ramda@^0.28.0: resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.28.0.tgz#acd785690100337e8b063cab3470019be427cc97" integrity sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA== -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: +randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== dependencies: safe-buffer "^5.1.0" -randomfill@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== - dependencies: - randombytes "^2.0.5" - safe-buffer "^5.1.0" - range-parser@^1.2.1, range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" @@ -12029,14 +9958,6 @@ raw-body@2.5.1, raw-body@^2.2.0: iconv-lite "0.4.24" unpipe "1.0.0" -raw-loader@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.2.tgz#1aac6b7d1ad1501e66efdac1522c73e59a584eb6" - integrity sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA== - dependencies: - loader-utils "^2.0.0" - schema-utils "^3.0.0" - rc@1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" @@ -12047,6 +9968,11 @@ rc@1.2.8: minimist "^1.2.0" strip-json-comments "~2.0.1" +react-colorful@^5.1.2: + version "5.6.1" + resolved "https://registry.yarnpkg.com/react-colorful/-/react-colorful-5.6.1.tgz#7dc2aed2d7c72fac89694e834d179e32f3da563b" + integrity sha512-1exovf0uGTGyq5mXQT0zgQ80uvj2PCwvF8zY1RN9/vbJVSjSo3fsB/4L3ObbF7u70NduSiK4xu4Y6q1MHoUGEw== + react-docgen-typescript@^2.1.1: version "2.2.2" resolved "https://registry.yarnpkg.com/react-docgen-typescript/-/react-docgen-typescript-2.2.2.tgz#4611055e569edc071204aadb20e1c93e1ab1659c" @@ -12076,44 +10002,40 @@ react-dom@^18.2.0: loose-envify "^1.1.0" scheduler "^0.23.0" -react-element-to-jsx-string@^14.3.4: - version "14.3.4" - resolved "https://registry.yarnpkg.com/react-element-to-jsx-string/-/react-element-to-jsx-string-14.3.4.tgz#709125bc72f06800b68f9f4db485f2c7d31218a8" - integrity sha512-t4ZwvV6vwNxzujDQ+37bspnLwA4JlgUPWhLjBJWsNIDceAf6ZKUTCjdm08cN6WeZ5pTMKiCJkmAYnpmR4Bm+dg== +react-element-to-jsx-string@^15.0.0: + version "15.0.0" + resolved "https://registry.yarnpkg.com/react-element-to-jsx-string/-/react-element-to-jsx-string-15.0.0.tgz#1cafd5b6ad41946ffc8755e254da3fc752a01ac6" + integrity sha512-UDg4lXB6BzlobN60P8fHWVPX3Kyw8ORrTeBtClmIlGdkOOE+GYQSFvmEU5iLLpwp/6v42DINwNcwOhOLfQ//FQ== dependencies: "@base2/pretty-print-object" "1.0.1" is-plain-object "5.0.0" - react-is "17.0.2" + react-is "18.1.0" -react-inspector@^5.1.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/react-inspector/-/react-inspector-5.1.1.tgz#58476c78fde05d5055646ed8ec02030af42953c8" - integrity sha512-GURDaYzoLbW8pMGXwYPDBIv6nqei4kK7LPRZ9q9HCZF54wqXz/dnylBp/kfE9XmekBhHvLDdcYeyIwSrvtOiWg== - dependencies: - "@babel/runtime" "^7.0.0" - is-dom "^1.0.0" - prop-types "^15.0.0" +react-inspector@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/react-inspector/-/react-inspector-6.0.1.tgz#1a37f0165d9df81ee804d63259eaaeabe841287d" + integrity sha512-cxKSeFTf7jpSSVddm66sKdolG90qURAX3g1roTeaN6x0YEbtWc8JpmFN9+yIqLNH2uEkYerWLtJZIXRIFuBKrg== -react-is@17.0.2, react-is@^17.0.1: - version "17.0.2" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" - integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== +react-is@18.1.0: + version "18.1.0" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.1.0.tgz#61aaed3096d30eacf2a2127118b5b41387d32a67" + integrity sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg== react-is@^16.13.1, react-is@^16.7.0: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== +react-is@^17.0.1: + version "17.0.2" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" + integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== + react-is@^18.0.0: version "18.2.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== -react-merge-refs@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/react-merge-refs/-/react-merge-refs-1.1.0.tgz#73d88b892c6c68cbb7a66e0800faa374f4c38b06" - integrity sha512-alTKsjEL0dKH/ru1Iyn7vliS2QRcBp9zZPGoWxUOvRGWPUYgjo+V01is7p04It6KhgrzhJGnIj9GgX8W4bZoCQ== - react-refresh@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.11.0.tgz#77198b944733f0f1f1a90e791de4541f9f074046" @@ -12140,14 +10062,6 @@ react@^18.2.0: dependencies: loose-envify "^1.1.0" -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A== - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - read-pkg-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" @@ -12165,15 +10079,6 @@ read-pkg-up@^7.0.1: read-pkg "^5.2.0" type-fest "^0.8.1" -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ== - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - read-pkg@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" @@ -12193,19 +10098,6 @@ read-pkg@^5.2.0: parse-json "^5.0.0" type-fest "^0.6.0" -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: - version "2.3.7" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" - integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~2.0.0" - safe-buffer "~5.1.1" - string_decoder "~1.1.1" - util-deprecate "~1.0.1" - readable-stream@1.1.x: version "1.1.14" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" @@ -12225,14 +10117,18 @@ readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stre string_decoder "^1.1.1" util-deprecate "^1.0.1" -readdirp@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== +readable-stream@^2.2.2, readable-stream@~2.3.6: + version "2.3.7" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" + integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~2.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.1.1" + util-deprecate "~1.0.1" readdirp@~3.6.0: version "3.6.0" @@ -12241,6 +10137,27 @@ readdirp@~3.6.0: dependencies: picomatch "^2.2.1" +recast@^0.21.0: + version "0.21.5" + resolved "https://registry.yarnpkg.com/recast/-/recast-0.21.5.tgz#e8cd22bb51bcd6130e54f87955d33a2b2e57b495" + integrity sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg== + dependencies: + ast-types "0.15.2" + esprima "~4.0.0" + source-map "~0.6.1" + tslib "^2.0.1" + +recast@^0.23.1: + version "0.23.1" + resolved "https://registry.yarnpkg.com/recast/-/recast-0.23.1.tgz#ee415a5561d2f99f02318ea8db81ad3a2267a6ff" + integrity sha512-RokaBcoxSjXUDzz1TXSZmZsSW6ZpLmlA3GGqJ8uuTrQ9hZhEz+4Tpsc+gRvYRJ2BU4H+ZyUlg91eSGDw7bwy7g== + dependencies: + assert "^2.0.0" + ast-types "^0.16.1" + esprima "~4.0.0" + source-map "~0.6.1" + tslib "^2.0.1" + rechoir@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" @@ -12248,14 +10165,6 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" -redent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - integrity sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g== - dependencies: - indent-string "^2.1.0" - strip-indent "^1.0.1" - redent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" @@ -12283,7 +10192,7 @@ regenerate@^1.4.2: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== -regenerator-runtime@^0.13.11, regenerator-runtime@^0.13.2, regenerator-runtime@^0.13.7: +regenerator-runtime@^0.13.11: version "0.13.11" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== @@ -12295,14 +10204,6 @@ regenerator-transform@^0.15.1: dependencies: "@babel/runtime" "^7.8.4" -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - regexp.prototype.flags@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" @@ -12403,47 +10304,6 @@ remark-external-links@^8.0.0: space-separated-tokens "^1.0.0" unist-util-visit "^2.0.0" -remark-footnotes@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/remark-footnotes/-/remark-footnotes-2.0.0.tgz#9001c4c2ffebba55695d2dd80ffb8b82f7e6303f" - integrity sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ== - -remark-mdx@1.6.22: - version "1.6.22" - resolved "https://registry.yarnpkg.com/remark-mdx/-/remark-mdx-1.6.22.tgz#06a8dab07dcfdd57f3373af7f86bd0e992108bbd" - integrity sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ== - dependencies: - "@babel/core" "7.12.9" - "@babel/helper-plugin-utils" "7.10.4" - "@babel/plugin-proposal-object-rest-spread" "7.12.1" - "@babel/plugin-syntax-jsx" "7.12.1" - "@mdx-js/util" "1.6.22" - is-alphabetical "1.0.4" - remark-parse "8.0.3" - unified "9.2.0" - -remark-parse@8.0.3: - version "8.0.3" - resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-8.0.3.tgz#9c62aa3b35b79a486454c690472906075f40c7e1" - integrity sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q== - dependencies: - ccount "^1.0.0" - collapse-white-space "^1.0.2" - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" - is-whitespace-character "^1.0.0" - is-word-character "^1.0.0" - markdown-escapes "^1.0.0" - parse-entities "^2.0.0" - repeat-string "^1.5.4" - state-toggle "^1.0.0" - trim "0.0.1" - trim-trailing-lines "^1.0.0" - unherit "^1.0.4" - unist-util-remove-position "^2.0.0" - vfile-location "^3.0.0" - xtend "^4.0.1" - remark-slug@^6.0.0: version "6.1.0" resolved "https://registry.yarnpkg.com/remark-slug/-/remark-slug-6.1.0.tgz#0503268d5f0c4ecb1f33315c00465ccdd97923ce" @@ -12453,45 +10313,16 @@ remark-slug@^6.0.0: mdast-util-to-string "^1.0.0" unist-util-visit "^2.0.0" -remark-squeeze-paragraphs@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz#76eb0e085295131c84748c8e43810159c5653ead" - integrity sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw== - dependencies: - mdast-squeeze-paragraphs "^4.0.0" - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== - -renderkid@^2.0.4: - version "2.0.7" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.7.tgz#464f276a6bdcee606f4a15993f9b29fc74ca8609" - integrity sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ== +renderkid@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-3.0.0.tgz#5fd823e4d6951d37358ecc9a58b1f06836b6268a" + integrity sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg== dependencies: css-select "^4.1.3" dom-converter "^0.2.0" htmlparser2 "^6.1.0" lodash "^4.17.21" - strip-ansi "^3.0.1" - -repeat-element@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" - integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== - -repeat-string@^1.5.4, repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== - -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A== - dependencies: - is-finite "^1.0.0" + strip-ansi "^6.0.1" require-directory@^2.1.1: version "2.1.1" @@ -12542,17 +10373,12 @@ resolve-global@1.0.0, resolve-global@^1.0.0: dependencies: global-dirs "^0.1.1" -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== - resolve.exports@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.3.2: +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0: version "1.22.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== @@ -12593,11 +10419,6 @@ restore-cursor@^4.0.0: onetime "^5.1.0" signal-exit "^3.0.2" -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - retry@0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" @@ -12613,7 +10434,7 @@ rfdc@^1.3.0: resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== -rimraf@^2.5.4, rimraf@^2.6.3: +rimraf@^2.6.1: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== @@ -12627,13 +10448,12 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== +rimraf@~2.6.2: + version "2.6.3" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" + integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" + glob "^7.1.3" rollup@^3.2.5: version "3.9.1" @@ -12642,11 +10462,6 @@ rollup@^3.2.5: optionalDependencies: fsevents "~2.3.2" -rsvp@^4.8.4: - version "4.8.5" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" - integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== - run-async@^2.4.0: version "2.4.1" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" @@ -12659,13 +10474,6 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg== - dependencies: - aproba "^1.1.1" - rxjs@^7.5.7: version "7.8.0" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.0.tgz#90a938862a82888ff4c7359811a595e14e1e09a4" @@ -12683,7 +10491,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0: +safe-buffer@5.2.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -12697,33 +10505,11 @@ safe-regex-test@^1.0.0: get-intrinsic "^1.1.3" is-regex "^1.1.4" -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== - dependencies: - ret "~0.1.10" - -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.1.0: +"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sane@^4.0.3: - version "4.1.0" - resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" - integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== - dependencies: - "@cnakazawa/watch" "^1.0.3" - anymatch "^2.0.0" - capture-exit "^2.0.0" - exec-sh "^0.3.2" - execa "^1.0.0" - fb-watchman "^2.0.0" - micromatch "^3.1.4" - minimist "^1.1.1" - walker "~1.0.5" - saxes@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/saxes/-/saxes-6.0.0.tgz#fe5b4a4768df4f14a201b1ba6a65c1f3d9988cc5" @@ -12738,25 +10524,7 @@ scheduler@^0.23.0: dependencies: loose-envify "^1.1.0" -schema-utils@2.7.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7" - integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== - dependencies: - "@types/json-schema" "^7.0.4" - ajv "^6.12.2" - ajv-keywords "^3.4.1" - -schema-utils@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" - integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== - dependencies: - ajv "^6.1.0" - ajv-errors "^1.0.0" - ajv-keywords "^3.1.0" - -schema-utils@^2.6.5, schema-utils@^2.7.0: +schema-utils@^2.6.5: version "2.7.1" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== @@ -12774,6 +10542,16 @@ schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1: ajv "^6.12.5" ajv-keywords "^3.5.2" +schema-utils@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.0.0.tgz#60331e9e3ae78ec5d16353c467c34b3a0a1d3df7" + integrity sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg== + dependencies: + "@types/json-schema" "^7.0.9" + ajv "^8.8.0" + ajv-formats "^2.1.1" + ajv-keywords "^5.0.0" + semver-diff@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-4.0.0.tgz#3afcf5ed6d62259f5c72d0d5d50dffbdc9680df5" @@ -12781,12 +10559,12 @@ semver-diff@^4.0.0: dependencies: semver "^7.3.5" -"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.6.0: +"semver@2 || 3 || 4 || 5", semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@7.3.8, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7: +semver@7.3.8, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8: version "7.3.8" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== @@ -12798,6 +10576,11 @@ semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== +semver@~7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" + integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== + send@0.18.0: version "0.18.0" resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" @@ -12817,20 +10600,6 @@ send@0.18.0: range-parser "~1.2.1" statuses "2.0.1" -serialize-javascript@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" - integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw== - dependencies: - randombytes "^2.1.0" - -serialize-javascript@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" - integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== - dependencies: - randombytes "^2.1.0" - serialize-javascript@^6.0.0: version "6.0.1" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz#b206efb27c3da0b0ab6b52f48d170b7996458e5c" @@ -12862,36 +10631,13 @@ serve-static@1.15.0: set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== - -set-value@^2.0.0, set-value@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" - integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== setprototypeof@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - shallow-clone@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" @@ -12899,13 +10645,6 @@ shallow-clone@^3.0.0: dependencies: kind-of "^6.0.2" -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== - dependencies: - shebang-regex "^1.0.0" - shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -12913,11 +10652,6 @@ shebang-command@^2.0.0: dependencies: shebang-regex "^3.0.0" -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== - shebang-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" @@ -12946,16 +10680,18 @@ signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== +simple-update-notifier@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz#67694c121de354af592b347cdba798463ed49c82" + integrity sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg== + dependencies: + semver "~7.0.0" + sisteransi@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== -slash@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" - integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== - slash@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" @@ -13002,36 +10738,6 @@ smart-buffer@^4.2.0: resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - socks-proxy-agent@5, socks-proxy-agent@^5.0.0: version "5.0.1" resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz#032fb583048a29ebffec2e6a73fca0761f48177e" @@ -13049,21 +10755,10 @@ socks@^2.3.3: ip "^2.0.0" smart-buffer "^4.2.0" -source-list-map@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" - integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== - -source-map-resolve@^0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" - integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== - dependencies: - atob "^2.1.2" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" +source-map-js@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== source-map-support@0.5.13: version "0.5.13" @@ -13073,7 +10768,7 @@ source-map-support@0.5.13: buffer-from "^1.0.0" source-map "^0.6.0" -source-map-support@^0.5.16, source-map-support@~0.5.12, source-map-support@~0.5.20: +source-map-support@^0.5.16, source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== @@ -13081,11 +10776,6 @@ source-map-support@^0.5.16, source-map-support@~0.5.12, source-map-support@~0.5. buffer-from "^1.0.0" source-map "^0.6.0" -source-map-url@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" - integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== - source-map@0.8.0-beta.0: version "0.8.0-beta.0" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.8.0-beta.0.tgz#d4c1bb42c3f7ee925f005927ba10709e0d1d1f11" @@ -13093,7 +10783,7 @@ source-map@0.8.0-beta.0: dependencies: whatwg-url "^7.0.0" -source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7: +source-map@^0.5.7: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== @@ -13144,13 +10834,6 @@ spdx-license-ids@^3.0.0: resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz#69077835abe2710b65f03969898b6637b505a779" integrity sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA== -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - split2@^3.0.0: version "3.2.2" resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" @@ -13170,25 +10853,6 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== -ssri@^6.0.1: - version "6.0.2" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.2.tgz#157939134f20464e7301ddba3e90ffa8f7728ac5" - integrity sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q== - dependencies: - figgy-pudding "^3.5.1" - -ssri@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" - integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== - dependencies: - minipass "^3.1.1" - -stable@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" - integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== - stack-utils@^2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" @@ -13201,19 +10865,6 @@ stackframe@^1.3.4: resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.3.4.tgz#b881a004c8c149a5e8efef37d51b16e412943310" integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw== -state-toggle@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/state-toggle/-/state-toggle-1.0.3.tgz#e123b16a88e143139b09c6852221bc9815917dfe" - integrity sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ== - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - statuses@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" @@ -13226,42 +10877,17 @@ stop-iteration-iterator@^1.0.0: dependencies: internal-slot "^1.0.4" -store2@^2.12.0: +store2@^2.14.2: version "2.14.2" resolved "https://registry.yarnpkg.com/store2/-/store2-2.14.2.tgz#56138d200f9fe5f582ad63bc2704dbc0e4a45068" integrity sha512-siT1RiqlfQnGqgT/YzXVUNsom9S0H1OX+dpdGN1xkyYATo4I6sep5NmsRD/40s3IIOvlCq6akxkqG82urIZW1w== -stream-browserify@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" - integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg== - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-each@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" - integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" - -stream-http@^2.7.2: - version "2.8.3" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" - integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== +storybook@^7.0.0-beta.43: + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/storybook/-/storybook-7.0.0-beta.43.tgz#9528c1f1402bc332b956c4341325779261751b9a" + integrity sha512-fanmqfAK6wZSDIaR9ijzfCpTQ6xyIJP4DhqsaqVllN3HS5OVrGX5y2EV3AqiHSHNLY4eIzQqkk2aBu8WaySjHQ== dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.3.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-shift@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" - integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== + "@storybook/cli" "7.0.0-beta.43" string-argv@^0.3.1: version "0.3.1" @@ -13302,7 +10928,7 @@ string-width@^5.0.0, string-width@^5.0.1, string-width@^5.1.2: emoji-regex "^9.2.2" strip-ansi "^7.0.1" -"string.prototype.matchall@^4.0.0 || ^3.0.1", string.prototype.matchall@^4.0.8: +string.prototype.matchall@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz#3bf85722021816dcd1bf38bb714915887ca79fd3" integrity sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg== @@ -13316,24 +10942,6 @@ string-width@^5.0.0, string-width@^5.0.1, string-width@^5.1.2: regexp.prototype.flags "^1.4.3" side-channel "^1.0.4" -string.prototype.padend@^3.0.0: - version "3.1.4" - resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.1.4.tgz#2c43bb3a89eb54b6750de5942c123d6c98dd65b6" - integrity sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - -string.prototype.padstart@^3.0.0: - version "3.1.4" - resolved "https://registry.yarnpkg.com/string.prototype.padstart/-/string.prototype.padstart-3.1.4.tgz#4842d58a09df2addac23cf0b325ce9f087978e90" - integrity sha512-XqOHj8horGsF+zwxraBvMTkBFM28sS/jHBJajh17JtJKA92qazidiQbLosV4UA18azvLOVKYo/E3g3T9Y5826w== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - string.prototype.trimend@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533" @@ -13352,7 +10960,7 @@ string.prototype.trimstart@^1.0.6: define-properties "^1.1.4" es-abstract "^1.20.4" -string_decoder@^1.0.0, string_decoder@^1.1.1: +string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== @@ -13371,13 +10979,6 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== - dependencies: - ansi-regex "^2.0.0" - strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -13392,13 +10993,6 @@ strip-ansi@^7.0.1: dependencies: ansi-regex "^6.0.1" -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g== - dependencies: - is-utf8 "^0.2.0" - strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" @@ -13409,11 +11003,6 @@ strip-bom@^4.0.0: resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== - strip-final-newline@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" @@ -13424,13 +11013,6 @@ strip-final-newline@^3.0.0: resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== -strip-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - integrity sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA== - dependencies: - get-stdin "^4.0.1" - strip-indent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" @@ -13438,7 +11020,7 @@ strip-indent@^3.0.0: dependencies: min-indent "^1.0.0" -strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: +strip-json-comments@^3.0.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== @@ -13448,20 +11030,10 @@ strip-json-comments@~2.0.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== -style-loader@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.3.0.tgz#828b4a3b3b7e7aa5847ce7bae9e874512114249e" - integrity sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q== - dependencies: - loader-utils "^2.0.0" - schema-utils "^2.7.0" - -style-to-object@0.3.0, style-to-object@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.3.0.tgz#b1b790d205991cc783801967214979ee19a76e46" - integrity sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA== - dependencies: - inline-style-parser "0.1.1" +style-loader@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-3.3.1.tgz#057dfa6b3d4d7c7064462830f9113ed417d38575" + integrity sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ== stylis@4.1.3: version "4.1.3" @@ -13487,7 +11059,7 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -supports-color@^7.0.0, supports-color@^7.1.0: +supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== @@ -13511,16 +11083,6 @@ symbol-tree@^3.2.4: resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== -symbol.prototype.description@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/symbol.prototype.description/-/symbol.prototype.description-1.0.5.tgz#d30e01263b6020fbbd2d2884a6276ce4d49ab568" - integrity sha512-x738iXRYsrAt9WBhRCVG5BtIC3B7CUkFwbHW2zOvGtwM33s7JjrCDyq8V0zgMYVb5ymsL8+qkzzpANH63CPQaQ== - dependencies: - call-bind "^1.0.2" - get-symbol-description "^1.0.0" - has-symbols "^1.0.2" - object.getownpropertydescriptors "^2.1.2" - synchronous-promise@^2.0.15: version "2.0.17" resolved "https://registry.yarnpkg.com/synchronous-promise/-/synchronous-promise-2.0.17.tgz#38901319632f946c982152586f2caf8ddc25c032" @@ -13539,17 +11101,12 @@ tabbable@^6.0.1: resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-6.0.1.tgz#427a09b13c83ae41eed3e88abb76a4af28bde1a6" integrity sha512-SYJSIgeyXW7EuX1ytdneO5e8jip42oHWg9xl/o3oTYhmXusZVgiA+VlPvjIN+kHii9v90AmzTZEBcsEvuAY+TA== -tapable@^1.0.0, tapable@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" - integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== - -tapable@^2.1.1, tapable@^2.2.0: +tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0, tapable@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== -tar@^6.0.2: +tar@^6.1.12: version "6.1.13" resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.13.tgz#46e22529000f612180601a6fe0680e7da508847b" integrity sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw== @@ -13561,51 +11118,37 @@ tar@^6.0.2: mkdirp "^1.0.3" yallist "^4.0.0" -telejson@^6.0.8: - version "6.0.8" - resolved "https://registry.yarnpkg.com/telejson/-/telejson-6.0.8.tgz#1c432db7e7a9212c1fbd941c3e5174ec385148f7" - integrity sha512-nerNXi+j8NK1QEfBHtZUN/aLdDcyupA//9kAboYLrtzZlPLpUfqbVGWb9zz91f/mIjRbAYhbgtnJHY8I1b5MBg== +telejson@^7.0.3: + version "7.0.4" + resolved "https://registry.yarnpkg.com/telejson/-/telejson-7.0.4.tgz#2e88c0af9566b4f687622ed490588312b2bec186" + integrity sha512-J4QEuCnYGXAI9KSN7RXK0a0cOW2ONpjc4IQbInGZ6c3stvplLAYyZjTnScrRd8deXVjNCFV1wXcLC7SObDuQYA== dependencies: - "@types/is-function" "^1.0.0" - global "^4.4.0" - is-function "^1.0.2" - is-regex "^1.1.2" - is-symbol "^1.0.3" - isobject "^4.0.0" - lodash "^4.17.21" memoizerific "^1.11.3" -terser-webpack-plugin@^1.4.3: - version "1.4.5" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz#a217aefaea330e734ffacb6120ec1fa312d6040b" - integrity sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw== +temp-dir@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e" + integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg== + +temp@^0.8.4: + version "0.8.4" + resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.4.tgz#8c97a33a4770072e0a05f919396c7665a7dd59f2" + integrity sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg== dependencies: - cacache "^12.0.2" - find-cache-dir "^2.1.0" - is-wsl "^1.1.0" - schema-utils "^1.0.0" - serialize-javascript "^4.0.0" - source-map "^0.6.1" - terser "^4.1.2" - webpack-sources "^1.4.0" - worker-farm "^1.7.0" + rimraf "~2.6.2" -terser-webpack-plugin@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz#28daef4a83bd17c1db0297070adc07fc8cfc6a9a" - integrity sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ== +tempy@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/tempy/-/tempy-1.0.1.tgz#30fe901fd869cfb36ee2bd999805aa72fbb035de" + integrity sha512-biM9brNqxSc04Ee71hzFbryD11nX7VPhQQY32AdDmjFvodsRFz/3ufeoTZ6uYkRFfGo188tENcASNs3vTdsM0w== dependencies: - cacache "^15.0.5" - find-cache-dir "^3.3.1" - jest-worker "^26.5.0" - p-limit "^3.0.2" - schema-utils "^3.0.0" - serialize-javascript "^5.0.1" - source-map "^0.6.1" - terser "^5.3.4" - webpack-sources "^1.4.3" + del "^6.0.0" + is-stream "^2.0.0" + temp-dir "^2.0.0" + type-fest "^0.16.0" + unique-string "^2.0.0" -terser-webpack-plugin@^5.1.3: +terser-webpack-plugin@^5.1.3, terser-webpack-plugin@^5.3.1: version "5.3.6" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz#5590aec31aa3c6f771ce1b1acca60639eab3195c" integrity sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ== @@ -13616,16 +11159,17 @@ terser-webpack-plugin@^5.1.3: serialize-javascript "^6.0.0" terser "^5.14.1" -terser@^4.1.2, terser@^4.6.3: - version "4.8.1" - resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.1.tgz#a00e5634562de2239fd404c649051bf6fc21144f" - integrity sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw== +terser@^5.10.0: + version "5.16.3" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.16.3.tgz#3266017a9b682edfe019b8ecddd2abaae7b39c6b" + integrity sha512-v8wWLaS/xt3nE9dgKEWhNUFP6q4kngO5B8eYFUuebsu7Dw/UNAnpUod6UHo04jSSkv8TzKHjZDSd7EXdDQAl8Q== dependencies: + "@jridgewell/source-map" "^0.3.2" + acorn "^8.5.0" commander "^2.20.0" - source-map "~0.6.1" - source-map-support "~0.5.12" + source-map-support "~0.5.20" -terser@^5.14.1, terser@^5.3.4: +terser@^5.14.1: version "5.16.1" resolved "https://registry.yarnpkg.com/terser/-/terser-5.16.1.tgz#5af3bc3d0f24241c7fb2024199d5c461a1075880" integrity sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw== @@ -13688,13 +11232,6 @@ through@2, "through@>=2.2.7 <3", through@^2.3.6, through@^2.3.8: resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== -timers-browserify@^2.0.4: - version "2.0.12" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee" - integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ== - dependencies: - setimmediate "^1.0.4" - tiny-glob@^0.2.9: version "0.2.9" resolved "https://registry.yarnpkg.com/tiny-glob/-/tiny-glob-0.2.9.tgz#2212d441ac17928033b110f8b3640683129d31e2" @@ -13715,31 +11252,11 @@ tmpl@1.0.5: resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA== - to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -13747,16 +11264,6 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - toidentifier@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" @@ -13796,31 +11303,11 @@ tree-kill@^1.2.2: resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc" integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A== -trim-newlines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - integrity sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw== - trim-newlines@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== -trim-trailing-lines@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz#bd4abbec7cc880462f10b2c8b5ce1d8d1ec7c2c0" - integrity sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ== - -trim@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/trim/-/trim-0.0.1.tgz#5858547f6b290757ee95cccc666fb50084c460dd" - integrity sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ== - -trough@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz#b8b639cefad7d0bb2abd37d433ff8293efa5f406" - integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== - ts-dedent@^2.0.0, ts-dedent@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-2.2.0.tgz#39e4bd297cd036292ae2394eb3412be63f563bb5" @@ -13850,11 +11337,6 @@ ts-node@^10.8.1: v8-compile-cache-lib "^3.0.1" yn "3.1.1" -ts-pnp@^1.1.6: - version "1.2.0" - resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" - integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== - tsconfig-paths@^3.14.1: version "3.14.1" resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz#ba0734599e8ea36c862798e920bcf163277b137a" @@ -13865,7 +11347,7 @@ tsconfig-paths@^3.14.1: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^1.8.1, tslib@^1.9.3: +tslib@^1.8.1: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== @@ -13902,11 +11384,6 @@ tsutils@^3.21.0: dependencies: tslib "^1.8.1" -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw== - type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" @@ -13926,6 +11403,11 @@ type-detect@4.0.8: resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== +type-fest@^0.16.0: + version "0.16.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.16.0.tgz#3240b891a78b0deae910dbeb86553e552a148860" + integrity sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg== + type-fest@^0.18.0: version "0.18.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" @@ -13956,7 +11438,7 @@ type-fest@^1.0.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== -type-fest@^2.13.0, type-fest@^2.5.1: +type-fest@^2.13.0, type-fest@^2.19.0, type-fest@^2.5.1: version "2.19.0" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b" integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA== @@ -14020,14 +11502,6 @@ unfetch@^4.2.0: resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== -unherit@^1.0.4: - version "1.1.3" - resolved "https://registry.yarnpkg.com/unherit/-/unherit-1.1.3.tgz#6c9b503f2b41b262330c80e91c8614abdaa69c22" - integrity sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ== - dependencies: - inherits "^2.0.0" - xtend "^4.0.0" - unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" @@ -14051,41 +11525,12 @@ unicode-property-aliases-ecmascript@^2.0.0: resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== -unified@9.2.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/unified/-/unified-9.2.0.tgz#67a62c627c40589edebbf60f53edfd4d822027f8" - integrity sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg== - dependencies: - bail "^1.0.0" - extend "^3.0.0" - is-buffer "^2.0.0" - is-plain-obj "^2.0.0" - trough "^1.0.0" - vfile "^4.0.0" - -union-value@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" - integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^2.0.1" - -unique-filename@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== - dependencies: - unique-slug "^2.0.0" - -unique-slug@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" - integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== +unique-string@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" + integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== dependencies: - imurmurhash "^0.1.4" + crypto-random-string "^2.0.0" unique-string@^3.0.0: version "3.0.0" @@ -14094,47 +11539,11 @@ unique-string@^3.0.0: dependencies: crypto-random-string "^4.0.0" -unist-builder@2.0.3, unist-builder@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-builder/-/unist-builder-2.0.3.tgz#77648711b5d86af0942f334397a33c5e91516436" - integrity sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw== - -unist-util-generated@^1.0.0: - version "1.1.6" - resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-1.1.6.tgz#5ab51f689e2992a472beb1b35f2ce7ff2f324d4b" - integrity sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg== - unist-util-is@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.1.0.tgz#976e5f462a7a5de73d94b706bac1b90671b57797" integrity sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg== -unist-util-position@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-3.1.0.tgz#1c42ee6301f8d52f47d14f62bbdb796571fa2d47" - integrity sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA== - -unist-util-remove-position@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz#5d19ca79fdba712301999b2b73553ca8f3b352cc" - integrity sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA== - dependencies: - unist-util-visit "^2.0.0" - -unist-util-remove@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/unist-util-remove/-/unist-util-remove-2.1.0.tgz#b0b4738aa7ee445c402fda9328d604a02d010588" - integrity sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q== - dependencies: - unist-util-is "^4.0.0" - -unist-util-stringify-position@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz#cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da" - integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== - dependencies: - "@types/unist" "^2.0.2" - unist-util-visit-parents@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz#65a6ce698f78a6b0f56aa0e88f13801886cdaef6" @@ -14143,7 +11552,7 @@ unist-util-visit-parents@^3.0.0: "@types/unist" "^2.0.0" unist-util-is "^4.0.0" -unist-util-visit@2.0.3, unist-util-visit@^2.0.0: +unist-util-visit@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.3.tgz#c3703893146df47203bb8a9795af47d7b971208c" integrity sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q== @@ -14177,25 +11586,20 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -untildify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/untildify/-/untildify-2.1.0.tgz#17eb2807987f76952e9c0485fc311d06a826a2e0" - integrity sha512-sJjbDp2GodvkB0FZZcn7k6afVisqX5BZD7Yq3xp4nN2O15BBK0cLm3Vwn2vQaF7UDS0UUsrQMkkplmDI5fskig== +unplugin@^0.10.2: + version "0.10.2" + resolved "https://registry.yarnpkg.com/unplugin/-/unplugin-0.10.2.tgz#0f7089c3666f592cc448d746e39e7f41e9afb01a" + integrity sha512-6rk7GUa4ICYjae5PrAllvcDeuT8pA9+j5J5EkxbMFaV+SalHhxZ7X2dohMzu6C3XzsMT+6jwR/+pwPNR3uK9MA== dependencies: - os-homedir "^1.0.0" + acorn "^8.8.0" + chokidar "^3.5.3" + webpack-sources "^3.2.3" + webpack-virtual-modules "^0.4.5" -upath@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" - integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== +untildify@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" + integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== update-browserslist-db@^1.0.9: version "1.0.10" @@ -14232,25 +11636,11 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== - url-join@5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/url-join/-/url-join-5.0.0.tgz#c2f1e5cbd95fa91082a93b58a1f42fecb4bdbcf1" integrity sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA== -url-loader@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" - integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== - dependencies: - loader-utils "^2.0.0" - mime-types "^2.1.27" - schema-utils "^3.0.0" - url-parse@^1.5.3: version "1.5.10" resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" @@ -14259,14 +11649,6 @@ url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -url@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ== - dependencies: - punycode "1.3.2" - querystring "0.2.0" - use-composed-ref@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/use-composed-ref/-/use-composed-ref-1.3.0.tgz#3d8104db34b7b264030a9d916c5e94fbe280dbda" @@ -14284,37 +11666,28 @@ use-latest@^1.2.1: dependencies: use-isomorphic-layout-effect "^1.1.1" -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== +use-resize-observer@^9.1.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/use-resize-observer/-/use-resize-observer-9.1.0.tgz#14735235cf3268569c1ea468f8a90c5789fc5c6c" + integrity sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow== + dependencies: + "@juggle/resize-observer" "^3.3.1" util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== -util.promisify@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" - integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== - dependencies: - define-properties "^1.1.2" - object.getownpropertydescriptors "^2.0.3" - -util@0.10.3: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - integrity sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ== - dependencies: - inherits "2.0.1" - -util@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" - integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ== +util@^0.12.0, util@^0.12.4: + version "0.12.5" + resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc" + integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA== dependencies: - inherits "2.0.3" + inherits "^2.0.3" + is-arguments "^1.0.4" + is-generator-function "^1.0.7" + is-typed-array "^1.1.3" + which-typed-array "^1.1.2" utila@~0.4: version "0.4.0" @@ -14331,11 +11704,6 @@ uuid-browser@^3.1.0: resolved "https://registry.yarnpkg.com/uuid-browser/-/uuid-browser-3.1.0.tgz#0f05a40aef74f9e5951e20efbf44b11871e56410" integrity sha512-dsNgbLaTrd6l3MMxTtouOCFw4CBFc/3a+GgYA2YyrJvyQ1u6q4pcu3ktLoUZ/VN/Aw9WsauazbgsgdfVWgAKQg== -uuid@^3.3.2: - version "3.4.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== - v8-compile-cache-lib@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" @@ -14363,34 +11731,6 @@ vary@~1.1.2: resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== -vfile-location@^3.0.0, vfile-location@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-3.2.0.tgz#d8e41fbcbd406063669ebf6c33d56ae8721d0f3c" - integrity sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA== - -vfile-message@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.4.tgz#5b43b88171d409eae58477d13f23dd41d52c371a" - integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ== - dependencies: - "@types/unist" "^2.0.0" - unist-util-stringify-position "^2.0.0" - -vfile@^4.0.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.2.1.tgz#03f1dce28fc625c625bc6514350fbdb00fa9e624" - integrity sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA== - dependencies: - "@types/unist" "^2.0.0" - is-buffer "^2.0.0" - unist-util-stringify-position "^2.0.0" - vfile-message "^2.0.0" - -vm-browserify@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" - integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== - vm2@^3.9.8: version "3.9.13" resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.13.tgz#774a1a3d73b9b90b1aa45bcc5f25e349f2eef649" @@ -14406,31 +11746,13 @@ w3c-xmlserializer@^4.0.0: dependencies: xml-name-validator "^4.0.0" -walker@^1.0.7, walker@^1.0.8, walker@~1.0.5: +walker@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== dependencies: makeerror "1.0.12" -watchpack-chokidar2@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz#38500072ee6ece66f3769936950ea1771be1c957" - integrity sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww== - dependencies: - chokidar "^2.1.8" - -watchpack@^1.7.4: - version "1.7.5" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.5.tgz#1267e6c55e0b9b5be44c2023aed5437a2c26c453" - integrity sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ== - dependencies: - graceful-fs "^4.1.2" - neo-async "^2.5.0" - optionalDependencies: - chokidar "^3.4.1" - watchpack-chokidar2 "^2.0.1" - watchpack@^2.2.0, watchpack@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d" @@ -14446,11 +11768,6 @@ wcwidth@^1.0.1: dependencies: defaults "^1.0.3" -web-namespaces@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.4.tgz#bc98a3de60dadd7faefc403d1076d529f5e030ec" - integrity sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw== - web-streams-polyfill@^3.0.3: version "3.2.1" resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz#71c2718c52b45fd49dbeee88634b3a60ceab42a6" @@ -14471,21 +11788,16 @@ webidl-conversions@^7.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== -webpack-dev-middleware@^3.7.3: - version "3.7.3" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz#0639372b143262e2b84ab95d3b91a7597061c2c5" - integrity sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ== +webpack-dev-middleware@^5.3.1: + version "5.3.3" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz#efae67c2793908e7311f1d9b06f2a08dcc97e51f" + integrity sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA== dependencies: - memory-fs "^0.4.1" - mime "^2.4.4" - mkdirp "^0.5.1" + colorette "^2.0.10" + memfs "^3.4.3" + mime-types "^2.1.31" range-parser "^1.2.1" - webpack-log "^2.0.0" - -webpack-filter-warnings-plugin@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/webpack-filter-warnings-plugin/-/webpack-filter-warnings-plugin-1.2.1.tgz#dc61521cf4f9b4a336fbc89108a75ae1da951cdb" - integrity sha512-Ez6ytc9IseDMLPo0qCuNNYzgtUl8NovOqjIq4uAU8LTD4uoa1w1KpZyyzFtLTEMZpkkOkLfL9eN+KGYdk1Qtwg== + schema-utils "^4.0.0" webpack-hot-middleware@^2.25.1: version "2.25.3" @@ -14496,64 +11808,17 @@ webpack-hot-middleware@^2.25.1: html-entities "^2.1.0" strip-ansi "^6.0.0" -webpack-log@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" - integrity sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg== - dependencies: - ansi-colors "^3.0.0" - uuid "^3.3.2" - -webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" - integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - webpack-sources@^3.2.3: version "3.2.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== -webpack-virtual-modules@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/webpack-virtual-modules/-/webpack-virtual-modules-0.2.2.tgz#20863dc3cb6bb2104729fff951fbe14b18bd0299" - integrity sha512-kDUmfm3BZrei0y+1NTHJInejzxfhtU8eDj2M7OKb2IWrPFAeO1SOH2KuQ68MSZu9IGEHcxbkKKR1v18FrUSOmA== - dependencies: - debug "^3.0.0" - -webpack@4: - version "4.46.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.46.0.tgz#bf9b4404ea20a073605e0a011d188d77cb6ad542" - integrity sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-module-context" "1.9.0" - "@webassemblyjs/wasm-edit" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - acorn "^6.4.1" - ajv "^6.10.2" - ajv-keywords "^3.4.1" - chrome-trace-event "^1.0.2" - enhanced-resolve "^4.5.0" - eslint-scope "^4.0.3" - json-parse-better-errors "^1.0.2" - loader-runner "^2.4.0" - loader-utils "^1.2.3" - memory-fs "^0.4.1" - micromatch "^3.1.10" - mkdirp "^0.5.3" - neo-async "^2.6.1" - node-libs-browser "^2.2.1" - schema-utils "^1.0.0" - tapable "^1.1.3" - terser-webpack-plugin "^1.4.3" - watchpack "^1.7.4" - webpack-sources "^1.4.1" - -"webpack@>=4.43.0 <6.0.0": +webpack-virtual-modules@^0.4.3, webpack-virtual-modules@^0.4.5: + version "0.4.6" + resolved "https://registry.yarnpkg.com/webpack-virtual-modules/-/webpack-virtual-modules-0.4.6.tgz#3e4008230731f1db078d9cb6f68baf8571182b45" + integrity sha512-5tyDlKLqPfMqjT3Q9TAqf2YqjwmnUleZwzJi1A5qXnlBCdj2AtOJ6wAWdglTIDOPgOiOrXeBeFcsQ8+aGQ6QbA== + +webpack@5, webpack@^5.75.0: version "5.75.0" resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.75.0.tgz#1e440468647b2505860e94c9ff3e44d5b582c152" integrity sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ== @@ -14641,7 +11906,7 @@ which-collection@^1.0.1: is-weakmap "^2.0.1" is-weakset "^2.0.1" -which-typed-array@^1.1.9: +which-typed-array@^1.1.2, which-typed-array@^1.1.9: version "1.1.9" resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.9.tgz#307cf898025848cf995e795e8423c7f337efbde6" integrity sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA== @@ -14653,13 +11918,6 @@ which-typed-array@^1.1.9: has-tostringtag "^1.0.0" is-typed-array "^1.1.10" -which@^1.2.9: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" @@ -14710,20 +11968,6 @@ wordwrap@^1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== -worker-farm@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" - integrity sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw== - dependencies: - errno "~0.1.7" - -worker-rpc@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/worker-rpc/-/worker-rpc-0.1.1.tgz#cb565bd6d7071a8f16660686051e969ad32f54d5" - integrity sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg== - dependencies: - microevent.ts "~0.1.1" - wrap-ansi@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" @@ -14756,7 +12000,16 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -write-file-atomic@^3.0.0, write-file-atomic@^3.0.3: +write-file-atomic@^2.3.0: + version "2.4.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" + integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + signal-exit "^3.0.2" + +write-file-atomic@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== @@ -14774,6 +12027,13 @@ write-file-atomic@^4.0.1: imurmurhash "^0.1.4" signal-exit "^3.0.7" +ws@^6.1.0: + version "6.2.2" + resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.2.tgz#dd5cdbd57a9979916097652d78f1cc5faea0c32e" + integrity sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw== + dependencies: + async-limiter "~1.0.0" + ws@^8.11.0: version "8.11.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.11.0.tgz#6a0d36b8edfd9f96d8b25683db2f8d7de6e8e143" @@ -14784,13 +12044,6 @@ ws@^8.2.3: resolved "https://registry.yarnpkg.com/ws/-/ws-8.12.0.tgz#485074cc392689da78e1828a9ff23585e06cddd8" integrity sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig== -x-default-browser@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/x-default-browser/-/x-default-browser-0.4.0.tgz#70cf0da85da7c0ab5cb0f15a897f2322a6bdd481" - integrity sha512-7LKo7RtWfoFN/rHx1UELv/2zHGMx8MkZKDq1xENmOCTkfIqZJ0zZ26NEJX8czhnPXVcqS0ARjjfJB+eJ0/5Cvw== - optionalDependencies: - default-browser-id "^1.0.4" - xdg-basedir@^5.0.1, xdg-basedir@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-5.1.0.tgz#1efba19425e73be1bc6f2a6ceb52a3d2c884c0c9" @@ -14811,16 +12064,11 @@ xregexp@2.0.0: resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943" integrity sha512-xl/50/Cf32VsGq/1R8jJE5ajH1yMCQkpmoS10QbFZWl2Oor4H0Me64Pu2yxvsRWK3m6soJbmGfzSR7BYmDcWAA== -xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: +xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== -y18n@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" - integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== - y18n@^5.0.5: version "5.0.8" resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" @@ -14836,7 +12084,7 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2: +yaml@^1.10.0, yaml@^1.10.2: version "1.10.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== @@ -14882,6 +12130,14 @@ yargs@^17.0.0, yargs@^17.3.1: y18n "^5.0.5" yargs-parser "^21.1.1" +yauzl@^2.10.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" + integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== + dependencies: + buffer-crc32 "~0.2.3" + fd-slicer "~1.1.0" + yn@3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" @@ -14891,8 +12147,3 @@ yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== - -zwitch@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.5.tgz#d11d7381ffed16b742f6af7b3f223d5cd9fe9920" - integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw== From ff0cc42375684e5282398f06eca49f9df934882c Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sat, 4 Feb 2023 19:38:29 -0500 Subject: [PATCH 05/45] refactor: make DevTools dev only --- src/DevTools/DevTools.tsx | 10 +++++++++- src/DevTools/utils/getAtomByKey.ts | 9 --------- 2 files changed, 9 insertions(+), 10 deletions(-) delete mode 100644 src/DevTools/utils/getAtomByKey.ts diff --git a/src/DevTools/DevTools.tsx b/src/DevTools/DevTools.tsx index 3c898aa4..ad010348 100644 --- a/src/DevTools/DevTools.tsx +++ b/src/DevTools/DevTools.tsx @@ -49,7 +49,7 @@ export type DevToolsProps = ExtensionProps & { options?: DevToolsOptions; }; -export const DevTools = ({ +const DevTools_ = ({ store, isInitialOpen, theme: userColorScheme = 'light', @@ -90,3 +90,11 @@ export const DevTools = ({ ); }; + +export const DevTools = (props: DevToolsProps): JSX.Element => { + if (__DEV__) { + return ; + } + + return <>; +}; diff --git a/src/DevTools/utils/getAtomByKey.ts b/src/DevTools/utils/getAtomByKey.ts deleted file mode 100644 index af64277b..00000000 --- a/src/DevTools/utils/getAtomByKey.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ValuesAtomTuple } from 'src/types'; - -export const getAtomByKey = (values: ValuesAtomTuple[], key?: string) => { - if (typeof key === 'string') { - return values.find(([atom]) => atom.toString() === key); - } - - return undefined; -}; From bd3ce110737effc86a0f1ac0466222f747e89f80 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sat, 4 Feb 2023 19:39:12 -0500 Subject: [PATCH 06/45] docs: update docs --- README.md | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 57 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 86e78334..d24e20d5 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# jotai-devtools +# Jotai DevTools ## Prerequisites @@ -15,7 +15,62 @@ npm install jotai-devtools --save yarn add jotai-devtools ``` -## API +## UI DevTool + +### Provider-less + +```tsx +import { createStore } from 'jotai'; +import { DevTools } from 'jotai-devtools'; + +const App = () => { + return ( + <> + + {/* your app */} + + ); +}; +``` + +### With Provider + +```tsx +import { createStore } from 'jotai'; +import { DevTools } from 'jotai-devtools'; + +const customStore = createStore(); + +const App = () => { + return ( + + + {/* your app */} + + ); +}; +``` + +### Available props + +```ts +type DevToolsProps = { + // defaults to false + isInitialOpen?: boolean; + // pass a custom store + store?: Store; + // Defaults to light + theme?: 'dark' | 'light'; + options?: { + // Parsing strategy for AtomViewer. Defaults to `raw` + // `raw` - parses the top level atom value but does not parse the values of atoms within atoms + // `deep-nested` - Parses values of atoms within atoms. Linear performance curve. Bigger the object, the slower the performance + atomValueParser?: 'raw' | 'deep-nested'; + }; +}; +``` + +## Hooks Detailed documentation is available on [https://jotai.org/docs/api/devtools](https://jotai.org/docs/api/devtools) From 17c674c36ceaa2aa8022cc2d82ed8fe013b3123c Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sat, 4 Feb 2023 19:43:15 -0500 Subject: [PATCH 07/45] chore: disable storybook telemetry --- .storybook/main.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.storybook/main.ts b/.storybook/main.ts index 5db299dc..02959cad 100644 --- a/.storybook/main.ts +++ b/.storybook/main.ts @@ -24,12 +24,16 @@ const config: StorybookConfig = { }, }, }, + core: { + disableTelemetry: true, // πŸ‘ˆ Disables telemetry + enableCrashReports: false, // πŸ‘ˆ Appends the crash reports to the telemetry events + }, webpackFinal: async (config, { configType }) => { // `configType` has a value of 'DEVELOPMENT' or 'PRODUCTION' // You can change the configuration based on that. // 'PRODUCTION' is used when building the static version of storybook. - config.plugins.push( + config?.plugins?.push( new webpack.DefinePlugin({ __DEV__: configType === 'DEVELOPMENT', }), From d5cd473f278947016a10abbe357f683308fd3e0d Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sat, 4 Feb 2023 19:47:55 -0500 Subject: [PATCH 08/45] refactor: standardize filenames --- README.md | 3 +-- .../AtomDetail/components/DisplayAtomDetails.tsx | 2 +- .../components/components/AtomDependentsList.tsx | 2 +- .../AtomDetail/components/components/AtomMetaDetails.tsx | 4 ++-- .../components/components/AtomParseDeepNestedValue.tsx | 4 ++-- .../AtomDetail/components/components/AtomParseRawValue.tsx | 2 +- .../components/AtomList/components/AtomListItem.tsx | 2 +- .../{getTypeOfAtomValue.ts => get-type-of-atom-value.ts} | 0 src/DevTools/utils/index.ts | 7 +++---- .../utils/{parseAtomValue.ts => parse-atom-value.ts} | 2 +- .../utils/{parseDebugLabel.ts => parse-debug-label.ts} | 0 11 files changed, 13 insertions(+), 15 deletions(-) rename src/DevTools/utils/{getTypeOfAtomValue.ts => get-type-of-atom-value.ts} (100%) rename src/DevTools/utils/{parseAtomValue.ts => parse-atom-value.ts} (96%) rename src/DevTools/utils/{parseDebugLabel.ts => parse-debug-label.ts} (100%) diff --git a/README.md b/README.md index d24e20d5..4bd1f61c 100644 --- a/README.md +++ b/README.md @@ -120,5 +120,4 @@ Find the official migration guide on ### Other announcements -✨ UI based devtools is -[coming soon](https://twitter.com/dai_shi/status/1611717249471246338)! +✨ [First announcement](https://twitter.com/dai_shi/status/1611717249471246338) diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx index 700e0bb1..894df9de 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx @@ -3,7 +3,7 @@ import { useAtomValue } from 'jotai/react'; import { AnyAtom } from 'src/types'; import { useDevToolsOptionsValue } from '../../../../../../../../atoms/devtools-options'; import { useUserStoreOptions } from '../../../../../../../../hooks/useUserStore'; -import { getTypeOfAtomValue } from '../../../../../../../../utils/getTypeOfAtomValue'; +import { getTypeOfAtomValue } from '../../../../../../../../utils/get-type-of-atom-value'; import { AtomDependentsList } from './components/AtomDependentsList'; import { AtomMetaDetails } from './components/AtomMetaDetails'; import { AtomParseDeepNestedValue } from './components/AtomParseDeepNestedValue'; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomDependentsList.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomDependentsList.tsx index a01ce818..c43b66fd 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomDependentsList.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomDependentsList.tsx @@ -2,7 +2,7 @@ import { useMemo } from 'react'; import { Box, Code, List, Text } from '@mantine/core'; import { AnyAtom } from 'src/types'; import { useAtomsSnapshots } from '../../../../../../../../../hooks/useAtomsSnapshots'; -import { parseDebugLabel } from '../../../../../../../../../utils/parseDebugLabel'; +import { parseDebugLabel } from '../../../../../../../../../utils/parse-debug-label'; type AtomDependentsListProps = { atom: AnyAtom; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx index 62fe105e..a0f8ae89 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx @@ -1,8 +1,8 @@ import { memo } from 'react'; import { Box, Code, Text, Title } from '@mantine/core'; import { unlabeledAtomLabel } from '../../../../../../../../../constants'; -import { AtomValueType } from '../../../../../../../../../utils/getTypeOfAtomValue'; -import { parseDebugLabel } from '../../../../../../../../../utils/parseDebugLabel'; +import { AtomValueType } from '../../../../../../../../../utils/get-type-of-atom-value'; +import { parseDebugLabel } from '../../../../../../../../../utils/parse-debug-label'; type AtomDetailItemProps = { label: string; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx index 4f28d99d..0cf4d9b8 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx @@ -3,8 +3,8 @@ import { Box, Text } from '@mantine/core'; import { useAtomValue } from 'jotai/react'; import { AnyAtom } from 'src/types'; import { useUserStore } from '../../../../../../../../../hooks/useUserStore'; -import { AtomValueType } from '../../../../../../../../../utils/getTypeOfAtomValue'; -import { deepParseAtomValue } from '../../../../../../../../../utils/parseAtomValue'; +import { AtomValueType } from '../../../../../../../../../utils/get-type-of-atom-value'; +import { deepParseAtomValue } from '../../../../../../../../../utils/parse-atom-value'; import { MemoizedValueRenderer, getPrismLanguageType, diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx index 3e87846a..0eb7e7b3 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx @@ -1,6 +1,6 @@ import { Box, Text } from '@mantine/core'; import { AnyAtomValue } from 'src/types'; -import { AtomValueType } from '../../../../../../../../../utils/getTypeOfAtomValue'; +import { AtomValueType } from '../../../../../../../../../utils/get-type-of-atom-value'; import { MemoizedValueRenderer, getPrismLanguageType, diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx index 41e255d1..232e55ce 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx @@ -2,7 +2,7 @@ import { memo, useCallback, useMemo } from 'react'; import { NavLink, Sx, Text } from '@mantine/core'; import { IconChevronRight } from '@tabler/icons'; import { useThemeMode } from '../../../../../../../../hooks/useThemeMode'; -import { parseDebugLabel } from '../../../../../../../../utils/parseDebugLabel'; +import { parseDebugLabel } from '../../../../../../../../utils/parse-debug-label'; type AtomListItemProps = { label?: string; diff --git a/src/DevTools/utils/getTypeOfAtomValue.ts b/src/DevTools/utils/get-type-of-atom-value.ts similarity index 100% rename from src/DevTools/utils/getTypeOfAtomValue.ts rename to src/DevTools/utils/get-type-of-atom-value.ts diff --git a/src/DevTools/utils/index.ts b/src/DevTools/utils/index.ts index e15a241d..c7678ec9 100644 --- a/src/DevTools/utils/index.ts +++ b/src/DevTools/utils/index.ts @@ -1,4 +1,3 @@ -export * from './getAtomByKey'; -export * from './getTypeOfAtomValue'; -export * from './parseAtomValue'; -export * from './parseDebugLabel'; +export * from './get-type-of-atom-value'; +export * from './parse-atom-value'; +export * from './parse-debug-label'; diff --git a/src/DevTools/utils/parseAtomValue.ts b/src/DevTools/utils/parse-atom-value.ts similarity index 96% rename from src/DevTools/utils/parseAtomValue.ts rename to src/DevTools/utils/parse-atom-value.ts index 57131180..4f2fc94b 100644 --- a/src/DevTools/utils/parseAtomValue.ts +++ b/src/DevTools/utils/parse-atom-value.ts @@ -1,5 +1,5 @@ import type { AnyAtom, AnyAtomValue, Store } from 'src/types'; -import { getTypeOfAtomValue } from './getTypeOfAtomValue'; +import { getTypeOfAtomValue } from './get-type-of-atom-value'; const deepParseArrayAtom = ( atomValue: AnyAtomValue[], diff --git a/src/DevTools/utils/parseDebugLabel.ts b/src/DevTools/utils/parse-debug-label.ts similarity index 100% rename from src/DevTools/utils/parseDebugLabel.ts rename to src/DevTools/utils/parse-debug-label.ts From 72a8f68495466b68810856400b0c52665b816654 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Mon, 6 Feb 2023 17:07:15 -0500 Subject: [PATCH 09/45] refactor: misc updates + new stories --- .storybook/main.ts | 1 + README.md | 45 ++++++++++-- docs/internal/demo-screenshot.png | Bin 0 -> 164593 bytes package.json | 1 + src/DevTools/Extension/Extension.tsx | 8 +- .../Extension/components/Shell/Shell.tsx | 6 +- .../components/AtomViewer/AtomViewer.tsx | 4 +- .../components/components/AtomMetaDetails.tsx | 6 +- .../components/AtomParseDeepNestedValue.tsx | 6 +- .../components/AtomParseRawValue.tsx | 6 +- .../components/MemoizedValueRenderer.tsx | 8 +- .../components/AtomList/AtomList.tsx | 2 +- .../utils/filter-atoms-by-string.ts | 8 +- .../Extension/components/Shell/styles.ts | 2 +- src/stories/{ => Default}/Demos/Async.tsx | 0 src/stories/{ => Default}/Demos/Counter.tsx | 0 src/stories/{ => Default}/Demos/DemoApp.tsx | 2 +- src/stories/{ => Default}/Demos/Random.tsx | 0 src/stories/{ => Default}/Demos/Todos.tsx | 4 +- src/stories/{ => Default}/Demos/demo-store.ts | 0 src/stories/Default/DevTools.stories.tsx | 69 ++++++++++++++++++ src/stories/DevTools.stories.tsx | 23 ------ src/stories/ProviderLess/Counter.tsx | 15 ++++ .../DevToolsProviderLess.stories.tsx | 33 +++++++++ yarn.lock | 31 ++++++++ 25 files changed, 216 insertions(+), 64 deletions(-) create mode 100644 docs/internal/demo-screenshot.png rename src/stories/{ => Default}/Demos/Async.tsx (100%) rename src/stories/{ => Default}/Demos/Counter.tsx (100%) rename src/stories/{ => Default}/Demos/DemoApp.tsx (96%) rename src/stories/{ => Default}/Demos/Random.tsx (100%) rename src/stories/{ => Default}/Demos/Todos.tsx (97%) rename src/stories/{ => Default}/Demos/demo-store.ts (100%) create mode 100644 src/stories/Default/DevTools.stories.tsx delete mode 100644 src/stories/DevTools.stories.tsx create mode 100644 src/stories/ProviderLess/Counter.tsx create mode 100644 src/stories/ProviderLess/DevToolsProviderLess.stories.tsx diff --git a/.storybook/main.ts b/.storybook/main.ts index 02959cad..a0ab4410 100644 --- a/.storybook/main.ts +++ b/.storybook/main.ts @@ -7,6 +7,7 @@ const config: StorybookConfig = { '@storybook/addon-links', '@storybook/addon-essentials', '@storybook/addon-interactions', + '@storybook/addon-a11y', ], framework: { name: '@storybook/react-webpack5', diff --git a/README.md b/README.md index 4bd1f61c..a49fb669 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,59 @@ # Jotai DevTools +## Features + +- Debug 🐞 raw or deeply nested (atoms-in-atoms) atom values with ease +- Out-of-the-box πŸ”Œ support for async/suspendible atoms +- Built-in Dark mode πŸŒ— support +- βœ… Supports custom `store` +- βœ… Works with provider-less mode + +## Preview + +

+ + Jotai DevTools Screenshot + +

+ ## Prerequisites -- Jotai version `>=1.11.0` +- Jotai version `>=1.11.0` (highly recommended to use `2.x.x`) - React version `>=17.0.0` ## Setup ```sh -# npm -npm install jotai-devtools --save - # yarn yarn add jotai-devtools + +# npm +npm install jotai-devtools --save ``` -## UI DevTool +## UI DevTools + +### Babel plugin setup - (Optional but highly recommended) + +Use Jotai babel plugins for optimal experience. Full guide is available on +[jotai.org](https://jotai.org/docs/tools/babel) + +Eg. + +```json +{ + "plugins": [ + // Enables hot reload for atoms + "jotai/babel/plugin-react-refresh", + // Automatically adds debug labels to the atoms + "jotai/babel/plugin-debug-label" + ] +} +``` ### Provider-less ```tsx -import { createStore } from 'jotai'; import { DevTools } from 'jotai-devtools'; const App = () => { diff --git a/docs/internal/demo-screenshot.png b/docs/internal/demo-screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..4bd0c873805445ee40e070b52411dc1d976b9591 GIT binary patch literal 164593 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�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 ({ }, }); -const ShellTriggerButton = () => { +const ShellTriggerButton = forwardRef((_, ref) => { const setIsShellOpen = useSetAtom(isShellOpenAtom, devtoolsJotaiStoreOptions); return ( @@ -32,11 +32,13 @@ const ShellTriggerButton = () => { color={useThemeMode('dark', 'gray.3')} onClick={() => setIsShellOpen(true)} sx={shellTriggerButtonStyles} + ref={ref} + title="Open Jotai Devtools" > Jotai Mascot ); -}; +}); export type ExtensionProps = { // false by default diff --git a/src/DevTools/Extension/components/Shell/Shell.tsx b/src/DevTools/Extension/components/Shell/Shell.tsx index 7c3a4594..584f691b 100644 --- a/src/DevTools/Extension/components/Shell/Shell.tsx +++ b/src/DevTools/Extension/components/Shell/Shell.tsx @@ -53,7 +53,11 @@ export const Shell = ({ store }: ShellProps) => { diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx index 6bb5096f..1cece72c 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx @@ -7,10 +7,8 @@ import { AtomList } from './components/AtomList'; const panelStyles = { overflow: 'auto' }; const atomListWrapperStyles: Sx = (theme) => ({ - // Hide the overlap of this div's bg - borderBottomLeftRadius: '0.5rem', background: - theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.colors.gray[2], + theme.colorScheme === 'dark' ? theme.colors.dark[8] : theme.colors.gray[2], }); export const AtomViewer = memo(() => { diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx index a0f8ae89..10caeb1b 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx @@ -1,6 +1,5 @@ import { memo } from 'react'; import { Box, Code, Text, Title } from '@mantine/core'; -import { unlabeledAtomLabel } from '../../../../../../../../../constants'; import { AtomValueType } from '../../../../../../../../../utils/get-type-of-atom-value'; import { parseDebugLabel } from '../../../../../../../../../utils/parse-debug-label'; @@ -26,10 +25,7 @@ type AtomMetaDetailsProps = { }; export const AtomMetaDetails = memo( - ({ - debugLabel = unlabeledAtomLabel, - atomValueType, - }: AtomMetaDetailsProps): JSX.Element => { + ({ debugLabel, atomValueType }: AtomMetaDetailsProps): JSX.Element => { return ( diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx index 0cf4d9b8..91838ce1 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx @@ -48,9 +48,9 @@ const ParseAndDisplayAtomValue = memo( return ( <MemoizedValueRenderer value={ - prismLanguageType === 'text' - ? String(nextValue) - : JSON.stringify(nextValue, null, 2) + prismLanguageType === 'javascript' + ? JSON.stringify(nextValue, null, 2) + : String(nextValue) } prismLanguageType={prismLanguageType} /> diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx index 0eb7e7b3..fad24bb2 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx @@ -28,9 +28,9 @@ export const AtomParseRawValueValue = ({ ) : ( <MemoizedValueRenderer value={ - prismLanguageType === 'text' - ? String(atomValue) - : JSON.stringify(atomValue, null, 2) + prismLanguageType === 'javascript' + ? JSON.stringify(atomValue, null, 2) + : String(atomValue) } prismLanguageType={prismLanguageType} /> diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx index d1262e53..95e2dd23 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx @@ -9,14 +9,14 @@ const javaScriptLanguageTypes = ['object', 'array', 'null']; export const getPrismLanguageType = ( atomValue: AnyAtomValue, -): PrismProps['language'] | 'text' => { +): PrismProps['language'] => { const type = getTypeOfAtomValue(atomValue); if (javaScriptLanguageTypes.includes(type)) { return 'javascript'; } - return 'text'; + return 'git'; }; type MemoizedValueRendererProps = { @@ -26,10 +26,6 @@ type MemoizedValueRendererProps = { export const MemoizedValueRenderer = memo( ({ prismLanguageType, value }: MemoizedValueRendererProps): JSX.Element => { - if (prismLanguageType === 'text') { - return <Code block>{value}</Code>; - } - return ( <Prism language={prismLanguageType} mb={10} noCopy> {value} diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx index 5cf1ed62..ec612167 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx @@ -40,7 +40,7 @@ const SearchAtoms = memo(() => { <TextInput label="Search" placeholder="atom debug label" - pt={5} + pt={10} pb={10} sx={textStyles} value={userInput} diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/utils/filter-atoms-by-string.ts b/src/DevTools/Extension/components/Shell/components/AtomViewer/utils/filter-atoms-by-string.ts index 333f4dd8..9dfcec58 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/utils/filter-atoms-by-string.ts +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/utils/filter-atoms-by-string.ts @@ -1,5 +1,5 @@ import { ValuesAtomTuple } from 'src/types'; -import { unlabeledAtomLabel } from '../../../../../../constants'; +import { parseDebugLabel } from './../../../../../../utils/parse-debug-label'; export const filterAtomsByString = ( searchString: string, @@ -11,10 +11,8 @@ export const filterAtomsByString = ( } return defaultAtoms.filter((atomTuple) => { - const normalizedLabel = ( - atomTuple[0].debugLabel || unlabeledAtomLabel - ).toLocaleLowerCase(); - + const parsedDebugLabel = parseDebugLabel(atomTuple[0].debugLabel); + const normalizedLabel = parsedDebugLabel.toLocaleLowerCase(); return normalizedLabel.includes(normalizedStr); }); }; diff --git a/src/DevTools/Extension/components/Shell/styles.ts b/src/DevTools/Extension/components/Shell/styles.ts index 4f4ba99a..917c45f4 100644 --- a/src/DevTools/Extension/components/Shell/styles.ts +++ b/src/DevTools/Extension/components/Shell/styles.ts @@ -13,7 +13,7 @@ export const shellStyles: Sx = (theme) => ({ borderWidth: 1, borderStyle: 'solid', // Changing this may cause overlaps of bg in nested divs - borderRadius: '0.5rem', + borderRadius: '8px', background: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white, display: 'flex', flexDirection: 'column', diff --git a/src/stories/Demos/Async.tsx b/src/stories/Default/Demos/Async.tsx similarity index 100% rename from src/stories/Demos/Async.tsx rename to src/stories/Default/Demos/Async.tsx diff --git a/src/stories/Demos/Counter.tsx b/src/stories/Default/Demos/Counter.tsx similarity index 100% rename from src/stories/Demos/Counter.tsx rename to src/stories/Default/Demos/Counter.tsx diff --git a/src/stories/Demos/DemoApp.tsx b/src/stories/Default/Demos/DemoApp.tsx similarity index 96% rename from src/stories/Demos/DemoApp.tsx rename to src/stories/Default/Demos/DemoApp.tsx index bd3661ff..cf4d7575 100644 --- a/src/stories/Demos/DemoApp.tsx +++ b/src/stories/Default/Demos/DemoApp.tsx @@ -1,6 +1,6 @@ import { Suspense } from 'react'; import { Grid, MantineProvider, Text, Title } from '@mantine/core'; -import { DevTools, DevToolsProps } from '../../DevTools'; +import { DevTools, DevToolsProps } from '../../../DevTools'; import { Async } from './Async'; import { Counter } from './Counter'; import { DemoJotaiStoreContext, demoStore } from './demo-store'; diff --git a/src/stories/Demos/Random.tsx b/src/stories/Default/Demos/Random.tsx similarity index 100% rename from src/stories/Demos/Random.tsx rename to src/stories/Default/Demos/Random.tsx diff --git a/src/stories/Demos/Todos.tsx b/src/stories/Default/Demos/Todos.tsx similarity index 97% rename from src/stories/Demos/Todos.tsx rename to src/stories/Default/Demos/Todos.tsx index 15b52f6f..bb2b186f 100644 --- a/src/stories/Demos/Todos.tsx +++ b/src/stories/Default/Demos/Todos.tsx @@ -117,8 +117,6 @@ const Filtered = (props: FilteredType) => { }; const TodoList = () => { - // Use `useSetAtom` to avoid re-render - // const [, setTodos] = useAtom(todosAtom) const setTodos = useSetAtom(todosAtom, demoStoreOptions); const remove: RemoveFn = (todo) => setTodos((prev) => prev.filter((item) => item !== todo)); @@ -134,7 +132,7 @@ const TodoList = () => { return ( <form onSubmit={add}> <Filter /> - <TextInput placeholder="Type your todo" name="inputTitle" /> + <TextInput placeholder="Type your todo" name="inputTitle" mt="sm" /> <List listStyleType="none"> <Filtered remove={remove} /> </List> diff --git a/src/stories/Demos/demo-store.ts b/src/stories/Default/Demos/demo-store.ts similarity index 100% rename from src/stories/Demos/demo-store.ts rename to src/stories/Default/Demos/demo-store.ts diff --git a/src/stories/Default/DevTools.stories.tsx b/src/stories/Default/DevTools.stories.tsx new file mode 100644 index 00000000..0497d7f8 --- /dev/null +++ b/src/stories/Default/DevTools.stories.tsx @@ -0,0 +1,69 @@ +import { Meta, StoryObj } from '@storybook/react'; +import { DevTools, DevToolsProps } from '../../DevTools'; +import { DemoApp } from './Demos/DemoApp'; + +export default { + component: DevTools, + title: 'Devtools', +} as Meta<typeof DevTools>; + +type CustomStorybookProps = DevToolsProps & { + 'options.atomValueParser': 'raw' | 'deep-nested'; +}; + +type Story = StoryObj<CustomStorybookProps>; + +export const Default: Story = { + render: ({ ...args }) => { + const nextOptions = { + ...args.options, + atomValueParser: args['options.atomValueParser'], + }; + const props = { + ...args, + options: nextOptions, + }; + return <DemoApp {...props} />; + }, + args: { + isInitialOpen: true, + 'options.atomValueParser': 'raw', + }, + argTypes: { + store: { + control: { + type: false, + }, + }, + options: { + control: { + type: false, + }, + }, + 'options.atomValueParser': { + label: 'Atom Value Parser', + options: ['raw', 'deep-nested'], + control: { + type: 'radio', + }, + }, + }, +}; + +// const Template: StoryFn<typeof DevTools> = (args) => { +// const { atomValueParser, ...rest } = args; +// return <DemoApp {...args} />; +// }; + +// export const Default = Template.bind({}); + +// Default.args = { +// isInitialOpen: true, +// options: { +// atomValueParser: 'raw', +// }, +// }; + +// Default.parameters = { +// controls: { hideNoControlsWarning: true }, +// }; diff --git a/src/stories/DevTools.stories.tsx b/src/stories/DevTools.stories.tsx deleted file mode 100644 index 1a664a58..00000000 --- a/src/stories/DevTools.stories.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import { Meta, Story } from '@storybook/react'; -import { DevTools, DevToolsProps } from '../DevTools'; -import { DemoApp } from './Demos/DemoApp'; - -export default { - component: DevTools, - title: 'Devtools', - argTypes: { - store: { - control: { - type: false, - }, - }, - }, -} as Meta; - -const Template: Story<DevToolsProps> = (args) => <DemoApp {...args} />; - -export const Default = Template.bind({}); - -Default.args = { - isInitialOpen: true, -}; diff --git a/src/stories/ProviderLess/Counter.tsx b/src/stories/ProviderLess/Counter.tsx new file mode 100644 index 00000000..28abbcec --- /dev/null +++ b/src/stories/ProviderLess/Counter.tsx @@ -0,0 +1,15 @@ +import { atom, useAtom } from 'jotai'; + +const countAtom = atom(0); +countAtom.debugLabel = 'countAtom'; + +export const Counter = () => { + const [count, setCount] = useAtom(countAtom); + + return ( + <div> + {count}  + <button onClick={() => setCount((c) => c + 1)}>Increment</button> + </div> + ); +}; diff --git a/src/stories/ProviderLess/DevToolsProviderLess.stories.tsx b/src/stories/ProviderLess/DevToolsProviderLess.stories.tsx new file mode 100644 index 00000000..849b37fd --- /dev/null +++ b/src/stories/ProviderLess/DevToolsProviderLess.stories.tsx @@ -0,0 +1,33 @@ +import { Meta, StoryFn } from '@storybook/react'; +import { DevTools, DevToolsProps } from '../../DevTools'; +import { Counter } from './Counter'; + +export default { + component: DevTools, + title: 'DevtoolsProviderLess', + argTypes: { + store: { + control: { + type: false, + }, + }, + options: { + control: { + type: false, + }, + }, + }, +} as Meta; + +const Template: StoryFn<DevToolsProps> = (args) => ( + <> + <DevTools {...args} /> + <Counter /> + </> +); + +export const Default = Template.bind({}); + +Default.args = { + isInitialOpen: true, +}; diff --git a/yarn.lock b/yarn.lock index 149c64b1..e4dff37f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2190,6 +2190,25 @@ dependencies: "@sinonjs/commons" "^1.7.0" +"@storybook/addon-a11y@^7.0.0-beta.43": + version "7.0.0-beta.43" + resolved "https://registry.yarnpkg.com/@storybook/addon-a11y/-/addon-a11y-7.0.0-beta.43.tgz#7dc90699881f2e092da031e8628b104ab0706898" + integrity sha512-+xb5mMOMPDaSKsrfISGkZGe/zsYtctOKq9wam+hGhxFpTu3qcmgG0i5Ysz67ujuCtpa18sGrgTkilDs33SC5RA== + dependencies: + "@storybook/addon-highlight" "7.0.0-beta.43" + "@storybook/channels" "7.0.0-beta.43" + "@storybook/client-logger" "7.0.0-beta.43" + "@storybook/components" "7.0.0-beta.43" + "@storybook/core-events" "7.0.0-beta.43" + "@storybook/global" "^5.0.0" + "@storybook/manager-api" "7.0.0-beta.43" + "@storybook/preview-api" "7.0.0-beta.43" + "@storybook/theming" "7.0.0-beta.43" + "@storybook/types" "7.0.0-beta.43" + axe-core "^4.2.0" + lodash "^4.17.21" + react-resize-detector "^7.1.2" + "@storybook/addon-actions@7.0.0-beta.43", "@storybook/addon-actions@^7.0.0-beta.43": version "7.0.0-beta.43" resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-7.0.0-beta.43.tgz#cbbd1f11a0e1a553f59948a990d9f36ed79be7ea" @@ -4195,6 +4214,11 @@ available-typed-arrays@^1.0.5: resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== +axe-core@^4.2.0: + version "4.6.3" + resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.6.3.tgz#fc0db6fdb65cc7a80ccf85286d91d64ababa3ece" + integrity sha512-/BQzOX780JhsxDnPpH4ZiyrJAzcd8AfzFPkv+89veFSr1rcMjuq2JDCwypKaPeB6ljHp9KjXhPpjgCvQlWYuqg== + babel-core@^7.0.0-bridge.0: version "7.0.0-bridge.0" resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" @@ -10046,6 +10070,13 @@ react-resizable-panels@^0.0.35: resolved "https://registry.yarnpkg.com/react-resizable-panels/-/react-resizable-panels-0.0.35.tgz#ac8c8918c957bbd5c37b4b93ca50a40b5c012e6a" integrity sha512-8HFm5w4AG13aUN2+JWM/3unYP+QVmW0xs9iWM7Sa+HvIGCQhdvLEEx3lFmUyEiWPYmsBnPZaq6o/4pAi2dt4yQ== +react-resize-detector@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/react-resize-detector/-/react-resize-detector-7.1.2.tgz#8ef975dd8c3d56f9a5160ac382ef7136dcd2d86c" + integrity sha512-zXnPJ2m8+6oq9Nn8zsep/orts9vQv3elrpA+R8XTcW7DVVUJ9vwDwMXaBtykAYjMnkCIaOoK9vObyR7ZgFNlOw== + dependencies: + lodash "^4.17.21" + react-textarea-autosize@8.3.4: version "8.3.4" resolved "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-8.3.4.tgz#270a343de7ad350534141b02c9cb78903e553524" From 025a0c618548c64359bcdf18bf25c2a60f904fbb Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Mon, 6 Feb 2023 17:42:23 -0500 Subject: [PATCH 10/45] refactor: ship base64 logo + doc update --- README.md | 2 +- src/DevTools/Extension/Extension.tsx | 2 +- src/DevTools/Extension/assets/jotai-mascot.png | Bin 36713 -> 0 bytes src/DevTools/Extension/assets/logo.ts | 3 +++ 4 files changed, 5 insertions(+), 2 deletions(-) delete mode 100644 src/DevTools/Extension/assets/jotai-mascot.png create mode 100644 src/DevTools/Extension/assets/logo.ts diff --git a/README.md b/README.md index a49fb669..2d70b429 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ Use Jotai babel plugins for optimal experience. Full guide is available on Eg. -```json +```ts { "plugins": [ // Enables hot reload for atoms diff --git a/src/DevTools/Extension/Extension.tsx b/src/DevTools/Extension/Extension.tsx index 8cad951d..d4fa7a65 100644 --- a/src/DevTools/Extension/Extension.tsx +++ b/src/DevTools/Extension/Extension.tsx @@ -8,7 +8,7 @@ import { devtoolsJotaiStoreOptions, useDevtoolsJotaiStoreOptions, } from '../internal-jotai-store'; -import logo from './assets/jotai-mascot.png'; +import { logo } from './assets/logo'; import { Shell } from './components/Shell'; const shellTriggerButtonStyles: Sx = () => ({ diff --git a/src/DevTools/Extension/assets/jotai-mascot.png b/src/DevTools/Extension/assets/jotai-mascot.png deleted file mode 100644 index 86c3dd48a15a0bbf8e48e25107652c72b9c75143..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36713 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%0DVs*Un@c#w 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 AsQ>@~ diff --git a/src/DevTools/Extension/assets/logo.ts b/src/DevTools/Extension/assets/logo.ts new file mode 100644 index 00000000..517a6bab --- /dev/null +++ b/src/DevTools/Extension/assets/logo.ts @@ -0,0 +1,3 @@ +export const logo = ` +data:image/png;base64,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M844gwULFpjzdnR00N3djcfjMS5oTU2NqYZRukJNn/RMI5EIRUVFrFq1ypSKpaen8/Wvf520tDReeOEFqqurNxLL8TmD4vuAK7Kzszn22GPxer20tLSQnp5Oc3Mzzz//vI4bAqxjD5FdXkWxi+RkoARieaqCggKAuMkuEMNuqtTZ2clNN93E2LFjGTNmDMcee+xnunhtbS3Jycnk5eWRlJSEz+cz59cYbADFqXhOa2izdwDT9cyOJVNSUmhoaDAKuGHDhm0WE5eXl1NTU8OoUaM488wzqaysZMiQISxatAiv10tycjLd3d2mC4AaTdkcWwEyIj6I8B0Ohxk4cCCFhYXU1taaDgM5OTmMGTOG6urqUuCbwL8cw7oSaGhubr7t+eef58QTTyQjIwO32604EOAJ9iAFhK+uO/pt/aFuYHZi2SnihHZ1dTFy5Ei+//3vc+yxxxpULhGKaUtbWxt/+MMf2G+//XC5XBQVFZGfn09KSgpnnHEGr732mgFLEkl/7qZ+25/buUUpsgClM888E4AXXnjhU6v5u7u7+dOf/mSuc+ONNxpgRBYtUdyZyFXWNt5CWUOhEDk5OQwbNswcGwgECIfDDBo0SJb1B/0M7YfAI21tbbz++usGqNmwYYM+/3/bvLHdUL6KSpjH1laGEydOjMtZQe8kUj9QQd9SNm3+2dHRYRgm/SkvwK9+9SvS09P57ne/y8cff8whhxzCVVddxaWXXsrYsWN56qmnmDFjBjNmzKCmpgaPx9OHH9qfkjvbVaig2Om2ulwunn76ad58800uueQSk47pTz766CNGjRrFlVdeafqGPvHEEzz//POMGjXKVE/Y1fVer9fEfbbii5dq1yC6XC7S0tIYPry311NDQ4N5nmPHjoVYmuLifoZ4AfBMfX097777LpWVlUoLrSZWHLxHyVfRHf2m/rj66quB3ljLdkMhpgSaPCI2a3JrkjktlC1HHnkkb775JqmpqfzrX//i1FNP7XNMbW0tP/vZz7j33nsZMmQIa9asobi42EzWRKioxIl69sclBUyvnL/85S/bfDiLFi1i6tSpCT/705/+xLHHHktXV5chLairmhYp9U1taWkx105JSenD8AmFQowcOTLuObS3txONRhk+fLi2W/sT8A8S7+h0GvD6smXLjly2bJnee3qbN7ebylfREl4MsWpvoaISJyIJmCoA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 +`; From 57424a0a4315eb390d4e911b0712b8e19de5e180 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Mon, 6 Feb 2023 21:31:19 -0500 Subject: [PATCH 11/45] refactor: misc UI fixes --- src/DevTools/DevTools.tsx | 22 +++++---- .../Extension/components/Shell/Shell.tsx | 1 + .../Shell/components/PanelResizeHandle.tsx | 45 ++++++++++++++----- 3 files changed, 48 insertions(+), 20 deletions(-) diff --git a/src/DevTools/DevTools.tsx b/src/DevTools/DevTools.tsx index ad010348..3a57d5c3 100644 --- a/src/DevTools/DevTools.tsx +++ b/src/DevTools/DevTools.tsx @@ -25,15 +25,6 @@ import { const theme: MantineThemeOverride = { primaryColor: 'dark', activeStyles: { transform: 'scale(1)' }, - globalStyles: (theme) => ({ - '.jotai-devtools-shell': { - color: - theme.colorScheme === 'dark' - ? theme.colors.dark[0] - : theme.colors.dark[9], - lineHeight: theme.lineHeight, - }, - }), fontFamily: 'Inter, JetBrains Mono, -apple-system, BlinkMacSystemFont, Segoe, sans-serif', fontFamilyMonospace: @@ -42,6 +33,19 @@ const theme: MantineThemeOverride = { fontFamily: 'Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji', }, + globalStyles: (theme) => ({ + '.jotai-devtools-shell': { + '*, *::before, *::after': { + boxSizing: 'border-box', + }, + ...theme.fn.fontStyles(), + color: theme.colorScheme === 'dark' ? theme.white : theme.black, + lineHeight: theme.lineHeight, + WebkitFontSmoothing: 'antialiased', + MozOsxFontSmoothing: 'grayscale', + fontSize: theme.fontSizes.md, + }, + }), }; export type DevToolsProps = ExtensionProps & { diff --git a/src/DevTools/Extension/components/Shell/Shell.tsx b/src/DevTools/Extension/components/Shell/Shell.tsx index 584f691b..cef90279 100644 --- a/src/DevTools/Extension/components/Shell/Shell.tsx +++ b/src/DevTools/Extension/components/Shell/Shell.tsx @@ -57,6 +57,7 @@ export const Shell = ({ store }: ShellProps) => { overflow: 'hidden', // Hide the overlap of this div's bg borderBottomLeftRadius: '7px', + borderBottomRightRadius: '7px', }} > <AtomViewer /> diff --git a/src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx b/src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx index 1f303b5e..544445ca 100644 --- a/src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx +++ b/src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx @@ -1,18 +1,41 @@ -import { Box } from '@mantine/core'; +import { Box, Sx } from '@mantine/core'; import { PanelResizeHandle as ReactPanelResizeHandle } from 'react-resizable-panels'; +import { useThemeMode } from '../../../../hooks/useThemeMode'; + +const reactPanelResizeHandleStyles = { + display: 'flex', + alignItems: 'center', + '._jotai-devtools-internal-panel-resize-handle': { + transition: 'max-height, min-height, height, 0.2s ease-out', + }, + '[data-resize-handle-active] &, &:hover': { + '._jotai-devtools-internal-panel-resize-handle': { + height: '90%', + minHeight: '90%', + maxHeight: '90%', + }, + }, +}; +const innerContainerStyles: Sx = { + borderRadius: '2rem', + verticalAlign: 'middle', +}; export const PanelResizeHandle = () => { return ( - <ReactPanelResizeHandle style={{ display: 'flex', alignItems: 'center' }}> - <Box - mah={100} - h="20%" - w={5} - m={5} - bg="gray.3" - mih={30} - sx={{ borderRadius: '2rem', verticalAlign: 'middle' }} - /> + <ReactPanelResizeHandle> + <Box p="5" h="100%" sx={reactPanelResizeHandleStyles}> + <Box + className="_jotai-devtools-internal-panel-resize-handle" + mah={100} + mih={50} + h="20%" + w={5} + m={5} + bg={useThemeMode('gray.3', 'gray.7')} + sx={innerContainerStyles} + /> + </Box> </ReactPanelResizeHandle> ); }; From bbc9327ddf02a586f3bc469e7c3a93307bf9a86d Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Mon, 6 Feb 2023 21:43:55 -0500 Subject: [PATCH 12/45] refactor: remove unused import --- .../AtomDetail/components/components/MemoizedValueRenderer.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx index 95e2dd23..81c72228 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx @@ -1,5 +1,4 @@ import { memo } from 'react'; -import { Code } from '@mantine/core'; import { Prism, PrismProps } from '@mantine/prism'; import { AnyAtomValue } from 'src/types'; import { getTypeOfAtomValue } from '../../../../../../../../../utils'; From bce9ccd252f048e6fec4cdd8ffbf9ab0c5f1ec97 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Mon, 6 Feb 2023 21:47:34 -0500 Subject: [PATCH 13/45] chore: release v0.3.0-next.0 --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1c761de6..b447399b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +# [0.3.0-next.0](https://github.com/jotai-labs/jotai-devtools/compare/v0.2.0...v0.3.0-next.0) (2023-02-07) + +### Features + +- **ui-devtools:** initial commit + ([7c38133](https://github.com/jotai-labs/jotai-devtools/commit/7c38133a360c0c97db6406becdc1bf939e1001e7)) + # [0.2.0](https://github.com/jotai-labs/jotai-devtools/compare/v0.2.0-next.1...v0.2.0) (2023-02-01) # [0.2.0-next.1](https://github.com/jotai-labs/jotai-devtools/compare/v0.2.0-next.0...v0.2.0-next.1) (2023-01-17) diff --git a/package.json b/package.json index 83aead96..2dc5db8d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jotai-devtools", - "version": "0.2.0", + "version": "0.3.0-next.0", "description": "A powerful toolkit to enhance your development experience with Jotai", "author": { "name": "Arjun Vegda", From e484a2df5fc1ba36eef63a9c94a11145b1a0f968 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Tue, 7 Feb 2023 17:15:51 -0500 Subject: [PATCH 14/45] docs: add next.js setup guide --- README.md | 17 +++++++++++++++++ src/DevTools/DevTools.tsx | 8 +------- src/DevTools/fonts.ts | 7 +++++++ 3 files changed, 25 insertions(+), 7 deletions(-) create mode 100644 src/DevTools/fonts.ts diff --git a/README.md b/README.md index 2d70b429..b6ae570e 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,7 @@ - Built-in Dark mode πŸŒ— support - βœ… Supports custom `store` - βœ… Works with provider-less mode +- βœ… Works with Next.js ## Preview @@ -51,6 +52,22 @@ Eg. } ``` +### Next JS setup + +Enable `transpilePackages` for CSS to be imported correctly. + +```ts +// next.config.ts + +const nextConfig = { + // Learn more here - https://nextjs.org/docs/advanced-features/compiler#module-transpilation + // Required for font css to be imported correctly πŸ‘‡ + transpilePackages: ['jotai-devtools'], +}; + +module.exports = nextConfig; +``` + ### Provider-less ```tsx diff --git a/src/DevTools/DevTools.tsx b/src/DevTools/DevTools.tsx index 3a57d5c3..b9bf0ee2 100644 --- a/src/DevTools/DevTools.tsx +++ b/src/DevTools/DevTools.tsx @@ -10,17 +10,11 @@ import { useSetDevToolsOptions, } from './atoms/devtools-options'; import { Extension, ExtensionProps } from './Extension'; -import '@fontsource/inter/latin-400.css'; -import '@fontsource/inter/latin-500.css'; -import '@fontsource/inter/latin-600.css'; -import '@fontsource/inter/latin-700.css'; -import '@fontsource/jetbrains-mono/latin-400.css'; -import '@fontsource/jetbrains-mono/latin-600.css'; -import '@fontsource/jetbrains-mono/latin-700.css'; import { InternalDevToolsContext, internalJotaiStore, } from './internal-jotai-store'; +import './fonts'; const theme: MantineThemeOverride = { primaryColor: 'dark', diff --git a/src/DevTools/fonts.ts b/src/DevTools/fonts.ts new file mode 100644 index 00000000..1f900e8c --- /dev/null +++ b/src/DevTools/fonts.ts @@ -0,0 +1,7 @@ +import '@fontsource/inter/latin-400.css'; +import '@fontsource/inter/latin-500.css'; +import '@fontsource/inter/latin-600.css'; +import '@fontsource/inter/latin-700.css'; +import '@fontsource/jetbrains-mono/latin-400.css'; +import '@fontsource/jetbrains-mono/latin-600.css'; +import '@fontsource/jetbrains-mono/latin-700.css'; From 4fac2e0392447f9f1a48967bd9cbef515b1373ee Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Tue, 7 Feb 2023 17:25:15 -0500 Subject: [PATCH 15/45] style: rename test folder --- __tests__/{devtools => utils}/useAtomDevtools.test.tsx | 0 __tests__/{devtools => utils}/useAtomsDevtools.test.tsx | 0 __tests__/{devtools => utils}/useAtomsSnapshot.test.tsx | 0 __tests__/{devtools => utils}/useGoToAtomsSnapshot.test.tsx | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename __tests__/{devtools => utils}/useAtomDevtools.test.tsx (100%) rename __tests__/{devtools => utils}/useAtomsDevtools.test.tsx (100%) rename __tests__/{devtools => utils}/useAtomsSnapshot.test.tsx (100%) rename __tests__/{devtools => utils}/useGoToAtomsSnapshot.test.tsx (100%) diff --git a/__tests__/devtools/useAtomDevtools.test.tsx b/__tests__/utils/useAtomDevtools.test.tsx similarity index 100% rename from __tests__/devtools/useAtomDevtools.test.tsx rename to __tests__/utils/useAtomDevtools.test.tsx diff --git a/__tests__/devtools/useAtomsDevtools.test.tsx b/__tests__/utils/useAtomsDevtools.test.tsx similarity index 100% rename from __tests__/devtools/useAtomsDevtools.test.tsx rename to __tests__/utils/useAtomsDevtools.test.tsx diff --git a/__tests__/devtools/useAtomsSnapshot.test.tsx b/__tests__/utils/useAtomsSnapshot.test.tsx similarity index 100% rename from __tests__/devtools/useAtomsSnapshot.test.tsx rename to __tests__/utils/useAtomsSnapshot.test.tsx diff --git a/__tests__/devtools/useGoToAtomsSnapshot.test.tsx b/__tests__/utils/useGoToAtomsSnapshot.test.tsx similarity index 100% rename from __tests__/devtools/useGoToAtomsSnapshot.test.tsx rename to __tests__/utils/useGoToAtomsSnapshot.test.tsx From 5348337530177f8db80e53d0d35e339cd78ad84c Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Wed, 8 Feb 2023 21:31:12 -0500 Subject: [PATCH 16/45] feat: make raw and parse value copyable --- .../AtomDetail/components/components/MemoizedValueRenderer.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx index 81c72228..94229ea4 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx @@ -26,7 +26,7 @@ type MemoizedValueRendererProps = { export const MemoizedValueRenderer = memo( ({ prismLanguageType, value }: MemoizedValueRendererProps): JSX.Element => { return ( - <Prism language={prismLanguageType} mb={10} noCopy> + <Prism language={prismLanguageType} mb={10} copyLabel="Copy value"> {value} </Prism> ); From 4924128d36aa16e684156e72d99d9226c95e41b1 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Wed, 8 Feb 2023 21:32:11 -0500 Subject: [PATCH 17/45] refactor: mark sideEffects to true to bundle in fonts --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 2dc5db8d..2d9d50f6 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "name": "Arjun Vegda", "url": "https://arjunvegda.com" }, - "sideEffects": false, + "sideEffects": true, "source": "./src/index.ts", "exports": { "./package.json": "./package.json", From a9bcd63c4a4b1d1915a00eb769485fa86ee9d988 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Wed, 8 Feb 2023 21:38:20 -0500 Subject: [PATCH 18/45] refactor: improve AtomDetail components hierarchy --- .../components/{components => }/AtomDependentsList.tsx | 4 ++-- .../components/{components => }/AtomMetaDetails.tsx | 4 ++-- .../{components => }/AtomParseDeepNestedValue.tsx | 6 +++--- .../components/{components => }/AtomParseRawValue.tsx | 2 +- .../AtomDetail/components/DisplayAtomDetails.tsx | 8 ++++---- .../components/{components => }/MemoizedValueRenderer.tsx | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) rename src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/{components => }/AtomDependentsList.tsx (86%) rename src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/{components => }/AtomMetaDetails.tsx (85%) rename src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/{components => }/AtomParseDeepNestedValue.tsx (89%) rename src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/{components => }/AtomParseRawValue.tsx (92%) rename src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/{components => }/MemoizedValueRenderer.tsx (92%) diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomDependentsList.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomDependentsList.tsx similarity index 86% rename from src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomDependentsList.tsx rename to src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomDependentsList.tsx index c43b66fd..dee2e4d0 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomDependentsList.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomDependentsList.tsx @@ -1,8 +1,8 @@ import { useMemo } from 'react'; import { Box, Code, List, Text } from '@mantine/core'; import { AnyAtom } from 'src/types'; -import { useAtomsSnapshots } from '../../../../../../../../../hooks/useAtomsSnapshots'; -import { parseDebugLabel } from '../../../../../../../../../utils/parse-debug-label'; +import { useAtomsSnapshots } from '../../../../../../../../hooks/useAtomsSnapshots'; +import { parseDebugLabel } from '../../../../../../../../utils/parse-debug-label'; type AtomDependentsListProps = { atom: AnyAtom; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomMetaDetails.tsx similarity index 85% rename from src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx rename to src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomMetaDetails.tsx index 10caeb1b..72d96d1a 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomMetaDetails.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomMetaDetails.tsx @@ -1,7 +1,7 @@ import { memo } from 'react'; import { Box, Code, Text, Title } from '@mantine/core'; -import { AtomValueType } from '../../../../../../../../../utils/get-type-of-atom-value'; -import { parseDebugLabel } from '../../../../../../../../../utils/parse-debug-label'; +import { AtomValueType } from '../../../../../../../../utils/get-type-of-atom-value'; +import { parseDebugLabel } from '../../../../../../../../utils/parse-debug-label'; type AtomDetailItemProps = { label: string; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseDeepNestedValue.tsx similarity index 89% rename from src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx rename to src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseDeepNestedValue.tsx index 91838ce1..16ee95a6 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseDeepNestedValue.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseDeepNestedValue.tsx @@ -2,9 +2,9 @@ import { memo, useEffect, useState } from 'react'; import { Box, Text } from '@mantine/core'; import { useAtomValue } from 'jotai/react'; import { AnyAtom } from 'src/types'; -import { useUserStore } from '../../../../../../../../../hooks/useUserStore'; -import { AtomValueType } from '../../../../../../../../../utils/get-type-of-atom-value'; -import { deepParseAtomValue } from '../../../../../../../../../utils/parse-atom-value'; +import { useUserStore } from '../../../../../../../../hooks/useUserStore'; +import { AtomValueType } from '../../../../../../../../utils/get-type-of-atom-value'; +import { deepParseAtomValue } from '../../../../../../../../utils/parse-atom-value'; import { MemoizedValueRenderer, getPrismLanguageType, diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseRawValue.tsx similarity index 92% rename from src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx rename to src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseRawValue.tsx index fad24bb2..d5524da2 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/AtomParseRawValue.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseRawValue.tsx @@ -1,6 +1,6 @@ import { Box, Text } from '@mantine/core'; import { AnyAtomValue } from 'src/types'; -import { AtomValueType } from '../../../../../../../../../utils/get-type-of-atom-value'; +import { AtomValueType } from '../../../../../../../../utils/get-type-of-atom-value'; import { MemoizedValueRenderer, getPrismLanguageType, diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx index 894df9de..88dd0655 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx @@ -4,10 +4,10 @@ import { AnyAtom } from 'src/types'; import { useDevToolsOptionsValue } from '../../../../../../../../atoms/devtools-options'; import { useUserStoreOptions } from '../../../../../../../../hooks/useUserStore'; import { getTypeOfAtomValue } from '../../../../../../../../utils/get-type-of-atom-value'; -import { AtomDependentsList } from './components/AtomDependentsList'; -import { AtomMetaDetails } from './components/AtomMetaDetails'; -import { AtomParseDeepNestedValue } from './components/AtomParseDeepNestedValue'; -import { AtomParseRawValueValue } from './components/AtomParseRawValue'; +import { AtomDependentsList } from './AtomDependentsList'; +import { AtomMetaDetails } from './AtomMetaDetails'; +import { AtomParseDeepNestedValue } from './AtomParseDeepNestedValue'; +import { AtomParseRawValueValue } from './AtomParseRawValue'; type DisplayAtomDetailsProps = { atom: AnyAtom; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx similarity index 92% rename from src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx rename to src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx index 94229ea4..896836f8 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/components/MemoizedValueRenderer.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx @@ -1,7 +1,7 @@ import { memo } from 'react'; import { Prism, PrismProps } from '@mantine/prism'; import { AnyAtomValue } from 'src/types'; -import { getTypeOfAtomValue } from '../../../../../../../../../utils'; +import { getTypeOfAtomValue } from '../../../../../../../../utils'; // List of types to render in JavaScript syntax const javaScriptLanguageTypes = ['object', 'array', 'null']; From 7d9554f581cbf5fd6a529823d46ead7322207889 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Wed, 8 Feb 2023 23:10:33 -0500 Subject: [PATCH 19/45] refactor: improve value stringifier --- package.json | 3 ++- .../components/AtomParseDeepNestedValue.tsx | 13 ++++++------- .../components/AtomParseRawValue.tsx | 11 +++++------ .../components/MemoizedValueRenderer.tsx | 2 +- src/DevTools/utils/index.ts | 1 + src/DevTools/utils/stringify-atom-value.ts | 12 ++++++++++++ src/stories/Default/Demos/Random.tsx | 9 +++++++++ src/stories/Default/DevTools.stories.tsx | 18 ------------------ yarn.lock | 19 +++++++++++++++++++ 9 files changed, 55 insertions(+), 33 deletions(-) create mode 100644 src/DevTools/utils/stringify-atom-value.ts diff --git a/package.json b/package.json index 2d9d50f6..5f6070be 100644 --- a/package.json +++ b/package.json @@ -152,6 +152,7 @@ "@mantine/prism": "^5.10.3", "@redux-devtools/extension": "^3.2.3", "@tabler/icons": "^1.119.0", - "react-resizable-panels": "^0.0.35" + "react-resizable-panels": "^0.0.35", + "superjson": "^1.12.2" } } diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseDeepNestedValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseDeepNestedValue.tsx index 16ee95a6..fa3b9b5e 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseDeepNestedValue.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseDeepNestedValue.tsx @@ -3,8 +3,11 @@ import { Box, Text } from '@mantine/core'; import { useAtomValue } from 'jotai/react'; import { AnyAtom } from 'src/types'; import { useUserStore } from '../../../../../../../../hooks/useUserStore'; -import { AtomValueType } from '../../../../../../../../utils/get-type-of-atom-value'; -import { deepParseAtomValue } from '../../../../../../../../utils/parse-atom-value'; +import { + AtomValueType, + deepParseAtomValue, + stringifyAtomValue, +} from '../../../../../../../../utils'; import { MemoizedValueRenderer, getPrismLanguageType, @@ -47,11 +50,7 @@ const ParseAndDisplayAtomValue = memo( return ( <MemoizedValueRenderer - value={ - prismLanguageType === 'javascript' - ? JSON.stringify(nextValue, null, 2) - : String(nextValue) - } + value={stringifyAtomValue(nextValue)} prismLanguageType={prismLanguageType} /> ); diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseRawValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseRawValue.tsx index d5524da2..54d9c140 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseRawValue.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseRawValue.tsx @@ -1,6 +1,9 @@ import { Box, Text } from '@mantine/core'; import { AnyAtomValue } from 'src/types'; -import { AtomValueType } from '../../../../../../../../utils/get-type-of-atom-value'; +import { + AtomValueType, + stringifyAtomValue, +} from '../../../../../../../../utils/'; import { MemoizedValueRenderer, getPrismLanguageType, @@ -27,11 +30,7 @@ export const AtomParseRawValueValue = ({ <Text>No Preview available</Text> ) : ( <MemoizedValueRenderer - value={ - prismLanguageType === 'javascript' - ? JSON.stringify(atomValue, null, 2) - : String(atomValue) - } + value={stringifyAtomValue(atomValue)} prismLanguageType={prismLanguageType} /> )} diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx index 896836f8..52f8ee74 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx @@ -15,7 +15,7 @@ export const getPrismLanguageType = ( return 'javascript'; } - return 'git'; + return 'markdown'; }; type MemoizedValueRendererProps = { diff --git a/src/DevTools/utils/index.ts b/src/DevTools/utils/index.ts index c7678ec9..1d14fd02 100644 --- a/src/DevTools/utils/index.ts +++ b/src/DevTools/utils/index.ts @@ -1,3 +1,4 @@ export * from './get-type-of-atom-value'; export * from './parse-atom-value'; export * from './parse-debug-label'; +export * from './stringify-atom-value'; diff --git a/src/DevTools/utils/stringify-atom-value.ts b/src/DevTools/utils/stringify-atom-value.ts new file mode 100644 index 00000000..98d05104 --- /dev/null +++ b/src/DevTools/utils/stringify-atom-value.ts @@ -0,0 +1,12 @@ +import { serialize } from 'superjson'; +import { AnyAtomValue } from 'src/types'; +import { getTypeOfAtomValue } from './get-type-of-atom-value'; + +export const stringifyAtomValue = (atomValue: AnyAtomValue): string => { + const type = getTypeOfAtomValue(atomValue); + if (type === 'bigint') { + return String(atomValue); + } + const { json } = serialize(atomValue); + return JSON.stringify(json, null, 2); +}; diff --git a/src/stories/Default/Demos/Random.tsx b/src/stories/Default/Demos/Random.tsx index d88e0f7a..a4c49cff 100644 --- a/src/stories/Default/Demos/Random.tsx +++ b/src/stories/Default/Demos/Random.tsx @@ -7,6 +7,13 @@ import { demoStoreOptions } from './demo-store'; const countAtom = atom(1); countAtom.debugLabel = 'countAtom'; +const textAtom = atom('hello'); +textAtom.debugLabel = 'textAtom'; + +// Try out a really long big int - 2n ** 999n +const bigintAtom = atom(BigInt(Number.MAX_SAFE_INTEGER)); +bigintAtom.debugLabel = 'bigintAtom'; + const nestedObjectAtom = atom((get) => { return { nestedObject: { @@ -29,6 +36,8 @@ export const Random = () => { // We're not displaying these values on the UI // eslint-disable-next-line @typescript-eslint/no-unused-vars const nestedObject = useAtomValue(nestedObjectAtom, demoStoreOptions); + const text = useAtomValue(textAtom, demoStoreOptions); + const bigint = useAtomValue(bigintAtom, demoStoreOptions); // const circular = useAtomValue(circularAtom, demoStoreOptions); // console.log(circular); // eslint-disable-next-line @typescript-eslint/no-unused-vars diff --git a/src/stories/Default/DevTools.stories.tsx b/src/stories/Default/DevTools.stories.tsx index 0497d7f8..a560db8b 100644 --- a/src/stories/Default/DevTools.stories.tsx +++ b/src/stories/Default/DevTools.stories.tsx @@ -49,21 +49,3 @@ export const Default: Story = { }, }, }; - -// const Template: StoryFn<typeof DevTools> = (args) => { -// const { atomValueParser, ...rest } = args; -// return <DemoApp {...args} />; -// }; - -// export const Default = Template.bind({}); - -// Default.args = { -// isInitialOpen: true, -// options: { -// atomValueParser: 'raw', -// }, -// }; - -// Default.parameters = { -// controls: { hideNoControlsWarning: true }, -// }; diff --git a/yarn.lock b/yarn.lock index e4dff37f..bc41a086 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5180,6 +5180,13 @@ cookie@0.5.0: resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== +copy-anything@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/copy-anything/-/copy-anything-3.0.3.tgz#206767156f08da0e02efd392f71abcdf79643559" + integrity sha512-fpW2W/BqEzqPp29QS+MwwfisHCQZtiduTe/m8idFo0xbti9fIZ2WVhAsCv4ggFVH3AgCkVdpoOCtQC6gBrdhjw== + dependencies: + is-what "^4.1.8" + core-js-compat@^3.25.1: version "3.27.2" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.27.2.tgz#607c50ad6db8fd8326af0b2883ebb987be3786da" @@ -7782,6 +7789,11 @@ is-weakset@^2.0.1: call-bind "^1.0.2" get-intrinsic "^1.1.1" +is-what@^4.1.8: + version "4.1.8" + resolved "https://registry.yarnpkg.com/is-what/-/is-what-4.1.8.tgz#0e2a8807fda30980ddb2571c79db3d209b14cbe4" + integrity sha512-yq8gMao5upkPoGEU9LsB2P+K3Kt8Q3fQFCGyNCWOAnJAMzEXVV9drYb0TXr42TTliLLhKIBvulgAXgtLLnwzGA== + is-wsl@^2.1.1, is-wsl@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" @@ -11083,6 +11095,13 @@ sucrase@^3.20.3: pirates "^4.0.1" ts-interface-checker "^0.1.9" +superjson@^1.12.2: + version "1.12.2" + resolved "https://registry.yarnpkg.com/superjson/-/superjson-1.12.2.tgz#072471f1e6add2d95a38b77fef8c7a199d82103a" + integrity sha512-ugvUo9/WmvWOjstornQhsN/sR9mnGtWGYeTxFuqLb4AiT4QdUavjGFRALCPKWWnAiUJ4HTpytj5e0t5HoMRkXg== + dependencies: + copy-anything "^3.0.2" + supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" From 3c443787ac44d8a116bb97f8399dcd75971cf1a8 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Thu, 9 Feb 2023 17:47:55 -0500 Subject: [PATCH 20/45] refactor: improve R17-R18 interop, drop jsx-runtime --- .eslintrc.js | 9 ++++----- src/DevTools/DevTools.tsx | 13 +++++++------ src/DevTools/Extension/Extension.tsx | 6 +++--- src/DevTools/Extension/components/Shell/Shell.tsx | 2 +- src/stories/Default/Demos/Random.tsx | 4 ++-- tsconfig.build.json | 2 +- tsup.config.ts | 2 +- 7 files changed, 19 insertions(+), 19 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index f8754089..a7f0fcf8 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -26,11 +26,9 @@ module.exports = { es6: true, }, parserOptions: { + project: './tsconfig.json', ecmaVersion: 2018, sourceType: 'module', - ecmaFeatures: { - jsx: true, - }, }, rules: { eqeqeq: 'error', @@ -92,8 +90,9 @@ module.exports = { pathGroupsExcludedImportTypes: ['builtin'], }, ], - 'react/jsx-uses-react': 'off', - 'react/react-in-jsx-scope': 'off', + // Disable it until we start supporting `react-jsx` again. + // 'react/jsx-uses-react': 'off', + // 'react/react-in-jsx-scope': 'off', 'sort-imports': [ 'error', { diff --git a/src/DevTools/DevTools.tsx b/src/DevTools/DevTools.tsx index b9bf0ee2..52ded998 100644 --- a/src/DevTools/DevTools.tsx +++ b/src/DevTools/DevTools.tsx @@ -1,4 +1,4 @@ -import { StrictMode, useEffect, useState } from 'react'; +import * as React from 'react'; import { ColorScheme, ColorSchemeProvider, @@ -53,17 +53,18 @@ const DevTools_ = ({ theme: userColorScheme = 'light', options, }: DevToolsProps): JSX.Element => { - const [colorScheme, setColorScheme] = useState<ColorScheme>(userColorScheme); + const [colorScheme, setColorScheme] = + React.useState<ColorScheme>(userColorScheme); const setDevToolsOptions = useSetDevToolsOptions(); const toggleColorScheme = (value?: ColorScheme) => setColorScheme(value || (colorScheme === 'dark' ? 'light' : 'dark')); - useEffect(() => { + React.useEffect(() => { setColorScheme(userColorScheme); }, [userColorScheme]); - useEffect(() => { + React.useEffect(() => { // Should we consider caching these options in the future instead of allowing users to change these? setDevToolsOptions(options); }, [setDevToolsOptions, options]); @@ -74,7 +75,7 @@ const DevTools_ = ({ }; return ( - <StrictMode> + <React.StrictMode> <ColorSchemeProvider colorScheme={colorScheme} toggleColorScheme={toggleColorScheme} @@ -85,7 +86,7 @@ const DevTools_ = ({ </InternalDevToolsContext.Provider> </MantineProvider> </ColorSchemeProvider> - </StrictMode> + </React.StrictMode> ); }; diff --git a/src/DevTools/Extension/Extension.tsx b/src/DevTools/Extension/Extension.tsx index d4fa7a65..4b872be0 100644 --- a/src/DevTools/Extension/Extension.tsx +++ b/src/DevTools/Extension/Extension.tsx @@ -1,4 +1,4 @@ -import { forwardRef, useEffect } from 'react'; +import * as React from 'react'; import { ActionIcon, Sx } from '@mantine/core'; import { useAtom, useSetAtom } from 'jotai/react'; import { Store } from 'src/types'; @@ -23,7 +23,7 @@ const shellTriggerButtonStyles: Sx = () => ({ }, }); -const ShellTriggerButton = forwardRef<HTMLButtonElement>((_, ref) => { +const ShellTriggerButton = React.forwardRef<HTMLButtonElement>((_, ref) => { const setIsShellOpen = useSetAtom(isShellOpenAtom, devtoolsJotaiStoreOptions); return ( @@ -55,7 +55,7 @@ export const Extension = ({ useDevtoolsJotaiStoreOptions(), ); - useEffect(() => { + React.useEffect(() => { // Avoid setting the initial value if the value is found in the local storage if (typeof isShellOpen !== 'boolean') { setIsShellOpen(isInitialOpen); diff --git a/src/DevTools/Extension/components/Shell/Shell.tsx b/src/DevTools/Extension/components/Shell/Shell.tsx index cef90279..a5d94c5a 100644 --- a/src/DevTools/Extension/components/Shell/Shell.tsx +++ b/src/DevTools/Extension/components/Shell/Shell.tsx @@ -1,4 +1,4 @@ -import { useEffect, useRef } from 'react'; +import React, { useEffect, useRef } from 'react'; import { Tabs } from '@mantine/core'; import { useAtomValue } from 'jotai/react'; import { Store } from 'src/types'; diff --git a/src/stories/Default/Demos/Random.tsx b/src/stories/Default/Demos/Random.tsx index a4c49cff..5c7e67ac 100644 --- a/src/stories/Default/Demos/Random.tsx +++ b/src/stories/Default/Demos/Random.tsx @@ -36,8 +36,8 @@ export const Random = () => { // We're not displaying these values on the UI // eslint-disable-next-line @typescript-eslint/no-unused-vars const nestedObject = useAtomValue(nestedObjectAtom, demoStoreOptions); - const text = useAtomValue(textAtom, demoStoreOptions); - const bigint = useAtomValue(bigintAtom, demoStoreOptions); + const _text = useAtomValue(textAtom, demoStoreOptions); + const _bigint = useAtomValue(bigintAtom, demoStoreOptions); // const circular = useAtomValue(circularAtom, demoStoreOptions); // console.log(circular); // eslint-disable-next-line @typescript-eslint/no-unused-vars diff --git a/tsconfig.build.json b/tsconfig.build.json index f02e74b6..930909a6 100644 --- a/tsconfig.build.json +++ b/tsconfig.build.json @@ -2,7 +2,7 @@ "compilerOptions": { "strict": true, "target": "ESNext", - "jsx": "react-jsx", + "jsx": "react", "module": "es2015", "downlevelIteration": true, "esModuleInterop": true, diff --git a/tsup.config.ts b/tsup.config.ts index 12e75752..8c7a4c44 100644 --- a/tsup.config.ts +++ b/tsup.config.ts @@ -26,7 +26,7 @@ const baseConfig: Options = { splitting: true, tsconfig: './tsconfig.build.json', dts: true, - external: ['jotai', 'React'], + external: ['jotai', 'react', 'react-dom'], platform: 'node', outExtension: defaultOutExtension, esbuildPlugins: defaultEsBuildPlugins, From a20a2355b08193fc4f8cde6dec85602ead7229df Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Fri, 10 Feb 2023 10:22:36 -0500 Subject: [PATCH 21/45] fix: inject react shim to the build --- .eslintignore | 3 ++- react-shim.js | 3 +++ tsup.config.ts | 3 +++ 3 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 react-shim.js diff --git a/.eslintignore b/.eslintignore index 15b3d9dd..4d898402 100644 --- a/.eslintignore +++ b/.eslintignore @@ -2,4 +2,5 @@ dist node_modules build .eslintrc.js -coverage \ No newline at end of file +coverage +react-shim.js \ No newline at end of file diff --git a/react-shim.js b/react-shim.js new file mode 100644 index 00000000..71672e7b --- /dev/null +++ b/react-shim.js @@ -0,0 +1,3 @@ +// Why? See - https://github.com/egoist/tsup/issues/792 +import React from 'react'; +export { React }; diff --git a/tsup.config.ts b/tsup.config.ts index 8c7a4c44..2ccd95a1 100644 --- a/tsup.config.ts +++ b/tsup.config.ts @@ -30,6 +30,9 @@ const baseConfig: Options = { platform: 'node', outExtension: defaultOutExtension, esbuildPlugins: defaultEsBuildPlugins, + // TSUP does not appear to be respecting tsconfig's jsx property + // See - https://github.com/egoist/tsup/issues/792 + inject: ['./react-shim.js'], }; const cjsConfig: Options = { From c086a75ed92066c78a3d42f5b3e5b924576bbee5 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Fri, 10 Feb 2023 11:20:13 -0500 Subject: [PATCH 22/45] fix: handle atom containing undefined values --- .../AtomDetail/components/AtomParseRawValue.tsx | 1 + .../AtomDetail/components/DisplayAtomDetails.tsx | 1 + .../AtomDetail/components/MemoizedValueRenderer.tsx | 6 +++--- src/DevTools/utils/get-type-of-atom-value.ts | 7 +++---- src/DevTools/utils/stringify-atom-value.ts | 6 ++++++ src/stories/Default/Demos/Random.tsx | 9 +++++++-- 6 files changed, 21 insertions(+), 9 deletions(-) diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseRawValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseRawValue.tsx index 54d9c140..4fcf50d7 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseRawValue.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseRawValue.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { Box, Text } from '@mantine/core'; import { AnyAtomValue } from 'src/types'; import { diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx index 88dd0655..3724c1cd 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/DisplayAtomDetails.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { Stack } from '@mantine/core'; import { useAtomValue } from 'jotai/react'; import { AnyAtom } from 'src/types'; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx index 52f8ee74..e46943bf 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx @@ -1,10 +1,10 @@ -import { memo } from 'react'; +import * as React from 'react'; import { Prism, PrismProps } from '@mantine/prism'; import { AnyAtomValue } from 'src/types'; import { getTypeOfAtomValue } from '../../../../../../../../utils'; // List of types to render in JavaScript syntax -const javaScriptLanguageTypes = ['object', 'array', 'null']; +const javaScriptLanguageTypes = ['object', 'array', 'null', 'undefined']; export const getPrismLanguageType = ( atomValue: AnyAtomValue, @@ -23,7 +23,7 @@ type MemoizedValueRendererProps = { prismLanguageType: ReturnType<typeof getPrismLanguageType>; }; -export const MemoizedValueRenderer = memo( +export const MemoizedValueRenderer = React.memo( ({ prismLanguageType, value }: MemoizedValueRendererProps): JSX.Element => { return ( <Prism language={prismLanguageType} mb={10} copyLabel="Copy value"> diff --git a/src/DevTools/utils/get-type-of-atom-value.ts b/src/DevTools/utils/get-type-of-atom-value.ts index 7d0ab5b7..3ca17536 100644 --- a/src/DevTools/utils/get-type-of-atom-value.ts +++ b/src/DevTools/utils/get-type-of-atom-value.ts @@ -3,11 +3,10 @@ import { AnyAtom, AnyAtomValue, WithInitialValue } from 'src/types'; const isValueAtom = (value: AnyAtomValue): value is AnyAtom => { return ( - typeof (value as AnyAtom).read === 'function' || + typeof (value as Partial<AnyAtom>)?.read === 'function' || typeof (value as WritableAtom<any, any, any>)?.write === 'function' || - !!(value as WithInitialValue).init || - !!(value as AnyAtom).debugLabel || - (value as AnyAtom).toString().includes('atom') + !!(value as WithInitialValue)?.init || + !!(value as Partial<AnyAtom>)?.debugLabel ); }; diff --git a/src/DevTools/utils/stringify-atom-value.ts b/src/DevTools/utils/stringify-atom-value.ts index 98d05104..e2a90962 100644 --- a/src/DevTools/utils/stringify-atom-value.ts +++ b/src/DevTools/utils/stringify-atom-value.ts @@ -4,9 +4,15 @@ import { getTypeOfAtomValue } from './get-type-of-atom-value'; export const stringifyAtomValue = (atomValue: AnyAtomValue): string => { const type = getTypeOfAtomValue(atomValue); + + if (type === 'undefined') { + return 'undefined'; + } + if (type === 'bigint') { return String(atomValue); } + const { json } = serialize(atomValue); return JSON.stringify(json, null, 2); }; diff --git a/src/stories/Default/Demos/Random.tsx b/src/stories/Default/Demos/Random.tsx index 5c7e67ac..c60b1c97 100644 --- a/src/stories/Default/Demos/Random.tsx +++ b/src/stories/Default/Demos/Random.tsx @@ -14,6 +14,9 @@ textAtom.debugLabel = 'textAtom'; const bigintAtom = atom(BigInt(Number.MAX_SAFE_INTEGER)); bigintAtom.debugLabel = 'bigintAtom'; +const atomReturnsUndefined = atom(undefined); +atomReturnsUndefined.debugLabel = 'atomReturnsUndefined'; + const nestedObjectAtom = atom((get) => { return { nestedObject: { @@ -28,8 +31,6 @@ nestedObjectAtom.debugLabel = 'nestedObjectAtom'; const atomsInAtomsCountAtom = atom(atom(atom((get) => get(countAtom)))); atomsInAtomsCountAtom.debugLabel = 'atomsInAtomsCountAtom'; -// const circularAtom = atom({ foo: atom({ bar: atom(1) }) }); -// circularAtom.debugLabel = 'circularAtom'; export const Random = () => { const [count, setCount] = useAtom(countAtom, demoStoreOptions); @@ -38,6 +39,10 @@ export const Random = () => { const nestedObject = useAtomValue(nestedObjectAtom, demoStoreOptions); const _text = useAtomValue(textAtom, demoStoreOptions); const _bigint = useAtomValue(bigintAtom, demoStoreOptions); + const _atomReturnsUndefined = useAtomValue( + atomReturnsUndefined, + demoStoreOptions, + ); // const circular = useAtomValue(circularAtom, demoStoreOptions); // console.log(circular); // eslint-disable-next-line @typescript-eslint/no-unused-vars From 3426871b133ac4f18bf3d1ae466c648193c8c734 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Fri, 10 Feb 2023 11:28:51 -0500 Subject: [PATCH 23/45] chore: release v0.3.0-next.1 --- CHANGELOG.md | 14 ++++++++++++++ package.json | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b447399b..e4c06e80 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +# [0.3.0-next.1](https://github.com/jotai-labs/jotai-devtools/compare/v0.3.0-next.0...v0.3.0-next.1) (2023-02-10) + +### Bug Fixes + +- handle atom containing undefined values + ([c086a75](https://github.com/jotai-labs/jotai-devtools/commit/c086a75ed92066c78a3d42f5b3e5b924576bbee5)) +- inject react shim to the build + ([a20a235](https://github.com/jotai-labs/jotai-devtools/commit/a20a2355b08193fc4f8cde6dec85602ead7229df)) + +### Features + +- make raw and parse value copyable + ([5348337](https://github.com/jotai-labs/jotai-devtools/commit/5348337530177f8db80e53d0d35e339cd78ad84c)) + # [0.3.0-next.0](https://github.com/jotai-labs/jotai-devtools/compare/v0.2.0...v0.3.0-next.0) (2023-02-07) ### Features diff --git a/package.json b/package.json index 5f6070be..1cd92a4c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jotai-devtools", - "version": "0.3.0-next.0", + "version": "0.3.0-next.1", "description": "A powerful toolkit to enhance your development experience with Jotai", "author": { "name": "Arjun Vegda", From 89b639e3225fbbf1f74a47086730bb439ef3ba4a Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sun, 12 Feb 2023 12:06:04 -0500 Subject: [PATCH 24/45] refactor: misc fixes --- src/DevTools/DevTools.tsx | 33 ++++++++++++----- src/DevTools/Extension/Extension.tsx | 17 ++++----- .../Extension/components/Shell/Shell.tsx | 9 +++-- .../components/AtomViewer/AtomViewer.tsx | 4 +-- .../components/AtomDetail/AtomDetail.tsx | 12 +++---- .../components/AtomDependentsList.tsx | 14 ++++---- .../AtomDetail/components/AtomMetaDetails.tsx | 14 +++++--- .../components/AtomParseDeepNestedValue.tsx | 17 ++++----- .../components/MemoizedValueRenderer.tsx | 16 +++++++-- .../components/AtomList/AtomList.tsx | 25 ++++++------- .../AtomList/components/AtomListItem.tsx | 10 +++--- .../Header/components/TabsHeader.tsx | 4 +-- .../Header/components/ThemeToggle.tsx | 1 + .../Shell/components/PanelResizeHandle.tsx | 1 + .../Shell/components/ShellResizeBar.tsx | 36 +++++++++++-------- src/DevTools/atoms/is-shell-open-atom.ts | 4 +-- src/DevTools/internal-jotai-store.ts | 9 +++-- src/DevTools/utils/stringify-atom-value.ts | 15 +++++--- src/stories/Default/Demos/Async.tsx | 1 + src/stories/Default/Demos/Counter.tsx | 4 +-- src/stories/Default/Demos/DemoApp.tsx | 6 ++-- src/stories/Default/Demos/Random.tsx | 28 ++++++++------- src/stories/Default/Demos/Todos.tsx | 6 ++-- src/stories/Default/DevTools.stories.tsx | 1 + src/stories/ProviderLess/Counter.tsx | 1 + .../DevToolsProviderLess.stories.tsx | 1 + 26 files changed, 169 insertions(+), 120 deletions(-) diff --git a/src/DevTools/DevTools.tsx b/src/DevTools/DevTools.tsx index 52ded998..a238ea2b 100644 --- a/src/DevTools/DevTools.tsx +++ b/src/DevTools/DevTools.tsx @@ -5,15 +5,14 @@ import { MantineProvider, MantineThemeOverride, } from '@mantine/core'; +import { createStore } from 'jotai/vanilla'; +import { Store } from 'src/types'; import { DevToolsOptions, useSetDevToolsOptions, } from './atoms/devtools-options'; import { Extension, ExtensionProps } from './Extension'; -import { - InternalDevToolsContext, - internalJotaiStore, -} from './internal-jotai-store'; +import { InternalDevToolsContext } from './internal-jotai-store'; import './fonts'; const theme: MantineThemeOverride = { @@ -47,7 +46,7 @@ export type DevToolsProps = ExtensionProps & { options?: DevToolsOptions; }; -const DevTools_ = ({ +const DevToolsMain = ({ store, isInitialOpen, theme: userColorScheme = 'light', @@ -81,18 +80,34 @@ const DevTools_ = ({ toggleColorScheme={toggleColorScheme} > <MantineProvider withNormalizeCSS theme={theme_}> - <InternalDevToolsContext.Provider value={internalJotaiStore}> - <Extension store={store} isInitialOpen={isInitialOpen} /> - </InternalDevToolsContext.Provider> + <Extension store={store} isInitialOpen={isInitialOpen} /> </MantineProvider> </ColorSchemeProvider> </React.StrictMode> ); }; +const DevToolsProvider = ({ children }: React.PropsWithChildren) => { + const internalStoreRef = React.useRef<Store>(); + + if (!internalStoreRef.current) { + internalStoreRef.current = createStore(); + } + + return ( + <InternalDevToolsContext.Provider value={internalStoreRef.current}> + {children} + </InternalDevToolsContext.Provider> + ); +}; + export const DevTools = (props: DevToolsProps): JSX.Element => { if (__DEV__) { - return <DevTools_ {...props} />; + return ( + <DevToolsProvider> + <DevToolsMain {...props} /> + </DevToolsProvider> + ); } return <></>; diff --git a/src/DevTools/Extension/Extension.tsx b/src/DevTools/Extension/Extension.tsx index 4b872be0..84866d31 100644 --- a/src/DevTools/Extension/Extension.tsx +++ b/src/DevTools/Extension/Extension.tsx @@ -4,10 +4,7 @@ import { useAtom, useSetAtom } from 'jotai/react'; import { Store } from 'src/types'; import { isShellOpenAtom } from '../atoms/is-shell-open-atom'; import { useThemeMode } from '../hooks/useThemeMode'; -import { - devtoolsJotaiStoreOptions, - useDevtoolsJotaiStoreOptions, -} from '../internal-jotai-store'; +import { useDevtoolsJotaiStoreOptions } from '../internal-jotai-store'; import { logo } from './assets/logo'; import { Shell } from './components/Shell'; @@ -24,7 +21,10 @@ const shellTriggerButtonStyles: Sx = () => ({ }); const ShellTriggerButton = React.forwardRef<HTMLButtonElement>((_, ref) => { - const setIsShellOpen = useSetAtom(isShellOpenAtom, devtoolsJotaiStoreOptions); + const setIsShellOpen = useSetAtom( + isShellOpenAtom, + useDevtoolsJotaiStoreOptions(), + ); return ( <ActionIcon @@ -64,10 +64,5 @@ export const Extension = ({ // eslint-disable-next-line react-hooks/exhaustive-deps }, []); - return ( - <> - {!isShellOpen && <ShellTriggerButton />} - {isShellOpen ? <Shell store={store} /> : null} - </> - ); + return <>{isShellOpen ? <Shell store={store} /> : <ShellTriggerButton />}</>; }; diff --git a/src/DevTools/Extension/components/Shell/Shell.tsx b/src/DevTools/Extension/components/Shell/Shell.tsx index a5d94c5a..42b57065 100644 --- a/src/DevTools/Extension/components/Shell/Shell.tsx +++ b/src/DevTools/Extension/components/Shell/Shell.tsx @@ -5,7 +5,7 @@ import { Store } from 'src/types'; import { shellStylesAtom } from '../../../atoms/shell-styles'; import { useSetCustomStore } from '../../../atoms/user-custom-store'; import { TabKeys, shellStyleDefaults } from '../../../constants'; -import { devtoolsJotaiStoreOptions } from '../../../internal-jotai-store'; +import { useDevtoolsJotaiStoreOptions } from '../../../internal-jotai-store'; import { AtomViewer } from './components/AtomViewer'; import { Header } from './components/Header'; import { ShellResizeBar } from './components/ShellResizeBar'; @@ -17,13 +17,15 @@ type ShellProps = { export const Shell = ({ store }: ShellProps) => { const setUserStore = useSetCustomStore(); - useEffect(() => { setUserStore(store); }, [setUserStore, store]); const shellRef = useRef<HTMLDivElement>(null); - const { height } = useAtomValue(shellStylesAtom, devtoolsJotaiStoreOptions); + const { height } = useAtomValue( + shellStylesAtom, + useDevtoolsJotaiStoreOptions(), + ); useEffect(() => { // Allocating more height at the end of the content allows users to scroll down fully @@ -46,6 +48,7 @@ export const Shell = ({ store }: ShellProps) => { mah={shellStyleDefaults.maxHeight} ref={shellRef} className="jotai-devtools-shell" + data-testid="jotai-devtools-shell" > <ShellResizeBar shellRef={shellRef} /> <Header /> diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx index 1cece72c..14dec187 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/AtomViewer.tsx @@ -1,4 +1,4 @@ -import { memo } from 'react'; +import * as React from 'react'; import { Flex, Sx } from '@mantine/core'; import { Panel, PanelGroup } from 'react-resizable-panels'; import { PanelResizeHandle } from '../PanelResizeHandle'; @@ -11,7 +11,7 @@ const atomListWrapperStyles: Sx = (theme) => ({ theme.colorScheme === 'dark' ? theme.colors.dark[8] : theme.colors.gray[2], }); -export const AtomViewer = memo(() => { +export const AtomViewer = React.memo(() => { return ( <PanelGroup direction="horizontal"> <Panel defaultSize={50} minSize={30} style={panelStyles}> diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/AtomDetail.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/AtomDetail.tsx index 4c6994d5..72d6c532 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/AtomDetail.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/AtomDetail.tsx @@ -1,8 +1,8 @@ -import { Suspense, memo } from 'react'; +import * as React from 'react'; import { Box, LoaderProps, LoadingOverlay, Sx, Text } from '@mantine/core'; import { useAtomValue } from 'jotai/react'; import { useThemeMode } from '../../../../../../../hooks/useThemeMode'; -import { devtoolsJotaiStoreOptions } from '../../../../../../../internal-jotai-store'; +import { useDevtoolsJotaiStoreOptions } from '../../../../../../../internal-jotai-store'; import { selectedAtomAtom } from '../../atoms'; import { DisplayAtomDetails } from './components/DisplayAtomDetails'; @@ -12,10 +12,10 @@ const messageBoxWrapperStyles: Sx = { transform: 'translateY(-50%)', }; -export const AtomDetail = memo((): JSX.Element => { +export const AtomDetail = React.memo((): JSX.Element => { const selectedAtomData = useAtomValue( selectedAtomAtom, - devtoolsJotaiStoreOptions, + useDevtoolsJotaiStoreOptions(), ); const loaderProps: LoaderProps = { @@ -33,7 +33,7 @@ export const AtomDetail = memo((): JSX.Element => { } return ( - <Suspense + <React.Suspense fallback={ <LoadingOverlay visible={true} @@ -43,7 +43,7 @@ export const AtomDetail = memo((): JSX.Element => { } > <DisplayAtomDetails atom={selectedAtomData.atom} /> - </Suspense> + </React.Suspense> ); }); diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomDependentsList.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomDependentsList.tsx index dee2e4d0..a88ea94d 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomDependentsList.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomDependentsList.tsx @@ -1,4 +1,4 @@ -import { useMemo } from 'react'; +import * as React from 'react'; import { Box, Code, List, Text } from '@mantine/core'; import { AnyAtom } from 'src/types'; import { useAtomsSnapshots } from '../../../../../../../../hooks/useAtomsSnapshots'; @@ -13,18 +13,20 @@ export const AtomDependentsList = ({ }: AtomDependentsListProps): JSX.Element => { const { dependents } = useAtomsSnapshots(); - const depsForAtom = useMemo(() => { + const depsForAtom = React.useMemo(() => { const arr = Array.from(dependents.get(atom) || []); return arr.filter((a) => a.toString() !== atom.toString()); }, [dependents, atom]); - const listOfDependents = useMemo( + const listOfDependents = React.useMemo( () => depsForAtom.map((value, i) => { - const key = `${i}-${value.toString()}-dependents-list`; + const parsedDebugLabel = parseDebugLabel(value?.debugLabel); return ( - <List.Item key={key}> - <Code>{parseDebugLabel(value?.debugLabel)}</Code> + <List.Item key={`${i}-${value.toString()}-dependents-list`}> + <Code data-testid={`dependents-list-item-${parsedDebugLabel}-${i}`}> + {parsedDebugLabel} + </Code> </List.Item> ); }), diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomMetaDetails.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomMetaDetails.tsx index 72d96d1a..58c45076 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomMetaDetails.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomMetaDetails.tsx @@ -1,4 +1,4 @@ -import { memo } from 'react'; +import * as React from 'react'; import { Box, Code, Text, Title } from '@mantine/core'; import { AtomValueType } from '../../../../../../../../utils/get-type-of-atom-value'; import { parseDebugLabel } from '../../../../../../../../utils/parse-debug-label'; @@ -11,10 +11,16 @@ type AtomDetailItemProps = { const DisplayAtomDetailsItem = ({ label, value }: AtomDetailItemProps) => { return ( <Box mb={10}> - <Text tt="uppercase" fz={10} fw="bold" color="gray"> + <Text + tt="uppercase" + fz={10} + fw="bold" + color="gray" + data-testid={`display-detail-item-label-${label}`} + > {label} </Text> - <Code>{value}</Code> + <Code data-testid={`display-detail-item-value-${value}`}>{value}</Code> </Box> ); }; @@ -24,7 +30,7 @@ type AtomMetaDetailsProps = { atomValueType: AtomValueType; }; -export const AtomMetaDetails = memo( +export const AtomMetaDetails = React.memo( ({ debugLabel, atomValueType }: AtomMetaDetailsProps): JSX.Element => { return ( <Box> diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseDeepNestedValue.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseDeepNestedValue.tsx index fa3b9b5e..477a1da9 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseDeepNestedValue.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/AtomParseDeepNestedValue.tsx @@ -1,4 +1,4 @@ -import { memo, useEffect, useState } from 'react'; +import * as React from 'react'; import { Box, Text } from '@mantine/core'; import { useAtomValue } from 'jotai/react'; import { AnyAtom } from 'src/types'; @@ -23,13 +23,14 @@ const useAtomValueSubscribe = (atom: AnyAtom) => { // Should we support nested async atoms? const atomValue = useAtomValue(atom, { store }); - const [nextValue, setNextValue] = useState(() => - deepParseAtomValue(atomValue, store), - ); + // Using an object to hold a value allows us to store values like functions + const [nextValue, setNextValue] = React.useState(() => ({ + value: deepParseAtomValue(atomValue, store), + })); - useEffect(() => { + React.useEffect(() => { const cb = () => { - setNextValue(deepParseAtomValue(atomValue, store)); + setNextValue({ value: deepParseAtomValue(atomValue, store) }); }; // Perhaps there is a more efficient way to subscribe more granularly to atom updates? @@ -39,11 +40,11 @@ const useAtomValueSubscribe = (atom: AnyAtom) => { return unsubscribe; }, [store, setNextValue, atomValue]); - return nextValue; + return nextValue.value; }; // This component assumes that user has picked the "deep-nested" parser -const ParseAndDisplayAtomValue = memo( +const ParseAndDisplayAtomValue = React.memo( ({ atom }: ParseAndDisplayAtomValueProps): JSX.Element => { const nextValue = useAtomValueSubscribe(atom); const prismLanguageType = getPrismLanguageType(nextValue); diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx index e46943bf..832c3c3a 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx @@ -4,7 +4,14 @@ import { AnyAtomValue } from 'src/types'; import { getTypeOfAtomValue } from '../../../../../../../../utils'; // List of types to render in JavaScript syntax -const javaScriptLanguageTypes = ['object', 'array', 'null', 'undefined']; +const javaScriptLanguageTypes = [ + 'object', + 'array', + 'null', + 'undefined', + 'function', + 'symbol', +]; export const getPrismLanguageType = ( atomValue: AnyAtomValue, @@ -26,7 +33,12 @@ type MemoizedValueRendererProps = { export const MemoizedValueRenderer = React.memo( ({ prismLanguageType, value }: MemoizedValueRendererProps): JSX.Element => { return ( - <Prism language={prismLanguageType} mb={10} copyLabel="Copy value"> + <Prism + language={prismLanguageType} + mb={10} + copyLabel="Copy value" + data-testid="atom-parsed-value" + > {value} </Prism> ); diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx index ec612167..1bdb1ef2 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/AtomList.tsx @@ -1,11 +1,4 @@ -import { - ChangeEventHandler, - memo, - useCallback, - useEffect, - useMemo, - useRef, -} from 'react'; +import * as React from 'react'; import { Box, Group, Sx, Text, TextInput } from '@mantine/core'; import { IconAlertCircle } from '@tabler/icons'; import { useAtom, useAtomValue } from 'jotai/react'; @@ -23,13 +16,15 @@ const textStyles: Sx = { top: 0, }; -const SearchAtoms = memo(() => { +const SearchAtoms = React.memo(() => { const [userInput, setUserInput] = useAtom( searchInputAtom, useDevtoolsJotaiStoreOptions(), ); - const handleOnChange: ChangeEventHandler<HTMLInputElement> = (event) => { + const handleOnChange: React.ChangeEventHandler<HTMLInputElement> = ( + event, + ) => { const { target: { value }, } = event; @@ -63,13 +58,13 @@ export const AtomList = () => { useDevtoolsJotaiStoreOptions(), ); - const valuesRef = useRef(values); + const valuesRef = React.useRef(values); - useEffect(() => { + React.useEffect(() => { valuesRef.current = values; }, [values]); - const handleOnClick = useCallback( + const handleOnClick = React.useCallback( (pos: number) => { if (!valuesRef.current[pos]) { // This should almost never occur @@ -91,7 +86,7 @@ export const AtomList = () => { [setSelectedAtomAtom], ); - const atomItems = useMemo( + const atomItems = React.useMemo( () => values.map(([atom], i) => { return ( @@ -117,7 +112,7 @@ export const AtomList = () => { {noResultsFound && ( <Group mt={20} position="center"> <IconAlertCircle size={16} /> - <Text fz="sm" ml={0}> + <Text fz="sm" ml={0} data-testid="atom-list-no-atoms-found-message"> No Atoms found! </Text> </Group> diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx index 232e55ce..eece3b45 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomList/components/AtomListItem.tsx @@ -1,4 +1,4 @@ -import { memo, useCallback, useMemo } from 'react'; +import * as React from 'react'; import { NavLink, Sx, Text } from '@mantine/core'; import { IconChevronRight } from '@tabler/icons'; import { useThemeMode } from '../../../../../../../../hooks/useThemeMode'; @@ -17,11 +17,11 @@ const navLinkStyles: Sx = { borderRadius: 5, }; -export const AtomListItem = memo( +export const AtomListItem = React.memo( ({ label, onClick, pos, isActive }: AtomListItemProps) => { return ( <NavLink - label={useMemo( + label={React.useMemo( () => ( <Text ff="JetBrains Mono">{parseDebugLabel(label)}</Text> ), @@ -31,8 +31,8 @@ export const AtomListItem = memo( sx={navLinkStyles} active={isActive} color={useThemeMode('dark', 'gray')} - onClick={useCallback(() => onClick(pos), [onClick, pos])} - rightSection={useMemo( + onClick={React.useCallback(() => onClick(pos), [onClick, pos])} + rightSection={React.useMemo( () => ( <IconChevronRight size={12} stroke={1.5} /> ), diff --git a/src/DevTools/Extension/components/Shell/components/Header/components/TabsHeader.tsx b/src/DevTools/Extension/components/Shell/components/Header/components/TabsHeader.tsx index 3e316e37..c3e8e5af 100644 --- a/src/DevTools/Extension/components/Shell/components/Header/components/TabsHeader.tsx +++ b/src/DevTools/Extension/components/Shell/components/Header/components/TabsHeader.tsx @@ -1,9 +1,9 @@ -import { memo } from 'react'; +import * as React from 'react'; import { Tabs } from '@mantine/core'; import { IconLayoutList } from '@tabler/icons'; import { TabKeys } from '../../../../../../constants'; -export const TabsHeader = memo(() => { +export const TabsHeader = React.memo(() => { return ( <Tabs.List> <Tabs.Tab value={TabKeys.AtomViewer} icon={<IconLayoutList size={14} />}> diff --git a/src/DevTools/Extension/components/Shell/components/Header/components/ThemeToggle.tsx b/src/DevTools/Extension/components/Shell/components/Header/components/ThemeToggle.tsx index 721703a1..3e369fb3 100644 --- a/src/DevTools/Extension/components/Shell/components/Header/components/ThemeToggle.tsx +++ b/src/DevTools/Extension/components/Shell/components/Header/components/ThemeToggle.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { ActionIcon, useMantineColorScheme } from '@mantine/core'; import { IconMoonStars, IconSun } from '@tabler/icons'; diff --git a/src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx b/src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx index 544445ca..03ffbd4c 100644 --- a/src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx +++ b/src/DevTools/Extension/components/Shell/components/PanelResizeHandle.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { Box, Sx } from '@mantine/core'; import { PanelResizeHandle as ReactPanelResizeHandle } from 'react-resizable-panels'; import { useThemeMode } from '../../../../hooks/useThemeMode'; diff --git a/src/DevTools/Extension/components/Shell/components/ShellResizeBar.tsx b/src/DevTools/Extension/components/Shell/components/ShellResizeBar.tsx index a4cf2824..14ef6567 100644 --- a/src/DevTools/Extension/components/Shell/components/ShellResizeBar.tsx +++ b/src/DevTools/Extension/components/Shell/components/ShellResizeBar.tsx @@ -1,18 +1,31 @@ -import { MouseEventHandler, RefObject } from 'react'; -import { Box } from '@mantine/core'; +import * as React from 'react'; +import { Box, Sx } from '@mantine/core'; import { useSetAtom } from 'jotai/react'; import { shellStylesAtom } from '../../../../atoms/shell-styles'; import { shellStyleDefaults } from '../../../../constants'; -import { devtoolsJotaiStoreOptions } from '../../../../internal-jotai-store'; +import { useDevtoolsJotaiStoreOptions } from '../../../../internal-jotai-store'; type ShellResizeBarProps = { // element: HTMLDivElement | null; - shellRef?: RefObject<HTMLDivElement> | null; + shellRef?: React.RefObject<HTMLDivElement> | null; }; +const shellResizeBarStyles: Sx = { + width: '100%', + height: 5, + cursor: 'row-resize', + zIndex: 2, + position: 'absolute', + // offset it by 2px as user might try to lift it from the edge + top: -2, +}; export const ShellResizeBar = ({ shellRef }: ShellResizeBarProps) => { - const setShellStyle = useSetAtom(shellStylesAtom, devtoolsJotaiStoreOptions); - const handleMouseDown: MouseEventHandler<HTMLDivElement> = ( + const setShellStyle = useSetAtom( + shellStylesAtom, + useDevtoolsJotaiStoreOptions(), + ); + + const handleMouseDown: React.MouseEventHandler<HTMLDivElement> = ( mouseDownEvent, ) => { const startY = mouseDownEvent.clientY; @@ -40,16 +53,9 @@ export const ShellResizeBar = ({ shellRef }: ShellResizeBarProps) => { return ( <Box - sx={{ - width: '100%', - height: 5, - cursor: 'row-resize', - zIndex: 2, - position: 'absolute', - // offset it by 2px as user might try to lift it from the edge - top: -2, - }} + sx={shellResizeBarStyles} onMouseDown={handleMouseDown} + data-testid="shell-resize-bar" /> ); }; diff --git a/src/DevTools/atoms/is-shell-open-atom.ts b/src/DevTools/atoms/is-shell-open-atom.ts index 5a6e0193..a7df67a5 100644 --- a/src/DevTools/atoms/is-shell-open-atom.ts +++ b/src/DevTools/atoms/is-shell-open-atom.ts @@ -1,6 +1,6 @@ import { atomWithStorage } from 'jotai/vanilla/utils'; -export const isShellOpenAtom = atomWithStorage( +export const isShellOpenAtom = atomWithStorage<boolean | null>( 'jotai-devtools-is-shell-open', - false, + null, ); diff --git a/src/DevTools/internal-jotai-store.ts b/src/DevTools/internal-jotai-store.ts index cd41208f..dadac45d 100644 --- a/src/DevTools/internal-jotai-store.ts +++ b/src/DevTools/internal-jotai-store.ts @@ -5,13 +5,12 @@ import { Store } from 'src/types'; // Don't use this directly in your components // use `useDevtoolsJotaiStoreOptions` instead export const internalJotaiStore = createStore(); - -export const InternalDevToolsContext = createContext<Store>(internalJotaiStore); - -export const devtoolsJotaiStoreOptions = { store: internalJotaiStore }; +export const InternalDevToolsContext = createContext<Store | undefined>( + undefined, +); export const useInternalStore = (): Store | undefined => { - return useContext(InternalDevToolsContext) || undefined; + return useContext(InternalDevToolsContext); }; export const useDevtoolsJotaiStoreOptions = () => ({ diff --git a/src/DevTools/utils/stringify-atom-value.ts b/src/DevTools/utils/stringify-atom-value.ts index e2a90962..bc060c4d 100644 --- a/src/DevTools/utils/stringify-atom-value.ts +++ b/src/DevTools/utils/stringify-atom-value.ts @@ -2,17 +2,22 @@ import { serialize } from 'superjson'; import { AnyAtomValue } from 'src/types'; import { getTypeOfAtomValue } from './get-type-of-atom-value'; +const literalStringValues = ['bigint', 'symbol', 'undefined', 'function']; + export const stringifyAtomValue = (atomValue: AnyAtomValue): string => { const type = getTypeOfAtomValue(atomValue); - if (type === 'undefined') { - return 'undefined'; + if (literalStringValues.includes(type)) { + return String(atomValue); } - if (type === 'bigint') { + const { json } = serialize(atomValue); + const result = JSON.stringify(json, null, 2); + + // Perhaps a value that we couldn't serialize? + if (typeof result === 'undefined') { return String(atomValue); } - const { json } = serialize(atomValue); - return JSON.stringify(json, null, 2); + return result; }; diff --git a/src/stories/Default/Demos/Async.tsx b/src/stories/Default/Demos/Async.tsx index 986e823d..ae0a6ab5 100644 --- a/src/stories/Default/Demos/Async.tsx +++ b/src/stories/Default/Demos/Async.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { Box, Button, Text, Title } from '@mantine/core'; import { useAtom } from 'jotai/react'; import { atom } from 'jotai/vanilla'; diff --git a/src/stories/Default/Demos/Counter.tsx b/src/stories/Default/Demos/Counter.tsx index d8b68a4e..a8250ad7 100644 --- a/src/stories/Default/Demos/Counter.tsx +++ b/src/stories/Default/Demos/Counter.tsx @@ -1,4 +1,4 @@ -import { useCallback } from 'react'; +import * as React from 'react'; import { Box, Button, Code, Title } from '@mantine/core'; import { useAtom } from 'jotai/react'; import { atom } from 'jotai/vanilla'; @@ -20,7 +20,7 @@ export const Counter = () => { <Button display="block" mt={5} - onClick={useCallback(() => setCount((c) => c + 1), [setCount])} + onClick={React.useCallback(() => setCount((c) => c + 1), [setCount])} size="xs" uppercase color="dark" diff --git a/src/stories/Default/Demos/DemoApp.tsx b/src/stories/Default/Demos/DemoApp.tsx index cf4d7575..c6e69e78 100644 --- a/src/stories/Default/Demos/DemoApp.tsx +++ b/src/stories/Default/Demos/DemoApp.tsx @@ -1,4 +1,4 @@ -import { Suspense } from 'react'; +import * as React from 'react'; import { Grid, MantineProvider, Text, Title } from '@mantine/core'; import { DevTools, DevToolsProps } from '../../../DevTools'; import { Async } from './Async'; @@ -20,7 +20,7 @@ export const DemoApp = (props: DevToolsProps) => { > <DevTools store={demoStore} {...props} /> <div className="App"> - <Suspense + <React.Suspense fallback={ <Text className="loading-suspense"> Your suspense loading component... @@ -46,7 +46,7 @@ export const DemoApp = (props: DevToolsProps) => { <Async /> </Grid.Col> </Grid> - </Suspense> + </React.Suspense> </div> </MantineProvider> </DemoJotaiStoreContext.Provider> diff --git a/src/stories/Default/Demos/Random.tsx b/src/stories/Default/Demos/Random.tsx index c60b1c97..f0b7f2aa 100644 --- a/src/stories/Default/Demos/Random.tsx +++ b/src/stories/Default/Demos/Random.tsx @@ -1,11 +1,11 @@ -import { useCallback } from 'react'; +import * as React from 'react'; import { Box, Button, Code, Title } from '@mantine/core'; import { useAtom, useAtomValue } from 'jotai/react'; import { atom } from 'jotai/vanilla'; import { demoStoreOptions } from './demo-store'; const countAtom = atom(1); -countAtom.debugLabel = 'countAtom'; +countAtom.debugLabel = 'randomCountAtom'; const textAtom = atom('hello'); textAtom.debugLabel = 'textAtom'; @@ -17,6 +17,12 @@ bigintAtom.debugLabel = 'bigintAtom'; const atomReturnsUndefined = atom(undefined); atomReturnsUndefined.debugLabel = 'atomReturnsUndefined'; +const atomWithSomeSymbol = atom(Symbol('hello')); +atomWithSomeSymbol.debugLabel = 'atomWithSomeSymbol'; + +const atomWithFunction = atom(() => () => 'hello'); +atomWithFunction.debugLabel = 'atomWithFunction'; + const nestedObjectAtom = atom((get) => { return { nestedObject: { @@ -36,15 +42,13 @@ export const Random = () => { const [count, setCount] = useAtom(countAtom, demoStoreOptions); // We're not displaying these values on the UI // eslint-disable-next-line @typescript-eslint/no-unused-vars - const nestedObject = useAtomValue(nestedObjectAtom, demoStoreOptions); - const _text = useAtomValue(textAtom, demoStoreOptions); - const _bigint = useAtomValue(bigintAtom, demoStoreOptions); - const _atomReturnsUndefined = useAtomValue( - atomReturnsUndefined, - demoStoreOptions, - ); - // const circular = useAtomValue(circularAtom, demoStoreOptions); - // console.log(circular); + useAtomValue(nestedObjectAtom, demoStoreOptions); + useAtomValue(textAtom, demoStoreOptions); + useAtomValue(bigintAtom, demoStoreOptions); + useAtomValue(atomReturnsUndefined, demoStoreOptions); + useAtomValue(atomWithSomeSymbol, demoStoreOptions); + useAtomValue(atomWithFunction, demoStoreOptions); + // eslint-disable-next-line @typescript-eslint/no-unused-vars const atomsInAtomsCount = useAtomValue( atomsInAtomsCountAtom, @@ -61,7 +65,7 @@ export const Random = () => { <Button display="block" mt={5} - onClick={useCallback(() => setCount((c) => c + 1), [setCount])} + onClick={React.useCallback(() => setCount((c) => c + 1), [setCount])} size="xs" uppercase color="dark" diff --git a/src/stories/Default/Demos/Todos.tsx b/src/stories/Default/Demos/Todos.tsx index bb2b186f..77a2182f 100644 --- a/src/stories/Default/Demos/Todos.tsx +++ b/src/stories/Default/Demos/Todos.tsx @@ -1,4 +1,4 @@ -import { FormEvent, useEffect } from 'react'; +import * as React from 'react'; import { ActionIcon, Box, @@ -49,7 +49,7 @@ type TodoItemProps = { const TodoItem = ({ atom, remove }: TodoItemProps) => { const [item, setItem] = useAtom(atom, demoStoreOptions); - useEffect(() => { + React.useEffect(() => { // atom.debugLabel = 'Todo Item - ' + item.title; }, [atom]); const toggleCompleted = () => @@ -120,7 +120,7 @@ const TodoList = () => { const setTodos = useSetAtom(todosAtom, demoStoreOptions); const remove: RemoveFn = (todo) => setTodos((prev) => prev.filter((item) => item !== todo)); - const add = (e: FormEvent<HTMLFormElement>) => { + const add = (e: React.FormEvent<HTMLFormElement>) => { e.preventDefault(); const title = e.currentTarget.inputTitle.value; e.currentTarget.inputTitle.value = ''; diff --git a/src/stories/Default/DevTools.stories.tsx b/src/stories/Default/DevTools.stories.tsx index a560db8b..0be46b67 100644 --- a/src/stories/Default/DevTools.stories.tsx +++ b/src/stories/Default/DevTools.stories.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { Meta, StoryObj } from '@storybook/react'; import { DevTools, DevToolsProps } from '../../DevTools'; import { DemoApp } from './Demos/DemoApp'; diff --git a/src/stories/ProviderLess/Counter.tsx b/src/stories/ProviderLess/Counter.tsx index 28abbcec..42e39378 100644 --- a/src/stories/ProviderLess/Counter.tsx +++ b/src/stories/ProviderLess/Counter.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { atom, useAtom } from 'jotai'; const countAtom = atom(0); diff --git a/src/stories/ProviderLess/DevToolsProviderLess.stories.tsx b/src/stories/ProviderLess/DevToolsProviderLess.stories.tsx index 849b37fd..a82144d5 100644 --- a/src/stories/ProviderLess/DevToolsProviderLess.stories.tsx +++ b/src/stories/ProviderLess/DevToolsProviderLess.stories.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { Meta, StoryFn } from '@storybook/react'; import { DevTools, DevToolsProps } from '../../DevTools'; import { Counter } from './Counter'; From b1c3e29dd0db926cb48d5ca0483c56edfdc2bca1 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sun, 12 Feb 2023 12:06:39 -0500 Subject: [PATCH 25/45] test: add tests --- .eslintignore | 3 +- __mocks__/styleMock.js | 1 + __tests__/custom-render.tsx | 9 + __tests__/devtools/AtomViewer.test.tsx | 258 ++ .../__snapshots__/AtomViewer.test.tsx.snap | 2884 +++++++++++++++++ __tests__/devtools/basic.test.tsx | 54 + __tests__/setup.ts | 3 + jest.config.ts | 12 +- package.json | 3 + tsconfig.json | 4 +- yarn.lock | 63 + 11 files changed, 3291 insertions(+), 3 deletions(-) create mode 100644 __mocks__/styleMock.js create mode 100644 __tests__/custom-render.tsx create mode 100644 __tests__/devtools/AtomViewer.test.tsx create mode 100644 __tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap create mode 100644 __tests__/devtools/basic.test.tsx create mode 100644 __tests__/setup.ts diff --git a/.eslintignore b/.eslintignore index 4d898402..fd242800 100644 --- a/.eslintignore +++ b/.eslintignore @@ -3,4 +3,5 @@ node_modules build .eslintrc.js coverage -react-shim.js \ No newline at end of file +react-shim.js +__mocks__/styleMock.js \ No newline at end of file diff --git a/__mocks__/styleMock.js b/__mocks__/styleMock.js new file mode 100644 index 00000000..f053ebf7 --- /dev/null +++ b/__mocks__/styleMock.js @@ -0,0 +1 @@ +module.exports = {}; diff --git a/__tests__/custom-render.tsx b/__tests__/custom-render.tsx new file mode 100644 index 00000000..ba6d6bbc --- /dev/null +++ b/__tests__/custom-render.tsx @@ -0,0 +1,9 @@ +import React, { PropsWithChildren, StrictMode } from 'react'; +import { RenderOptions, render } from '@testing-library/react'; + +const AllTheProviders = ({ children }: PropsWithChildren) => { + return <StrictMode>{children}</StrictMode>; +}; + +export const customRender = (ui: React.ReactElement, options?: RenderOptions) => + render(ui, { wrapper: AllTheProviders, ...options }); diff --git a/__tests__/devtools/AtomViewer.test.tsx b/__tests__/devtools/AtomViewer.test.tsx new file mode 100644 index 00000000..98d7c458 --- /dev/null +++ b/__tests__/devtools/AtomViewer.test.tsx @@ -0,0 +1,258 @@ +import React, { useMemo } from 'react'; +import exp from 'constants'; +import { act, render, screen, waitFor } from '@testing-library/react'; +import userEvent from '@testing-library/user-event'; +import { atom, createStore, useAtomValue } from 'jotai'; +import { DevTools } from 'jotai-devtools'; +import { AnyAtom } from 'src/types'; +import { customRender } from '../custom-render'; + +const BasicAtomsWithDevTools = () => { + // Create atoms inside the component so that they are recreated for each test + const countAtom = useMemo(() => atom(0), []); + countAtom.debugLabel = 'countAtom'; + const doubleAtom = useMemo( + () => atom((get) => get(countAtom) * 2), + [countAtom], + ); + + useAtomValue(countAtom); + useAtomValue(doubleAtom); + return <DevTools isInitialOpen={true} />; +}; + +describe('DevTools - AtomViewer', () => { + describe('List of atoms', () => { + it('should render atom viewer without any errors if there are no atoms', async () => { + const { container } = customRender(<DevTools isInitialOpen={true} />); + await waitFor(() => + expect(screen.getByText('πŸ‘» Jōtai DevTools')).toBeInTheDocument(), + ); + expect(screen.getByText('Atom Viewer')).toBeInTheDocument(); + expect( + screen.getByTestId('atom-list-no-atoms-found-message'), + ).toHaveTextContent('No Atoms found!'); + expect(screen.getByLabelText('Search')).toBeInTheDocument(); + expect( + screen.getByText( + 'Select an atom from the left panel to view the details', + ), + ).toBeInTheDocument(); + expect(container).toMatchSnapshot(); + }); + + it('should render atom viewer with correct atoms without provider', async () => { + const { container } = customRender(<BasicAtomsWithDevTools />); + expect(screen.getByText('countAtom')).toBeInTheDocument(); + // We did not add `debugLabel` to `doubleAtom` so it should be unlabeled + expect(screen.getByText('<unlabeled-atom>')).toBeInTheDocument(); + expect(container).toMatchSnapshot(); + }); + + describe('Search', () => { + it('should search for atoms correctly', async () => { + const { container } = customRender(<BasicAtomsWithDevTools />); + + await act(async () => { + await userEvent.type(screen.getByLabelText('Search'), 'count'); + }); + + expect( + screen.queryByTestId('atom-list-no-atoms-found-message'), + ).not.toBeInTheDocument(); + expect(screen.getByText('countAtom')).toBeInTheDocument(); + expect(screen.queryByText('<unlabeled-atom>')).not.toBeInTheDocument(); + expect(container).toMatchSnapshot(); + }); + it('should display an error if no atoms are found', async () => { + const { container } = customRender(<BasicAtomsWithDevTools />); + + await act(async () => { + await userEvent.type(screen.getByLabelText('Search'), 'abc 123'); + }); + expect( + screen.getByTestId('atom-list-no-atoms-found-message'), + ).toHaveTextContent('No Atoms found!'); + expect(screen.queryByText('countAtom')).not.toBeInTheDocument(); + expect(screen.queryByText('<unlabeled-atom>')).not.toBeInTheDocument(); + expect(container).toMatchSnapshot(); + }); + }); + }); + + describe('Atom details', () => { + describe('Raw value', () => { + it('should display atom details when an atom is selected', async () => { + const { container } = customRender(<BasicAtomsWithDevTools />); + + await act(async () => { + await userEvent.click(screen.getByText('countAtom')); + }); + + expect(screen.getByText('Atom Details')).toBeInTheDocument(); + expect(screen.getByText('Meta')).toBeInTheDocument(); + expect(screen.getByText('Debug Label')).toBeInTheDocument(); + expect( + screen.getByTestId('display-detail-item-value-countAtom'), + ).toHaveTextContent('countAtom'); + expect(screen.getByText('Value type')).toBeInTheDocument(); + expect(screen.getByText('number')).toBeInTheDocument(); + + expect(screen.getByText('Raw value')).toBeInTheDocument(); + expect(screen.getByTestId('atom-parsed-value')).toHaveTextContent('0'); + + expect(screen.getByText('Dependents')).toBeInTheDocument(); + expect( + screen.getByTestId('dependents-list-item-<unlabeled-atom>-0'), + ).toBeInTheDocument(); + expect(container).toMatchSnapshot(); + }); + + it('should display the dependents of the atom correctly', async () => { + const { container } = render(<BasicAtomsWithDevTools />); + + await act(async () => { + await userEvent.click(screen.getByText('<unlabeled-atom>')); + }); + + expect(screen.getByText('Atom Details')).toBeInTheDocument(); + + expect(screen.getByText('Dependents')).toBeInTheDocument(); + expect(screen.getByText('No dependents')).toBeInTheDocument(); + expect(container).toMatchSnapshot(); + }); + + describe('Supports most primitive value types', () => { + const AtomRenderer = ({ atom }: { atom: AnyAtom }) => { + useAtomValue(atom); + return <DevTools isInitialOpen={true} />; + }; + + it.each` + type | value | expected + ${'string'} | ${'some-string'} | ${'some-string'} + ${'number'} | ${123} | ${123} + ${'boolean'} | ${true} | ${true} + ${'boolean'} | ${false} | ${false} + ${'null'} | ${null} | ${'null'} + ${'undefined'} | ${undefined} | ${'undefined'} + ${'bigint'} | ${BigInt(123)} | ${'123'} + ${'symbol'} | ${Symbol('some-symbol')} | ${'Symbol(some-symbol)'} + ${'function'} | ${() => () => 'hello'} | ${"()=>'hello'"} + ${'object'} | ${{ foo: 'bar' }} | ${'{ "foo": "bar"}'} + ${'array'} | ${[1, 2, 3]} | ${'[ 1, 2, 3]'} + `( + 'should parse "$type" value correctly', + async ({ value, expected }) => { + const valueAtom = atom(value); + valueAtom.debugLabel = 'valueAtom'; + + customRender(<AtomRenderer atom={valueAtom} />); + + await act(async () => { + await userEvent.click(screen.getByText('valueAtom')); + }); + + expect(screen.getByTestId('atom-parsed-value')).toHaveTextContent( + expected, + ); + }, + ); + }); + }); + + describe('Deep nested values', () => { + it('should display atom details with deeply parsed value when an atom is selected', async () => { + const NestedAtomsWithDevTools = () => { + // Create atoms inside the component so that they are recreated for each test + const countAtom = useMemo(() => atom(0), []); + countAtom.debugLabel = 'countAtom'; + + const doubleNestedAtom = useMemo( + () => atom(atom((get) => get(countAtom) * 2 + 1)), + [countAtom], + ); + + useAtomValue(countAtom); + useAtomValue(doubleNestedAtom); + return ( + <DevTools + isInitialOpen={true} + options={{ atomValueParser: 'deep-nested' }} + /> + ); + }; + + const { container } = customRender(<NestedAtomsWithDevTools />); + + await act(async () => { + await userEvent.click(screen.getByText('<unlabeled-atom>')); + }); + + expect(screen.getByText('Atom Details')).toBeInTheDocument(); + expect(screen.getByText('Meta')).toBeInTheDocument(); + expect(screen.getByText('Debug Label')).toBeInTheDocument(); + expect( + screen.getByTestId('display-detail-item-value-<unlabeled-atom>'), + ).toHaveTextContent('<unlabeled-atom>'); + expect(screen.getByText('Value type')).toBeInTheDocument(); + expect( + screen.getByTestId('display-detail-item-value-atom'), + ).toHaveTextContent('atom'); + + expect(screen.getByText('Parsed value')).toBeInTheDocument(); + expect(screen.getByTestId('atom-parsed-value')).toHaveTextContent('1'); + + expect(screen.getByText('Dependents')).toBeInTheDocument(); + // There are no dependents for this atom yet because those dependents are not yet mounted + expect(screen.getByText('No dependents')).toBeInTheDocument(); + await waitFor(() => expect(container).toMatchSnapshot()); + }); + + describe('Supports most primitive value types', () => { + const AtomRenderer = ({ atom }: { atom: AnyAtom }) => { + useAtomValue(atom); + return ( + <DevTools + isInitialOpen={true} + options={{ + atomValueParser: 'deep-nested', + }} + /> + ); + }; + + it.each` + type | value | expected + ${'string'} | ${'some-string'} | ${'some-string'} + ${'number'} | ${123} | ${123} + ${'boolean'} | ${true} | ${true} + ${'boolean'} | ${false} | ${false} + ${'null'} | ${null} | ${'null'} + ${'undefined'} | ${undefined} | ${'undefined'} + ${'bigint'} | ${BigInt(123)} | ${'123'} + ${'symbol'} | ${Symbol('some-symbol')} | ${'Symbol(some-symbol)'} + ${'function'} | ${() => () => 'hello'} | ${"()=>'hello'"} + ${'object'} | ${{ foo: 'bar' }} | ${'{ "foo": "bar"}'} + ${'array'} | ${[1, 2, 3]} | ${'[ 1, 2, 3]'} + `( + 'should parse "$type" value correctly', + async ({ value, expected }) => { + const valueAtom = atom(value); + valueAtom.debugLabel = 'valueAtom'; + + customRender(<AtomRenderer atom={valueAtom} />); + + await act(async () => { + await userEvent.click(screen.getByText('valueAtom')); + }); + + expect(screen.getByTestId('atom-parsed-value')).toHaveTextContent( + expected, + ); + }, + ); + }); + }); + }); +}); diff --git a/__tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap b/__tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap new file mode 100644 index 00000000..76a8a265 --- /dev/null +++ b/__tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap @@ -0,0 +1,2884 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`DevTools - AtomViewer Atom details Deep nested values should display atom details with deeply parsed value when an atom is selected 1`] = ` +<div> + <div + class="mantine-Tabs-root jotai-devtools-shell mantine-xbm20l" + data-testid="jotai-devtools-shell" + > + <div + class="mantine-1gf2wvo" + data-testid="shell-resize-bar" + /> + <div + class="mantine-1yk50fa" + > + <div + class="mantine-4f8xjx" + > + <div + class="mantine-Group-root mantine-1pxhwx0" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-dfp0rc" + > + πŸ‘»Β Jōtai DevTools + </h1> + <div + class="mantine-Badge-root mantine-1wifcre" + > + <span + class="mantine-h9iq4m mantine-Badge-inner" + > + Alpha + </span> + </div> + </div> + <div + class="mantine-xg7kom" + > + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-1o23hru" + title="Toggle color scheme" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-moon-stars" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <path + d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" + /> + <path + d="M17 4a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2" + /> + <path + d="M19 11h2m-1 -1v2" + /> + </svg> + </button> + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-t0lmpu" + title="Minimize panel" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-minus" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <line + x1="5" + x2="19" + y1="12" + y2="12" + /> + </svg> + </button> + </div> + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-r8r-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-r8r-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" + > + <div + class="mantine-14swocp mantine-Tabs-tabIcon" + > + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> + </div> + </div> + <div + aria-labelledby="mantine-r8r-tab-atom-viewer" + class="mantine-Tabs-panel mantine-klo26w" + id="mantine-r8r-panel-atom-viewer" + role="tabpanel" + > + <div + class="" + data-panel-group="" + data-panel-group-direction="horizontal" + data-panel-group-id=":r8t:" + style="display: flex; flex-direction: row; height: 100%; overflow: hidden; width: 100%;" + > + <div + class="" + data-panel="" + data-panel-id=":r8v:" + data-panel-size="50.0" + id="data-panel-id-:r8v:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-3a3njo" + > + <div + class="mantine-InputWrapper-root mantine-TextInput-root mantine-1bszv4u" + > + <label + class="mantine-InputWrapper-label mantine-TextInput-label mantine-ittua2" + for="mantine-r91" + id="mantine-r91-label" + > + Search + </label> + <div + class="mantine-Input-wrapper mantine-TextInput-wrapper mantine-12sbrde" + > + <input + aria-invalid="false" + class="mantine-Input-input mantine-TextInput-input mantine-1ub2244" + id="mantine-r91" + placeholder="atom debug label" + type="text" + value="" + /> + </div> + </div> + <div + class="mantine-1gq3tre" + > + <button + class="mantine-UnstyledButton-root mantine-NavLink-root mantine-akuwoz" + type="button" + > + <span + class="mantine-1nksqbd mantine-NavLink-body" + > + <span + class="mantine-Text-root mantine-NavLink-label mantine-1lpq23f" + > + <div + class="mantine-Text-root mantine-1yre4n6" + > + countAtom + </div> + </span> + <span + class="mantine-Text-root mantine-NavLink-description mantine-zd66l8" + /> + </span> + <span + class="mantine-1vy961i mantine-NavLink-rightSection" + > + <svg + class="icon icon-tabler icon-tabler-chevron-right" + fill="none" + height="12" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="1.5" + viewBox="0 0 24 24" + width="12" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <polyline + points="9 6 15 12 9 18" + /> + </svg> + </span> + </button> + <div + aria-hidden="true" + class="mantine-1avyp1d" + style="box-sizing: border-box; display: none; height: 0px; overflow: hidden;" + > + <div + style="opacity: 0; transition: opacity 200ms ease;" + > + <div + class="mantine-35zpge mantine-NavLink-children" + /> + </div> + </div> + <button + class="mantine-UnstyledButton-root mantine-NavLink-root mantine-akuwoz" + data-active="true" + type="button" + > + <span + class="mantine-1nksqbd mantine-NavLink-body" + > + <span + class="mantine-Text-root mantine-NavLink-label mantine-1lpq23f" + > + <div + class="mantine-Text-root mantine-1yre4n6" + > + <unlabeled-atom> + </div> + </span> + <span + class="mantine-Text-root mantine-NavLink-description mantine-zd66l8" + data-active="true" + /> + </span> + <span + class="mantine-1vy961i mantine-NavLink-rightSection" + > + <svg + class="icon icon-tabler icon-tabler-chevron-right" + fill="none" + height="12" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="1.5" + viewBox="0 0 24 24" + width="12" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <polyline + points="9 6 15 12 9 18" + /> + </svg> + </span> + </button> + <div + aria-hidden="true" + class="mantine-1avyp1d" + style="box-sizing: border-box; display: none; height: 0px; overflow: hidden;" + > + <div + style="opacity: 0; transition: opacity 200ms ease;" + > + <div + class="mantine-35zpge mantine-NavLink-children" + /> + </div> + </div> + </div> + </div> + </div> + <div + aria-controls="data-panel-id-:r8v:" + aria-valuemax="70" + aria-valuemin="30" + aria-valuenow="50" + class="" + data-panel-group-direction="horizontal" + data-panel-group-id=":r8t:" + data-panel-resize-handle-enabled="true" + data-panel-resize-handle-id=":r93:" + role="separator" + style="cursor: col-resize; user-select: none;" + tabindex="0" + > + <div + class="mantine-1cmjlri" + > + <div + class="_jotai-devtools-internal-panel-resize-handle mantine-12yqcld" + /> + </div> + </div> + <div + class="" + data-panel="" + data-panel-id=":r95:" + data-panel-size="50.0" + id="data-panel-id-:r95:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-t78e42" + > + <div + class="mantine-Stack-root mantine-a3e3ju" + > + <div + class="mantine-1avyp1d" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-ifb8vz" + > + Atom Details + </h1> + <div + class="mantine-Text-root mantine-giipc7" + > + Meta + </div> + <div + class="mantine-x6ichy" + > + <div + class="mantine-Text-root mantine-1fv0pa9" + data-testid="display-detail-item-label-Debug Label" + > + Debug Label + </div> + <code + class="mantine-Code-root mantine-1klorgr" + data-testid="display-detail-item-value-<unlabeled-atom>" + dir="ltr" + > + <unlabeled-atom> + </code> + </div> + <div + class="mantine-x6ichy" + > + <div + class="mantine-Text-root mantine-1fv0pa9" + data-testid="display-detail-item-label-Value type" + > + Value type + </div> + <code + class="mantine-Code-root mantine-1klorgr" + data-testid="display-detail-item-value-atom" + dir="ltr" + > + atom + </code> + </div> + </div> + <div + class="mantine-1avyp1d" + > + <div + class="mantine-Text-root mantine-1fi314m" + > + Parsed value + </div> + <div + class="mantine-Prism-root mantine-9heff7" + data-testid="atom-parsed-value" + translate="no" + > + <button + aria-label="Copy value" + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-Prism-copy mantine-r1ykzi" + type="button" + > + <svg + fill="none" + height="15" + viewBox="0 0 15 15" + width="15" + xmlns="http://www.w3.org/2000/svg" + > + <path + clip-rule="evenodd" + d="M5 2V1H10V2H5ZM4.75 0C4.33579 0 4 0.335786 4 0.75V1H3.5C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H11.5C12.3284 14 13 13.3284 13 12.5V2.5C13 1.67157 12.3284 1 11.5 1H11V0.75C11 0.335786 10.6642 0 10.25 0H4.75ZM11 2V2.25C11 2.66421 10.6642 3 10.25 3H4.75C4.33579 3 4 2.66421 4 2.25V2H3.5C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V2.5C12 2.22386 11.7761 2 11.5 2H11Z" + fill="currentColor" + fill-rule="evenodd" + /> + </svg> + </button> + <div + class="mantine-ScrollArea-root mantine-Prism-scrollArea mantine-1j1ni8n" + dir="ltr" + style="position: relative; --radix-scroll-area-corner-width: 0px; --radix-scroll-area-corner-height: 0px;" + > + <style> + [data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none} + </style> + <div + class="mantine-xlwgkm mantine-ScrollArea-viewport" + data-radix-scroll-area-viewport="" + style="overflow-x: scroll; overflow-y: scroll;" + > + <div + style="min-width: 100%; display: table;" + > + <pre + class="mantine-1r2c9o1 mantine-Prism-code prism-code language-markdown" + dir="ltr" + style="color: rgb(33, 37, 41); background-color: rgba(248, 249, 250, 0.65);" + > + <div + class="mantine-1e8ljqt mantine-Prism-line token-line" + > + <div + class="mantine-26ugy1 mantine-Prism-lineContent" + > + <span + class="token plain" + > + 1 + </span> + </div> + </div> + </pre> + </div> + </div> + </div> + </div> + </div> + <div + class="mantine-1avyp1d" + > + <div + class="mantine-Text-root mantine-hlwjat" + > + Dependents + </div> + <div + class="mantine-Text-root mantine-1t4da6g" + > + No dependents + </div> + </div> + </div> + </div> + </div> + </div> + </div> + </div> +</div> +`; + +exports[`DevTools - AtomViewer Atom details Raw value should display atom details when an atom is selected 1`] = ` +<div> + <div + class="mantine-Tabs-root jotai-devtools-shell mantine-xbm20l" + data-testid="jotai-devtools-shell" + > + <div + class="mantine-1gf2wvo" + data-testid="shell-resize-bar" + /> + <div + class="mantine-1yk50fa" + > + <div + class="mantine-4f8xjx" + > + <div + class="mantine-Group-root mantine-1pxhwx0" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-dfp0rc" + > + πŸ‘»Β Jōtai DevTools + </h1> + <div + class="mantine-Badge-root mantine-1wifcre" + > + <span + class="mantine-h9iq4m mantine-Badge-inner" + > + Alpha + </span> + </div> + </div> + <div + class="mantine-xg7kom" + > + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-1o23hru" + title="Toggle color scheme" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-moon-stars" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <path + d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" + /> + <path + d="M17 4a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2" + /> + <path + d="M19 11h2m-1 -1v2" + /> + </svg> + </button> + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-t0lmpu" + title="Minimize panel" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-minus" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <line + x1="5" + x2="19" + y1="12" + y2="12" + /> + </svg> + </button> + </div> + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-r1h-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-r1h-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" + > + <div + class="mantine-14swocp mantine-Tabs-tabIcon" + > + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> + </div> + </div> + <div + aria-labelledby="mantine-r1h-tab-atom-viewer" + class="mantine-Tabs-panel mantine-klo26w" + id="mantine-r1h-panel-atom-viewer" + role="tabpanel" + > + <div + class="" + data-panel-group="" + data-panel-group-direction="horizontal" + data-panel-group-id=":r1j:" + style="display: flex; flex-direction: row; height: 100%; overflow: hidden; width: 100%;" + > + <div + class="" + data-panel="" + data-panel-id=":r1l:" + data-panel-size="50.0" + id="data-panel-id-:r1l:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-3a3njo" + > + <div + class="mantine-InputWrapper-root mantine-TextInput-root mantine-1bszv4u" + > + <label + class="mantine-InputWrapper-label mantine-TextInput-label mantine-ittua2" + for="mantine-r1n" + id="mantine-r1n-label" + > + Search + </label> + <div + class="mantine-Input-wrapper mantine-TextInput-wrapper mantine-12sbrde" + > + <input + aria-invalid="false" + class="mantine-Input-input mantine-TextInput-input mantine-1ub2244" + id="mantine-r1n" + placeholder="atom debug label" + type="text" + value="" + /> + </div> + </div> + <div + class="mantine-1gq3tre" + > + <button + class="mantine-UnstyledButton-root mantine-NavLink-root mantine-akuwoz" + data-active="true" + type="button" + > + <span + class="mantine-1nksqbd mantine-NavLink-body" + > + <span + class="mantine-Text-root mantine-NavLink-label mantine-1lpq23f" + > + <div + class="mantine-Text-root mantine-1yre4n6" + > + countAtom + </div> + </span> + <span + class="mantine-Text-root mantine-NavLink-description mantine-zd66l8" + data-active="true" + /> + </span> + <span + class="mantine-1vy961i mantine-NavLink-rightSection" + > + <svg + class="icon icon-tabler icon-tabler-chevron-right" + fill="none" + height="12" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="1.5" + viewBox="0 0 24 24" + width="12" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <polyline + points="9 6 15 12 9 18" + /> + </svg> + </span> + </button> + <div + aria-hidden="true" + class="mantine-1avyp1d" + style="box-sizing: border-box; display: none; height: 0px; overflow: hidden;" + > + <div + style="opacity: 0; transition: opacity 200ms ease;" + > + <div + class="mantine-35zpge mantine-NavLink-children" + /> + </div> + </div> + <button + class="mantine-UnstyledButton-root mantine-NavLink-root mantine-akuwoz" + type="button" + > + <span + class="mantine-1nksqbd mantine-NavLink-body" + > + <span + class="mantine-Text-root mantine-NavLink-label mantine-1lpq23f" + > + <div + class="mantine-Text-root mantine-1yre4n6" + > + <unlabeled-atom> + </div> + </span> + <span + class="mantine-Text-root mantine-NavLink-description mantine-zd66l8" + /> + </span> + <span + class="mantine-1vy961i mantine-NavLink-rightSection" + > + <svg + class="icon icon-tabler icon-tabler-chevron-right" + fill="none" + height="12" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="1.5" + viewBox="0 0 24 24" + width="12" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <polyline + points="9 6 15 12 9 18" + /> + </svg> + </span> + </button> + <div + aria-hidden="true" + class="mantine-1avyp1d" + style="box-sizing: border-box; display: none; height: 0px; overflow: hidden;" + > + <div + style="opacity: 0; transition: opacity 200ms ease;" + > + <div + class="mantine-35zpge mantine-NavLink-children" + /> + </div> + </div> + </div> + </div> + </div> + <div + aria-controls="data-panel-id-:r1l:" + aria-valuemax="70" + aria-valuemin="30" + aria-valuenow="50" + class="" + data-panel-group-direction="horizontal" + data-panel-group-id=":r1j:" + data-panel-resize-handle-enabled="true" + data-panel-resize-handle-id=":r1p:" + role="separator" + style="cursor: col-resize; user-select: none;" + tabindex="0" + > + <div + class="mantine-1cmjlri" + > + <div + class="_jotai-devtools-internal-panel-resize-handle mantine-12yqcld" + /> + </div> + </div> + <div + class="" + data-panel="" + data-panel-id=":r1r:" + data-panel-size="50.0" + id="data-panel-id-:r1r:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-t78e42" + > + <div + class="mantine-Stack-root mantine-a3e3ju" + > + <div + class="mantine-1avyp1d" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-ifb8vz" + > + Atom Details + </h1> + <div + class="mantine-Text-root mantine-giipc7" + > + Meta + </div> + <div + class="mantine-x6ichy" + > + <div + class="mantine-Text-root mantine-1fv0pa9" + data-testid="display-detail-item-label-Debug Label" + > + Debug Label + </div> + <code + class="mantine-Code-root mantine-1klorgr" + data-testid="display-detail-item-value-countAtom" + dir="ltr" + > + countAtom + </code> + </div> + <div + class="mantine-x6ichy" + > + <div + class="mantine-Text-root mantine-1fv0pa9" + data-testid="display-detail-item-label-Value type" + > + Value type + </div> + <code + class="mantine-Code-root mantine-1klorgr" + data-testid="display-detail-item-value-number" + dir="ltr" + > + number + </code> + </div> + </div> + <div + class="mantine-1avyp1d" + > + <div + class="mantine-Text-root mantine-1fi314m" + > + Raw value + </div> + <div + class="mantine-Prism-root mantine-9heff7" + data-testid="atom-parsed-value" + translate="no" + > + <button + aria-label="Copy value" + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-Prism-copy mantine-r1ykzi" + type="button" + > + <svg + fill="none" + height="15" + viewBox="0 0 15 15" + width="15" + xmlns="http://www.w3.org/2000/svg" + > + <path + clip-rule="evenodd" + d="M5 2V1H10V2H5ZM4.75 0C4.33579 0 4 0.335786 4 0.75V1H3.5C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H11.5C12.3284 14 13 13.3284 13 12.5V2.5C13 1.67157 12.3284 1 11.5 1H11V0.75C11 0.335786 10.6642 0 10.25 0H4.75ZM11 2V2.25C11 2.66421 10.6642 3 10.25 3H4.75C4.33579 3 4 2.66421 4 2.25V2H3.5C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V2.5C12 2.22386 11.7761 2 11.5 2H11Z" + fill="currentColor" + fill-rule="evenodd" + /> + </svg> + </button> + <div + class="mantine-ScrollArea-root mantine-Prism-scrollArea mantine-1j1ni8n" + dir="ltr" + style="position: relative; --radix-scroll-area-corner-width: 0px; --radix-scroll-area-corner-height: 0px;" + > + <style> + [data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none} + </style> + <div + class="mantine-xlwgkm mantine-ScrollArea-viewport" + data-radix-scroll-area-viewport="" + style="overflow-x: scroll; overflow-y: scroll;" + > + <div + style="min-width: 100%; display: table;" + > + <pre + class="mantine-1r2c9o1 mantine-Prism-code prism-code language-markdown" + dir="ltr" + style="color: rgb(33, 37, 41); background-color: rgba(248, 249, 250, 0.65);" + > + <div + class="mantine-1e8ljqt mantine-Prism-line token-line" + > + <div + class="mantine-26ugy1 mantine-Prism-lineContent" + > + <span + class="token plain" + > + 0 + </span> + </div> + </div> + </pre> + </div> + </div> + </div> + </div> + </div> + <div + class="mantine-1avyp1d" + > + <div + class="mantine-Text-root mantine-hlwjat" + > + Dependents + </div> + <ol + class="mantine-List-root mantine-7vjr0l" + > + <li + class="mantine-List-item mantine-1x3wo6v" + > + <div + class="__mantine-ref-itemWrapper mantine-1qill40 mantine-List-itemWrapper" + > + <span> + <code + class="mantine-Code-root mantine-1klorgr" + data-testid="dependents-list-item-<unlabeled-atom>-0" + dir="ltr" + > + <unlabeled-atom> + </code> + </span> + </div> + </li> + </ol> + </div> + </div> + </div> + </div> + </div> + </div> + </div> +</div> +`; + +exports[`DevTools - AtomViewer Atom details Raw value should display the dependents of the atom correctly 1`] = ` +<div> + <div + class="mantine-Tabs-root jotai-devtools-shell mantine-xbm20l" + data-testid="jotai-devtools-shell" + > + <div + class="mantine-1gf2wvo" + data-testid="shell-resize-bar" + /> + <div + class="mantine-1yk50fa" + > + <div + class="mantine-4f8xjx" + > + <div + class="mantine-Group-root mantine-1pxhwx0" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-dfp0rc" + > + πŸ‘»Β Jōtai DevTools + </h1> + <div + class="mantine-Badge-root mantine-1wifcre" + > + <span + class="mantine-h9iq4m mantine-Badge-inner" + > + Alpha + </span> + </div> + </div> + <div + class="mantine-xg7kom" + > + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-1o23hru" + title="Toggle color scheme" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-moon-stars" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <path + d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" + /> + <path + d="M17 4a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2" + /> + <path + d="M19 11h2m-1 -1v2" + /> + </svg> + </button> + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-t0lmpu" + title="Minimize panel" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-minus" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <line + x1="5" + x2="19" + y1="12" + y2="12" + /> + </svg> + </button> + </div> + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-r23-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-r23-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" + > + <div + class="mantine-14swocp mantine-Tabs-tabIcon" + > + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> + </div> + </div> + <div + aria-labelledby="mantine-r23-tab-atom-viewer" + class="mantine-Tabs-panel mantine-klo26w" + id="mantine-r23-panel-atom-viewer" + role="tabpanel" + > + <div + class="" + data-panel-group="" + data-panel-group-direction="horizontal" + data-panel-group-id=":r25:" + style="display: flex; flex-direction: row; height: 100%; overflow: hidden; width: 100%;" + > + <div + class="" + data-panel="" + data-panel-id=":r27:" + data-panel-size="50.0" + id="data-panel-id-:r27:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-3a3njo" + > + <div + class="mantine-InputWrapper-root mantine-TextInput-root mantine-1bszv4u" + > + <label + class="mantine-InputWrapper-label mantine-TextInput-label mantine-ittua2" + for="mantine-r29" + id="mantine-r29-label" + > + Search + </label> + <div + class="mantine-Input-wrapper mantine-TextInput-wrapper mantine-12sbrde" + > + <input + aria-invalid="false" + class="mantine-Input-input mantine-TextInput-input mantine-1ub2244" + id="mantine-r29" + placeholder="atom debug label" + type="text" + value="" + /> + </div> + </div> + <div + class="mantine-1gq3tre" + > + <button + class="mantine-UnstyledButton-root mantine-NavLink-root mantine-akuwoz" + type="button" + > + <span + class="mantine-1nksqbd mantine-NavLink-body" + > + <span + class="mantine-Text-root mantine-NavLink-label mantine-1lpq23f" + > + <div + class="mantine-Text-root mantine-1yre4n6" + > + countAtom + </div> + </span> + <span + class="mantine-Text-root mantine-NavLink-description mantine-zd66l8" + /> + </span> + <span + class="mantine-1vy961i mantine-NavLink-rightSection" + > + <svg + class="icon icon-tabler icon-tabler-chevron-right" + fill="none" + height="12" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="1.5" + viewBox="0 0 24 24" + width="12" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <polyline + points="9 6 15 12 9 18" + /> + </svg> + </span> + </button> + <div + aria-hidden="true" + class="mantine-1avyp1d" + style="box-sizing: border-box; display: none; height: 0px; overflow: hidden;" + > + <div + style="opacity: 0; transition: opacity 200ms ease;" + > + <div + class="mantine-35zpge mantine-NavLink-children" + /> + </div> + </div> + <button + class="mantine-UnstyledButton-root mantine-NavLink-root mantine-akuwoz" + data-active="true" + type="button" + > + <span + class="mantine-1nksqbd mantine-NavLink-body" + > + <span + class="mantine-Text-root mantine-NavLink-label mantine-1lpq23f" + > + <div + class="mantine-Text-root mantine-1yre4n6" + > + <unlabeled-atom> + </div> + </span> + <span + class="mantine-Text-root mantine-NavLink-description mantine-zd66l8" + data-active="true" + /> + </span> + <span + class="mantine-1vy961i mantine-NavLink-rightSection" + > + <svg + class="icon icon-tabler icon-tabler-chevron-right" + fill="none" + height="12" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="1.5" + viewBox="0 0 24 24" + width="12" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <polyline + points="9 6 15 12 9 18" + /> + </svg> + </span> + </button> + <div + aria-hidden="true" + class="mantine-1avyp1d" + style="box-sizing: border-box; display: none; height: 0px; overflow: hidden;" + > + <div + style="opacity: 0; transition: opacity 200ms ease;" + > + <div + class="mantine-35zpge mantine-NavLink-children" + /> + </div> + </div> + </div> + </div> + </div> + <div + aria-controls="data-panel-id-:r27:" + aria-valuemax="70" + aria-valuemin="30" + aria-valuenow="50" + class="" + data-panel-group-direction="horizontal" + data-panel-group-id=":r25:" + data-panel-resize-handle-enabled="true" + data-panel-resize-handle-id=":r2b:" + role="separator" + style="cursor: col-resize; user-select: none;" + tabindex="0" + > + <div + class="mantine-1cmjlri" + > + <div + class="_jotai-devtools-internal-panel-resize-handle mantine-12yqcld" + /> + </div> + </div> + <div + class="" + data-panel="" + data-panel-id=":r2d:" + data-panel-size="50.0" + id="data-panel-id-:r2d:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-t78e42" + > + <div + class="mantine-Stack-root mantine-a3e3ju" + > + <div + class="mantine-1avyp1d" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-ifb8vz" + > + Atom Details + </h1> + <div + class="mantine-Text-root mantine-giipc7" + > + Meta + </div> + <div + class="mantine-x6ichy" + > + <div + class="mantine-Text-root mantine-1fv0pa9" + data-testid="display-detail-item-label-Debug Label" + > + Debug Label + </div> + <code + class="mantine-Code-root mantine-1klorgr" + data-testid="display-detail-item-value-<unlabeled-atom>" + dir="ltr" + > + <unlabeled-atom> + </code> + </div> + <div + class="mantine-x6ichy" + > + <div + class="mantine-Text-root mantine-1fv0pa9" + data-testid="display-detail-item-label-Value type" + > + Value type + </div> + <code + class="mantine-Code-root mantine-1klorgr" + data-testid="display-detail-item-value-number" + dir="ltr" + > + number + </code> + </div> + </div> + <div + class="mantine-1avyp1d" + > + <div + class="mantine-Text-root mantine-1fi314m" + > + Raw value + </div> + <div + class="mantine-Prism-root mantine-9heff7" + data-testid="atom-parsed-value" + translate="no" + > + <button + aria-label="Copy value" + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-Prism-copy mantine-r1ykzi" + type="button" + > + <svg + fill="none" + height="15" + viewBox="0 0 15 15" + width="15" + xmlns="http://www.w3.org/2000/svg" + > + <path + clip-rule="evenodd" + d="M5 2V1H10V2H5ZM4.75 0C4.33579 0 4 0.335786 4 0.75V1H3.5C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H11.5C12.3284 14 13 13.3284 13 12.5V2.5C13 1.67157 12.3284 1 11.5 1H11V0.75C11 0.335786 10.6642 0 10.25 0H4.75ZM11 2V2.25C11 2.66421 10.6642 3 10.25 3H4.75C4.33579 3 4 2.66421 4 2.25V2H3.5C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V2.5C12 2.22386 11.7761 2 11.5 2H11Z" + fill="currentColor" + fill-rule="evenodd" + /> + </svg> + </button> + <div + class="mantine-ScrollArea-root mantine-Prism-scrollArea mantine-1j1ni8n" + dir="ltr" + style="position: relative; --radix-scroll-area-corner-width: 0px; --radix-scroll-area-corner-height: 0px;" + > + <style> + [data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none} + </style> + <div + class="mantine-xlwgkm mantine-ScrollArea-viewport" + data-radix-scroll-area-viewport="" + style="overflow-x: scroll; overflow-y: scroll;" + > + <div + style="min-width: 100%; display: table;" + > + <pre + class="mantine-1r2c9o1 mantine-Prism-code prism-code language-markdown" + dir="ltr" + style="color: rgb(33, 37, 41); background-color: rgba(248, 249, 250, 0.65);" + > + <div + class="mantine-1e8ljqt mantine-Prism-line token-line" + > + <div + class="mantine-26ugy1 mantine-Prism-lineContent" + > + <span + class="token plain" + > + 0 + </span> + </div> + </div> + </pre> + </div> + </div> + </div> + </div> + </div> + <div + class="mantine-1avyp1d" + > + <div + class="mantine-Text-root mantine-hlwjat" + > + Dependents + </div> + <div + class="mantine-Text-root mantine-1t4da6g" + > + No dependents + </div> + </div> + </div> + </div> + </div> + </div> + </div> + </div> +</div> +`; + +exports[`DevTools - AtomViewer List of atoms Search should display an error if no atoms are found 1`] = ` +<div> + <div + class="mantine-Tabs-root jotai-devtools-shell mantine-xbm20l" + data-testid="jotai-devtools-shell" + > + <div + class="mantine-1gf2wvo" + data-testid="shell-resize-bar" + /> + <div + class="mantine-1yk50fa" + > + <div + class="mantine-4f8xjx" + > + <div + class="mantine-Group-root mantine-1pxhwx0" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-dfp0rc" + > + πŸ‘»Β Jōtai DevTools + </h1> + <div + class="mantine-Badge-root mantine-1wifcre" + > + <span + class="mantine-h9iq4m mantine-Badge-inner" + > + Alpha + </span> + </div> + </div> + <div + class="mantine-xg7kom" + > + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-1o23hru" + title="Toggle color scheme" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-moon-stars" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <path + d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" + /> + <path + d="M17 4a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2" + /> + <path + d="M19 11h2m-1 -1v2" + /> + </svg> + </button> + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-t0lmpu" + title="Minimize panel" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-minus" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <line + x1="5" + x2="19" + y1="12" + y2="12" + /> + </svg> + </button> + </div> + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-r15-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-r15-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" + > + <div + class="mantine-14swocp mantine-Tabs-tabIcon" + > + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> + </div> + </div> + <div + aria-labelledby="mantine-r15-tab-atom-viewer" + class="mantine-Tabs-panel mantine-klo26w" + id="mantine-r15-panel-atom-viewer" + role="tabpanel" + > + <div + class="" + data-panel-group="" + data-panel-group-direction="horizontal" + data-panel-group-id=":r17:" + style="display: flex; flex-direction: row; height: 100%; overflow: hidden; width: 100%;" + > + <div + class="" + data-panel="" + data-panel-id=":r19:" + data-panel-size="50.0" + id="data-panel-id-:r19:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-3a3njo" + > + <div + class="mantine-InputWrapper-root mantine-TextInput-root mantine-1bszv4u" + > + <label + class="mantine-InputWrapper-label mantine-TextInput-label mantine-ittua2" + for="mantine-r1b" + id="mantine-r1b-label" + > + Search + </label> + <div + class="mantine-Input-wrapper mantine-TextInput-wrapper mantine-12sbrde" + > + <input + aria-invalid="false" + class="mantine-Input-input mantine-TextInput-input mantine-1ub2244" + id="mantine-r1b" + placeholder="atom debug label" + type="text" + value="abc 123" + /> + </div> + </div> + <div + class="mantine-1gq3tre" + /> + <div + class="mantine-Group-root mantine-1p6trzd" + > + <svg + class="icon icon-tabler icon-tabler-alert-circle" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <circle + cx="12" + cy="12" + r="9" + /> + <line + x1="12" + x2="12" + y1="8" + y2="12" + /> + <line + x1="12" + x2="12.01" + y1="16" + y2="16" + /> + </svg> + <div + class="mantine-Text-root mantine-1fs6j1" + data-testid="atom-list-no-atoms-found-message" + > + No Atoms found! + </div> + </div> + </div> + </div> + <div + aria-controls="data-panel-id-:r19:" + aria-valuemax="70" + aria-valuemin="30" + aria-valuenow="50" + class="" + data-panel-group-direction="horizontal" + data-panel-group-id=":r17:" + data-panel-resize-handle-enabled="true" + data-panel-resize-handle-id=":r1d:" + role="separator" + style="cursor: col-resize; user-select: none;" + tabindex="0" + > + <div + class="mantine-1cmjlri" + > + <div + class="_jotai-devtools-internal-panel-resize-handle mantine-12yqcld" + /> + </div> + </div> + <div + class="" + data-panel="" + data-panel-id=":r1f:" + data-panel-size="50.0" + id="data-panel-id-:r1f:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-t78e42" + > + <div + class="mantine-1j5dnc2" + > + <div + class="mantine-Text-root mantine-kjyt4b" + > + Select an atom from the left panel to view the details + + </div> + </div> + </div> + </div> + </div> + </div> + </div> +</div> +`; + +exports[`DevTools - AtomViewer List of atoms Search should search for atoms correctly 1`] = ` +<div> + <div + class="mantine-Tabs-root jotai-devtools-shell mantine-xbm20l" + data-testid="jotai-devtools-shell" + > + <div + class="mantine-1gf2wvo" + data-testid="shell-resize-bar" + /> + <div + class="mantine-1yk50fa" + > + <div + class="mantine-4f8xjx" + > + <div + class="mantine-Group-root mantine-1pxhwx0" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-dfp0rc" + > + πŸ‘»Β Jōtai DevTools + </h1> + <div + class="mantine-Badge-root mantine-1wifcre" + > + <span + class="mantine-h9iq4m mantine-Badge-inner" + > + Alpha + </span> + </div> + </div> + <div + class="mantine-xg7kom" + > + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-1o23hru" + title="Toggle color scheme" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-moon-stars" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <path + d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" + /> + <path + d="M17 4a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2" + /> + <path + d="M19 11h2m-1 -1v2" + /> + </svg> + </button> + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-t0lmpu" + title="Minimize panel" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-minus" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <line + x1="5" + x2="19" + y1="12" + y2="12" + /> + </svg> + </button> + </div> + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-rp-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-rp-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" + > + <div + class="mantine-14swocp mantine-Tabs-tabIcon" + > + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> + </div> + </div> + <div + aria-labelledby="mantine-rp-tab-atom-viewer" + class="mantine-Tabs-panel mantine-klo26w" + id="mantine-rp-panel-atom-viewer" + role="tabpanel" + > + <div + class="" + data-panel-group="" + data-panel-group-direction="horizontal" + data-panel-group-id=":rr:" + style="display: flex; flex-direction: row; height: 100%; overflow: hidden; width: 100%;" + > + <div + class="" + data-panel="" + data-panel-id=":rt:" + data-panel-size="50.0" + id="data-panel-id-:rt:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-3a3njo" + > + <div + class="mantine-InputWrapper-root mantine-TextInput-root mantine-1bszv4u" + > + <label + class="mantine-InputWrapper-label mantine-TextInput-label mantine-ittua2" + for="mantine-rv" + id="mantine-rv-label" + > + Search + </label> + <div + class="mantine-Input-wrapper mantine-TextInput-wrapper mantine-12sbrde" + > + <input + aria-invalid="false" + class="mantine-Input-input mantine-TextInput-input mantine-1ub2244" + id="mantine-rv" + placeholder="atom debug label" + type="text" + value="count" + /> + </div> + </div> + <div + class="mantine-1gq3tre" + > + <button + class="mantine-UnstyledButton-root mantine-NavLink-root mantine-akuwoz" + type="button" + > + <span + class="mantine-1nksqbd mantine-NavLink-body" + > + <span + class="mantine-Text-root mantine-NavLink-label mantine-1lpq23f" + > + <div + class="mantine-Text-root mantine-1yre4n6" + > + countAtom + </div> + </span> + <span + class="mantine-Text-root mantine-NavLink-description mantine-zd66l8" + /> + </span> + <span + class="mantine-1vy961i mantine-NavLink-rightSection" + > + <svg + class="icon icon-tabler icon-tabler-chevron-right" + fill="none" + height="12" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="1.5" + viewBox="0 0 24 24" + width="12" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <polyline + points="9 6 15 12 9 18" + /> + </svg> + </span> + </button> + <div + aria-hidden="true" + class="mantine-1avyp1d" + style="box-sizing: border-box; display: none; height: 0px; overflow: hidden;" + > + <div + style="opacity: 0; transition: opacity 200ms ease;" + > + <div + class="mantine-35zpge mantine-NavLink-children" + /> + </div> + </div> + </div> + </div> + </div> + <div + aria-controls="data-panel-id-:rt:" + aria-valuemax="70" + aria-valuemin="30" + aria-valuenow="50" + class="" + data-panel-group-direction="horizontal" + data-panel-group-id=":rr:" + data-panel-resize-handle-enabled="true" + data-panel-resize-handle-id=":r11:" + role="separator" + style="cursor: col-resize; user-select: none;" + tabindex="0" + > + <div + class="mantine-1cmjlri" + > + <div + class="_jotai-devtools-internal-panel-resize-handle mantine-12yqcld" + /> + </div> + </div> + <div + class="" + data-panel="" + data-panel-id=":r13:" + data-panel-size="50.0" + id="data-panel-id-:r13:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-t78e42" + > + <div + class="mantine-1j5dnc2" + > + <div + class="mantine-Text-root mantine-kjyt4b" + > + Select an atom from the left panel to view the details + + </div> + </div> + </div> + </div> + </div> + </div> + </div> +</div> +`; + +exports[`DevTools - AtomViewer List of atoms should render atom viewer with correct atoms without provider 1`] = ` +<div> + <div + class="mantine-Tabs-root jotai-devtools-shell mantine-xbm20l" + data-testid="jotai-devtools-shell" + > + <div + class="mantine-1gf2wvo" + data-testid="shell-resize-bar" + /> + <div + class="mantine-1yk50fa" + > + <div + class="mantine-4f8xjx" + > + <div + class="mantine-Group-root mantine-1pxhwx0" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-dfp0rc" + > + πŸ‘»Β Jōtai DevTools + </h1> + <div + class="mantine-Badge-root mantine-1wifcre" + > + <span + class="mantine-h9iq4m mantine-Badge-inner" + > + Alpha + </span> + </div> + </div> + <div + class="mantine-xg7kom" + > + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-1o23hru" + title="Toggle color scheme" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-moon-stars" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <path + d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" + /> + <path + d="M17 4a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2" + /> + <path + d="M19 11h2m-1 -1v2" + /> + </svg> + </button> + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-t0lmpu" + title="Minimize panel" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-minus" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <line + x1="5" + x2="19" + y1="12" + y2="12" + /> + </svg> + </button> + </div> + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-rd-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-rd-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" + > + <div + class="mantine-14swocp mantine-Tabs-tabIcon" + > + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> + </div> + </div> + <div + aria-labelledby="mantine-rd-tab-atom-viewer" + class="mantine-Tabs-panel mantine-klo26w" + id="mantine-rd-panel-atom-viewer" + role="tabpanel" + > + <div + class="" + data-panel-group="" + data-panel-group-direction="horizontal" + data-panel-group-id=":rf:" + style="display: flex; flex-direction: row; height: 100%; overflow: hidden; width: 100%;" + > + <div + class="" + data-panel="" + data-panel-id=":rh:" + data-panel-size="50.0" + id="data-panel-id-:rh:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-3a3njo" + > + <div + class="mantine-InputWrapper-root mantine-TextInput-root mantine-1bszv4u" + > + <label + class="mantine-InputWrapper-label mantine-TextInput-label mantine-ittua2" + for="mantine-rj" + id="mantine-rj-label" + > + Search + </label> + <div + class="mantine-Input-wrapper mantine-TextInput-wrapper mantine-12sbrde" + > + <input + aria-invalid="false" + class="mantine-Input-input mantine-TextInput-input mantine-1ub2244" + id="mantine-rj" + placeholder="atom debug label" + type="text" + value="" + /> + </div> + </div> + <div + class="mantine-1gq3tre" + > + <button + class="mantine-UnstyledButton-root mantine-NavLink-root mantine-akuwoz" + type="button" + > + <span + class="mantine-1nksqbd mantine-NavLink-body" + > + <span + class="mantine-Text-root mantine-NavLink-label mantine-1lpq23f" + > + <div + class="mantine-Text-root mantine-1yre4n6" + > + countAtom + </div> + </span> + <span + class="mantine-Text-root mantine-NavLink-description mantine-zd66l8" + /> + </span> + <span + class="mantine-1vy961i mantine-NavLink-rightSection" + > + <svg + class="icon icon-tabler icon-tabler-chevron-right" + fill="none" + height="12" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="1.5" + viewBox="0 0 24 24" + width="12" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <polyline + points="9 6 15 12 9 18" + /> + </svg> + </span> + </button> + <div + aria-hidden="true" + class="mantine-1avyp1d" + style="box-sizing: border-box; display: none; height: 0px; overflow: hidden;" + > + <div + style="opacity: 0; transition: opacity 200ms ease;" + > + <div + class="mantine-35zpge mantine-NavLink-children" + /> + </div> + </div> + <button + class="mantine-UnstyledButton-root mantine-NavLink-root mantine-akuwoz" + type="button" + > + <span + class="mantine-1nksqbd mantine-NavLink-body" + > + <span + class="mantine-Text-root mantine-NavLink-label mantine-1lpq23f" + > + <div + class="mantine-Text-root mantine-1yre4n6" + > + <unlabeled-atom> + </div> + </span> + <span + class="mantine-Text-root mantine-NavLink-description mantine-zd66l8" + /> + </span> + <span + class="mantine-1vy961i mantine-NavLink-rightSection" + > + <svg + class="icon icon-tabler icon-tabler-chevron-right" + fill="none" + height="12" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="1.5" + viewBox="0 0 24 24" + width="12" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <polyline + points="9 6 15 12 9 18" + /> + </svg> + </span> + </button> + <div + aria-hidden="true" + class="mantine-1avyp1d" + style="box-sizing: border-box; display: none; height: 0px; overflow: hidden;" + > + <div + style="opacity: 0; transition: opacity 200ms ease;" + > + <div + class="mantine-35zpge mantine-NavLink-children" + /> + </div> + </div> + </div> + </div> + </div> + <div + aria-controls="data-panel-id-:rh:" + aria-valuemax="70" + aria-valuemin="30" + aria-valuenow="50" + class="" + data-panel-group-direction="horizontal" + data-panel-group-id=":rf:" + data-panel-resize-handle-enabled="true" + data-panel-resize-handle-id=":rl:" + role="separator" + style="cursor: col-resize; user-select: none;" + tabindex="0" + > + <div + class="mantine-1cmjlri" + > + <div + class="_jotai-devtools-internal-panel-resize-handle mantine-12yqcld" + /> + </div> + </div> + <div + class="" + data-panel="" + data-panel-id=":rn:" + data-panel-size="50.0" + id="data-panel-id-:rn:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-t78e42" + > + <div + class="mantine-1j5dnc2" + > + <div + class="mantine-Text-root mantine-kjyt4b" + > + Select an atom from the left panel to view the details + + </div> + </div> + </div> + </div> + </div> + </div> + </div> +</div> +`; + +exports[`DevTools - AtomViewer List of atoms should render atom viewer without any errors if there are no atoms 1`] = ` +<div> + <div + class="mantine-Tabs-root jotai-devtools-shell mantine-xbm20l" + data-testid="jotai-devtools-shell" + > + <div + class="mantine-1gf2wvo" + data-testid="shell-resize-bar" + /> + <div + class="mantine-1yk50fa" + > + <div + class="mantine-4f8xjx" + > + <div + class="mantine-Group-root mantine-1pxhwx0" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-dfp0rc" + > + πŸ‘»Β Jōtai DevTools + </h1> + <div + class="mantine-Badge-root mantine-1wifcre" + > + <span + class="mantine-h9iq4m mantine-Badge-inner" + > + Alpha + </span> + </div> + </div> + <div + class="mantine-xg7kom" + > + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-1o23hru" + title="Toggle color scheme" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-moon-stars" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <path + d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" + /> + <path + d="M17 4a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2" + /> + <path + d="M19 11h2m-1 -1v2" + /> + </svg> + </button> + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-t0lmpu" + title="Minimize panel" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-minus" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <line + x1="5" + x2="19" + y1="12" + y2="12" + /> + </svg> + </button> + </div> + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-r1-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-r1-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" + > + <div + class="mantine-14swocp mantine-Tabs-tabIcon" + > + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> + </div> + </div> + <div + aria-labelledby="mantine-r1-tab-atom-viewer" + class="mantine-Tabs-panel mantine-klo26w" + id="mantine-r1-panel-atom-viewer" + role="tabpanel" + > + <div + class="" + data-panel-group="" + data-panel-group-direction="horizontal" + data-panel-group-id=":r3:" + style="display: flex; flex-direction: row; height: 100%; overflow: hidden; width: 100%;" + > + <div + class="" + data-panel="" + data-panel-id=":r5:" + data-panel-size="50.0" + id="data-panel-id-:r5:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-3a3njo" + > + <div + class="mantine-InputWrapper-root mantine-TextInput-root mantine-1bszv4u" + > + <label + class="mantine-InputWrapper-label mantine-TextInput-label mantine-ittua2" + for="mantine-r7" + id="mantine-r7-label" + > + Search + </label> + <div + class="mantine-Input-wrapper mantine-TextInput-wrapper mantine-12sbrde" + > + <input + aria-invalid="false" + class="mantine-Input-input mantine-TextInput-input mantine-1ub2244" + id="mantine-r7" + placeholder="atom debug label" + type="text" + value="" + /> + </div> + </div> + <div + class="mantine-1gq3tre" + /> + <div + class="mantine-Group-root mantine-1p6trzd" + > + <svg + class="icon icon-tabler icon-tabler-alert-circle" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <circle + cx="12" + cy="12" + r="9" + /> + <line + x1="12" + x2="12" + y1="8" + y2="12" + /> + <line + x1="12" + x2="12.01" + y1="16" + y2="16" + /> + </svg> + <div + class="mantine-Text-root mantine-1fs6j1" + data-testid="atom-list-no-atoms-found-message" + > + No Atoms found! + </div> + </div> + </div> + </div> + <div + aria-controls="data-panel-id-:r5:" + aria-valuemax="70" + aria-valuemin="30" + aria-valuenow="50" + class="" + data-panel-group-direction="horizontal" + data-panel-group-id=":r3:" + data-panel-resize-handle-enabled="true" + data-panel-resize-handle-id=":r9:" + role="separator" + style="cursor: col-resize; user-select: none;" + tabindex="0" + > + <div + class="mantine-1cmjlri" + > + <div + class="_jotai-devtools-internal-panel-resize-handle mantine-12yqcld" + /> + </div> + </div> + <div + class="" + data-panel="" + data-panel-id=":rb:" + data-panel-size="50.0" + id="data-panel-id-:rb:" + style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" + > + <div + class="mantine-t78e42" + > + <div + class="mantine-1j5dnc2" + > + <div + class="mantine-Text-root mantine-kjyt4b" + > + Select an atom from the left panel to view the details + + </div> + </div> + </div> + </div> + </div> + </div> + </div> +</div> +`; diff --git a/__tests__/devtools/basic.test.tsx b/__tests__/devtools/basic.test.tsx new file mode 100644 index 00000000..97b1dc49 --- /dev/null +++ b/__tests__/devtools/basic.test.tsx @@ -0,0 +1,54 @@ +import React, { act, fireEvent, screen, waitFor } from '@testing-library/react'; +import userEvent from '@testing-library/user-event'; +import { DevTools } from 'jotai-devtools'; +import { customRender } from '../custom-render'; + +describe('DevTools - basic', () => { + it('should render the trigger button', () => { + customRender(<DevTools />); + expect(screen.getByTitle('Open Jotai Devtools')).toBeInTheDocument(); + }); + + it('should open the devtools upon clicking the button', async () => { + customRender(<DevTools />); + const foundButton = screen.getByTitle('Open Jotai Devtools'); + userEvent.click(foundButton); + + await waitFor(() => + expect(screen.getByText('πŸ‘» Jōtai DevTools')).toBeInTheDocument(), + ); + expect(screen.getByText('Atom Viewer')).toBeInTheDocument(); + expect( + screen.getByText( + 'Select an atom from the left panel to view the details', + ), + ).toBeInTheDocument(); + }); + + it('should resize the devtools upon dragging the resize bar', async () => { + customRender(<DevTools isInitialOpen={true} />); + + expect(document.body).toHaveStyle({ + paddingBottom: '370px', + }); + + expect(screen.getByTestId('jotai-devtools-shell')).toHaveStyle({ + height: '370px', + }); + + await act(async () => { + const resizeBar = screen.getByTestId('shell-resize-bar'); + await fireEvent.mouseDown(resizeBar, { clientY: 500 }); + await fireEvent.mouseMove(resizeBar, { clientY: 400 }); + await fireEvent.mouseUp(resizeBar, { clientY: 400 }); + }); + + expect(screen.getByTestId('jotai-devtools-shell')).toHaveStyle({ + height: '200px', + }); + + expect(document.body).toHaveStyle({ + paddingBottom: '200px', + }); + }); +}); diff --git a/__tests__/setup.ts b/__tests__/setup.ts new file mode 100644 index 00000000..ad939f93 --- /dev/null +++ b/__tests__/setup.ts @@ -0,0 +1,3 @@ +import * as ResizeObserverModule from 'resize-observer-polyfill'; + +(global as any).ResizeObserver = ResizeObserverModule.default; diff --git a/jest.config.ts b/jest.config.ts index df64664d..71d6841e 100644 --- a/jest.config.ts +++ b/jest.config.ts @@ -37,14 +37,24 @@ const config: Config.InitialOptions = { moduleNameMapper: { '^jotai-devtools$': '<rootDir>/src/index.ts', '^jotai-devtools/(.*)$': '<rootDir>/src/$1.ts', + '\\.(css|less|sass|scss)$': '<rootDir>/__mocks__/styleMock.js', }, modulePathIgnorePatterns: ['dist'], globals: { __DEV__: true, }, coverageReporters: ['json', 'html', 'text', 'text-summary'], - collectCoverageFrom: ['src/**/*.{js,ts,tsx}', '__tests__/**/*.{js,ts,tsx}'], + collectCoverageFrom: [ + 'src/**/*.{js,ts,tsx}', + '!src/**/*.stories.{js,ts,tsx}', + '!src/stories/**', + '__tests__/**/*.{js,ts,tsx}', + ], coverageDirectory: './coverage/', + setupFilesAfterEnv: [ + '@testing-library/jest-dom/extend-expect', + '<rootDir>/__tests__/setup.ts', + ], }; export default config; diff --git a/package.json b/package.json index 1cd92a4c..beea6ae6 100644 --- a/package.json +++ b/package.json @@ -102,7 +102,9 @@ "@storybook/testing-library": "^0.0.14-next.1", "@swc/core": "^1.3.25", "@swc/jest": "^0.2.24", + "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.4.0", + "@testing-library/user-event": "^14.4.3", "@types/jest": "^29.2.5", "@types/node": "^18.11.18", "@types/react": "^18.0.26", @@ -132,6 +134,7 @@ "react-dom": "^18.2.0", "redux": "^4.2.0", "release-it": "^15.6.0", + "resize-observer-polyfill": "^1.5.1", "rimraf": "^3.0.2", "shelljs": "^0.8.5", "storybook": "^7.0.0-beta.43", diff --git a/tsconfig.json b/tsconfig.json index 09ef1e40..4699494e 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -5,7 +5,9 @@ "./jest.config.ts", "__tests__/**/*", "types", - "tsup.config.ts" + "tsup.config.ts", + "jest", + "@testing-library/jest-dom" ], "exclude": ["node_modules", "dist"] } diff --git a/yarn.lock b/yarn.lock index bc41a086..90a656b8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,11 @@ # yarn lockfile v1 +"@adobe/css-tools@^4.0.1": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@adobe/css-tools/-/css-tools-4.1.0.tgz#417fef4a143f4396ad0b3b4351fee21323f15aa8" + integrity sha512-mMVJ/j/GbZ/De4ZHWbQAQO1J6iVnjtZLc9WEdkUQb8S/Bu2cAF2bETXUgMAdvMG3/ngtKmcNBe+Zms9bg6jnQQ== + "@ampproject/remapping@^2.1.0": version "2.2.0" resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" @@ -3136,6 +3141,21 @@ lz-string "^1.4.4" pretty-format "^27.0.2" +"@testing-library/jest-dom@^5.16.5": + version "5.16.5" + resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-5.16.5.tgz#3912846af19a29b2dbf32a6ae9c31ef52580074e" + integrity sha512-N5ixQ2qKpi5OLYfwQmUb/5mSV9LneAcaUfp32pn4yCnpb8r/Yz0pXFPck21dIicKmi+ta5WRAknkZCfA8refMA== + dependencies: + "@adobe/css-tools" "^4.0.1" + "@babel/runtime" "^7.9.2" + "@types/testing-library__jest-dom" "^5.9.1" + aria-query "^5.0.0" + chalk "^3.0.0" + css.escape "^1.5.1" + dom-accessibility-api "^0.5.6" + lodash "^4.17.15" + redent "^3.0.0" + "@testing-library/react@^13.4.0": version "13.4.0" resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-13.4.0.tgz#6a31e3bf5951615593ad984e96b9e5e2d9380966" @@ -3152,6 +3172,11 @@ dependencies: "@babel/runtime" "^7.12.5" +"@testing-library/user-event@^14.4.3": + version "14.4.3" + resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-14.4.3.tgz#af975e367743fa91989cd666666aec31a8f50591" + integrity sha512-kCUc5MEwaEMakkO5x7aoD+DLi02ehmEM2QCGWvNqAS1dV/fAvORWEjnjsEIvml59M7Y5kCkWN6fCCyPOe8OL6Q== + "@tootallnate/once@1": version "1.1.2" resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" @@ -3360,6 +3385,14 @@ dependencies: "@types/istanbul-lib-report" "*" +"@types/jest@*": + version "29.4.0" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.4.0.tgz#a8444ad1704493e84dbf07bb05990b275b3b9206" + integrity sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ== + dependencies: + expect "^29.0.0" + pretty-format "^29.0.0" + "@types/jest@^29.2.5": version "29.2.5" resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.2.5.tgz#c27f41a9d6253f288d1910d3c5f09484a56b73c0" @@ -3523,6 +3556,13 @@ resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== +"@types/testing-library__jest-dom@^5.9.1": + version "5.14.5" + resolved "https://registry.yarnpkg.com/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz#d113709c90b3c75fdb127ec338dad7d5f86c974f" + integrity sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ== + dependencies: + "@types/jest" "*" + "@types/tough-cookie@*": version "4.0.2" resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397" @@ -4647,6 +4687,14 @@ chalk@^2.0.0: escape-string-regexp "^1.0.5" supports-color "^5.3.0" +chalk@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" + integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" @@ -5286,6 +5334,11 @@ css-what@^6.0.1: resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== +css.escape@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb" + integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg== + cssesc@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" @@ -5584,6 +5637,11 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" +dom-accessibility-api@^0.5.6: + version "0.5.16" + resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz#5a7429e6066eb3664d911e33fb0e45de8eb08453" + integrity sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg== + dom-accessibility-api@^0.5.9: version "0.5.15" resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.15.tgz#357e74338704f36fada8b2e01a4bfc11ef436ac9" @@ -10387,6 +10445,11 @@ requires-port@^1.0.0: resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== +resize-observer-polyfill@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz#0e9020dd3d21024458d4ebd27e23e40269810464" + integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg== + resolve-alpn@^1.2.0: version "1.2.1" resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9" From a44e1308b5642795efc2b8544052dd75d0230f5e Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sun, 12 Feb 2023 13:20:44 -0500 Subject: [PATCH 26/45] refactor: add css classes to allow overriding styles --- src/DevTools/Extension/Extension.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/DevTools/Extension/Extension.tsx b/src/DevTools/Extension/Extension.tsx index 84866d31..2d022f39 100644 --- a/src/DevTools/Extension/Extension.tsx +++ b/src/DevTools/Extension/Extension.tsx @@ -34,6 +34,7 @@ const ShellTriggerButton = React.forwardRef<HTMLButtonElement>((_, ref) => { sx={shellTriggerButtonStyles} ref={ref} title="Open Jotai Devtools" + className="jotai-devtools-trigger-button" > <img src={logo} alt="Jotai Mascot" /> </ActionIcon> From 5667a059da325ee8d0452e5d097d4eb14ab97c5e Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sun, 12 Feb 2023 17:17:11 -0500 Subject: [PATCH 27/45] feat: add error boundary --- .eslintrc.js | 2 +- __tests__/devtools/AtomViewer.test.tsx | 3 +- .../__snapshots__/AtomViewer.test.tsx.snap | 756 +++++++++--------- .../__snapshots__/basic.test.tsx.snap | 509 ++++++++++++ __tests__/devtools/basic.test.tsx | 105 ++- package.json | 2 + src/DevTools/DevTools.tsx | 2 +- .../Extension/components/Shell/Shell.tsx | 30 +- .../components/MemoizedValueRenderer.tsx | 11 +- .../components/CodeSyntaxHighlighter.tsx | 12 + .../Shell/components/ErrorBoundary.tsx | 69 ++ .../Shell/components/Header/Header.tsx | 6 +- .../{Header/components => }/TabsHeader.tsx | 2 +- src/stories/Default/Demos/Random.tsx | 33 +- yarn.lock | 40 + 15 files changed, 1176 insertions(+), 406 deletions(-) create mode 100644 __tests__/devtools/__snapshots__/basic.test.tsx.snap create mode 100644 src/DevTools/Extension/components/Shell/components/CodeSyntaxHighlighter.tsx create mode 100644 src/DevTools/Extension/components/Shell/components/ErrorBoundary.tsx rename src/DevTools/Extension/components/Shell/components/{Header/components => }/TabsHeader.tsx (93%) diff --git a/.eslintrc.js b/.eslintrc.js index a7f0fcf8..7939b654 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -35,7 +35,7 @@ module.exports = { 'no-var': 'error', 'prefer-const': 'error', curly: ['warn', 'multi-line', 'consistent'], - 'no-console': 'off', + 'no-console': ['error', { allow: ['warn', 'info', 'error'] }], 'import/no-unresolved': [ 'error', { diff --git a/__tests__/devtools/AtomViewer.test.tsx b/__tests__/devtools/AtomViewer.test.tsx index 98d7c458..165e9475 100644 --- a/__tests__/devtools/AtomViewer.test.tsx +++ b/__tests__/devtools/AtomViewer.test.tsx @@ -1,8 +1,7 @@ import React, { useMemo } from 'react'; -import exp from 'constants'; import { act, render, screen, waitFor } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { atom, createStore, useAtomValue } from 'jotai'; +import { atom, useAtomValue } from 'jotai'; import { DevTools } from 'jotai-devtools'; import { AnyAtom } from 'src/types'; import { customRender } from '../custom-render'; diff --git a/__tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap b/__tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap index 76a8a265..9302ba4d 100644 --- a/__tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap +++ b/__tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap @@ -102,64 +102,64 @@ exports[`DevTools - AtomViewer Atom details Deep nested values should display at </button> </div> </div> - <div - aria-orientation="horizontal" - class="mantine-Tabs-tabsList mantine-o8x4z2" - role="tablist" + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-r8r-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-r8r-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" > - <button - aria-controls="mantine-r8r-panel-atom-viewer" - aria-selected="true" - class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" - data-active="true" - id="mantine-r8r-tab-atom-viewer" - role="tab" - tabindex="0" - type="button" + <div + class="mantine-14swocp mantine-Tabs-tabIcon" > - <div - class="mantine-14swocp mantine-Tabs-tabIcon" + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" > - <svg - class="icon icon-tabler icon-tabler-layout-list" + <path + d="M0 0h24v24H0z" fill="none" - height="14" - stroke="currentColor" - stroke-linecap="round" - stroke-linejoin="round" - stroke-width="2" - viewBox="0 0 24 24" - width="14" - xmlns="http://www.w3.org/2000/svg" - > - <path - d="M0 0h24v24H0z" - fill="none" - stroke="none" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="4" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="14" - /> - </svg> - </div> - <div - class="mantine-1s8spa1 mantine-Tabs-tabLabel" - > - Atom Viewer - </div> - </button> - </div> + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> </div> <div aria-labelledby="mantine-r8r-tab-atom-viewer" @@ -616,64 +616,64 @@ exports[`DevTools - AtomViewer Atom details Raw value should display atom detail </button> </div> </div> - <div - aria-orientation="horizontal" - class="mantine-Tabs-tabsList mantine-o8x4z2" - role="tablist" + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-r1h-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-r1h-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" > - <button - aria-controls="mantine-r1h-panel-atom-viewer" - aria-selected="true" - class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" - data-active="true" - id="mantine-r1h-tab-atom-viewer" - role="tab" - tabindex="0" - type="button" + <div + class="mantine-14swocp mantine-Tabs-tabIcon" > - <div - class="mantine-14swocp mantine-Tabs-tabIcon" + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" > - <svg - class="icon icon-tabler icon-tabler-layout-list" + <path + d="M0 0h24v24H0z" fill="none" - height="14" - stroke="currentColor" - stroke-linecap="round" - stroke-linejoin="round" - stroke-width="2" - viewBox="0 0 24 24" - width="14" - xmlns="http://www.w3.org/2000/svg" - > - <path - d="M0 0h24v24H0z" - fill="none" - stroke="none" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="4" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="14" - /> - </svg> - </div> - <div - class="mantine-1s8spa1 mantine-Tabs-tabLabel" - > - Atom Viewer - </div> - </button> - </div> + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> </div> <div aria-labelledby="mantine-r1h-tab-atom-viewer" @@ -1146,64 +1146,64 @@ exports[`DevTools - AtomViewer Atom details Raw value should display the depende </button> </div> </div> - <div - aria-orientation="horizontal" - class="mantine-Tabs-tabsList mantine-o8x4z2" - role="tablist" + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-r23-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-r23-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" > - <button - aria-controls="mantine-r23-panel-atom-viewer" - aria-selected="true" - class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" - data-active="true" - id="mantine-r23-tab-atom-viewer" - role="tab" - tabindex="0" - type="button" + <div + class="mantine-14swocp mantine-Tabs-tabIcon" > - <div - class="mantine-14swocp mantine-Tabs-tabIcon" + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" > - <svg - class="icon icon-tabler icon-tabler-layout-list" + <path + d="M0 0h24v24H0z" fill="none" - height="14" - stroke="currentColor" - stroke-linecap="round" - stroke-linejoin="round" - stroke-width="2" - viewBox="0 0 24 24" - width="14" - xmlns="http://www.w3.org/2000/svg" - > - <path - d="M0 0h24v24H0z" - fill="none" - stroke="none" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="4" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="14" - /> - </svg> - </div> - <div - class="mantine-1s8spa1 mantine-Tabs-tabLabel" - > - Atom Viewer - </div> - </button> - </div> + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> </div> <div aria-labelledby="mantine-r23-tab-atom-viewer" @@ -1660,64 +1660,64 @@ exports[`DevTools - AtomViewer List of atoms Search should display an error if n </button> </div> </div> - <div - aria-orientation="horizontal" - class="mantine-Tabs-tabsList mantine-o8x4z2" - role="tablist" + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-r15-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-r15-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" > - <button - aria-controls="mantine-r15-panel-atom-viewer" - aria-selected="true" - class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" - data-active="true" - id="mantine-r15-tab-atom-viewer" - role="tab" - tabindex="0" - type="button" + <div + class="mantine-14swocp mantine-Tabs-tabIcon" > - <div - class="mantine-14swocp mantine-Tabs-tabIcon" + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" > - <svg - class="icon icon-tabler icon-tabler-layout-list" + <path + d="M0 0h24v24H0z" fill="none" - height="14" - stroke="currentColor" - stroke-linecap="round" - stroke-linejoin="round" - stroke-width="2" - viewBox="0 0 24 24" - width="14" - xmlns="http://www.w3.org/2000/svg" - > - <path - d="M0 0h24v24H0z" - fill="none" - stroke="none" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="4" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="14" - /> - </svg> - </div> - <div - class="mantine-1s8spa1 mantine-Tabs-tabLabel" - > - Atom Viewer - </div> - </button> - </div> + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> </div> <div aria-labelledby="mantine-r15-tab-atom-viewer" @@ -1969,64 +1969,64 @@ exports[`DevTools - AtomViewer List of atoms Search should search for atoms corr </button> </div> </div> - <div - aria-orientation="horizontal" - class="mantine-Tabs-tabsList mantine-o8x4z2" - role="tablist" + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-rp-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-rp-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" > - <button - aria-controls="mantine-rp-panel-atom-viewer" - aria-selected="true" - class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" - data-active="true" - id="mantine-rp-tab-atom-viewer" - role="tab" - tabindex="0" - type="button" + <div + class="mantine-14swocp mantine-Tabs-tabIcon" > - <div - class="mantine-14swocp mantine-Tabs-tabIcon" + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" > - <svg - class="icon icon-tabler icon-tabler-layout-list" + <path + d="M0 0h24v24H0z" fill="none" - height="14" - stroke="currentColor" - stroke-linecap="round" - stroke-linejoin="round" - stroke-width="2" - viewBox="0 0 24 24" - width="14" - xmlns="http://www.w3.org/2000/svg" - > - <path - d="M0 0h24v24H0z" - fill="none" - stroke="none" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="4" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="14" - /> - </svg> - </div> - <div - class="mantine-1s8spa1 mantine-Tabs-tabLabel" - > - Atom Viewer - </div> - </button> - </div> + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> </div> <div aria-labelledby="mantine-rp-tab-atom-viewer" @@ -2293,64 +2293,64 @@ exports[`DevTools - AtomViewer List of atoms should render atom viewer with corr </button> </div> </div> - <div - aria-orientation="horizontal" - class="mantine-Tabs-tabsList mantine-o8x4z2" - role="tablist" + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-rd-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-rd-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" > - <button - aria-controls="mantine-rd-panel-atom-viewer" - aria-selected="true" - class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" - data-active="true" - id="mantine-rd-tab-atom-viewer" - role="tab" - tabindex="0" - type="button" + <div + class="mantine-14swocp mantine-Tabs-tabIcon" > - <div - class="mantine-14swocp mantine-Tabs-tabIcon" + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" > - <svg - class="icon icon-tabler icon-tabler-layout-list" + <path + d="M0 0h24v24H0z" fill="none" - height="14" - stroke="currentColor" - stroke-linecap="round" - stroke-linejoin="round" - stroke-width="2" - viewBox="0 0 24 24" - width="14" - xmlns="http://www.w3.org/2000/svg" - > - <path - d="M0 0h24v24H0z" - fill="none" - stroke="none" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="4" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="14" - /> - </svg> - </div> - <div - class="mantine-1s8spa1 mantine-Tabs-tabLabel" - > - Atom Viewer - </div> - </button> - </div> + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> </div> <div aria-labelledby="mantine-rd-tab-atom-viewer" @@ -2676,64 +2676,64 @@ exports[`DevTools - AtomViewer List of atoms should render atom viewer without a </button> </div> </div> - <div - aria-orientation="horizontal" - class="mantine-Tabs-tabsList mantine-o8x4z2" - role="tablist" + </div> + <div + aria-orientation="horizontal" + class="mantine-Tabs-tabsList mantine-o8x4z2" + role="tablist" + > + <button + aria-controls="mantine-r1-panel-atom-viewer" + aria-selected="true" + class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" + data-active="true" + id="mantine-r1-tab-atom-viewer" + role="tab" + tabindex="0" + type="button" > - <button - aria-controls="mantine-r1-panel-atom-viewer" - aria-selected="true" - class="mantine-UnstyledButton-root mantine-Tabs-tab mantine-1dmajq3" - data-active="true" - id="mantine-r1-tab-atom-viewer" - role="tab" - tabindex="0" - type="button" + <div + class="mantine-14swocp mantine-Tabs-tabIcon" > - <div - class="mantine-14swocp mantine-Tabs-tabIcon" + <svg + class="icon icon-tabler icon-tabler-layout-list" + fill="none" + height="14" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="14" + xmlns="http://www.w3.org/2000/svg" > - <svg - class="icon icon-tabler icon-tabler-layout-list" + <path + d="M0 0h24v24H0z" fill="none" - height="14" - stroke="currentColor" - stroke-linecap="round" - stroke-linejoin="round" - stroke-width="2" - viewBox="0 0 24 24" - width="14" - xmlns="http://www.w3.org/2000/svg" - > - <path - d="M0 0h24v24H0z" - fill="none" - stroke="none" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="4" - /> - <rect - height="6" - rx="2" - width="16" - x="4" - y="14" - /> - </svg> - </div> - <div - class="mantine-1s8spa1 mantine-Tabs-tabLabel" - > - Atom Viewer - </div> - </button> - </div> + stroke="none" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="4" + /> + <rect + height="6" + rx="2" + width="16" + x="4" + y="14" + /> + </svg> + </div> + <div + class="mantine-1s8spa1 mantine-Tabs-tabLabel" + > + Atom Viewer + </div> + </button> </div> <div aria-labelledby="mantine-r1-tab-atom-viewer" diff --git a/__tests__/devtools/__snapshots__/basic.test.tsx.snap b/__tests__/devtools/__snapshots__/basic.test.tsx.snap new file mode 100644 index 00000000..f672a456 --- /dev/null +++ b/__tests__/devtools/__snapshots__/basic.test.tsx.snap @@ -0,0 +1,509 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`DevTools - basic Error boundary should display an error boundary with message if stack is not present 1`] = ` +<div> + <div + class="mantine-Tabs-root jotai-devtools-shell mantine-xbm20l" + data-testid="jotai-devtools-shell" + > + <div + class="mantine-1gf2wvo" + data-testid="shell-resize-bar" + /> + <div + class="mantine-1yk50fa" + > + <div + class="mantine-4f8xjx" + > + <div + class="mantine-Group-root mantine-1pxhwx0" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-dfp0rc" + > + πŸ‘»Β Jōtai DevTools + </h1> + <div + class="mantine-Badge-root mantine-1wifcre" + > + <span + class="mantine-h9iq4m mantine-Badge-inner" + > + Alpha + </span> + </div> + </div> + <div + class="mantine-xg7kom" + > + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-1o23hru" + title="Toggle color scheme" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-moon-stars" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <path + d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" + /> + <path + d="M17 4a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2" + /> + <path + d="M19 11h2m-1 -1v2" + /> + </svg> + </button> + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-t0lmpu" + title="Minimize panel" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-minus" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <line + x1="5" + x2="19" + y1="12" + y2="12" + /> + </svg> + </button> + </div> + </div> + </div> + <div + class="mantine-jsu0ax" + data-testid="jotai-devtools-error-boundary" + role="alert" + > + <div + class="mantine-iqssko" + > + <div + class="mantine-Text-root mantine-1gfx3yr" + > + <div + class="mantine-Text-root mantine-1ejuzh1" + > + <svg + class="icon icon-tabler icon-tabler-alert-circle" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <circle + cx="12" + cy="12" + r="9" + /> + <line + x1="12" + x2="12" + y1="8" + y2="12" + /> + <line + x1="12" + x2="12.01" + y1="16" + y2="16" + /> + </svg> + </div> + Uh-oh, something went wrong. + </div> + <div + class="mantine-Text-root mantine-1ngacsz" + > + If you believe this to be a bug, please file an issue on + + <a + class="mantine-Text-root mantine-Anchor-root mantine-o6qwyk" + href="https://github.com/jotaijs/jotai-devtools/issues" + rel="noreferrer noopener" + target="_blank" + > + Jotai DevTool's GitHub repo + </a> + + with a minimal reproduction and the following error + </div> + <div + class="mantine-Prism-root mantine-12sbrde" + translate="no" + > + <button + aria-label="Copy code" + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-Prism-copy mantine-r1ykzi" + type="button" + > + <svg + fill="none" + height="15" + viewBox="0 0 15 15" + width="15" + xmlns="http://www.w3.org/2000/svg" + > + <path + clip-rule="evenodd" + d="M5 2V1H10V2H5ZM4.75 0C4.33579 0 4 0.335786 4 0.75V1H3.5C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H11.5C12.3284 14 13 13.3284 13 12.5V2.5C13 1.67157 12.3284 1 11.5 1H11V0.75C11 0.335786 10.6642 0 10.25 0H4.75ZM11 2V2.25C11 2.66421 10.6642 3 10.25 3H4.75C4.33579 3 4 2.66421 4 2.25V2H3.5C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V2.5C12 2.22386 11.7761 2 11.5 2H11Z" + fill="currentColor" + fill-rule="evenodd" + /> + </svg> + </button> + <div + class="mantine-ScrollArea-root mantine-Prism-scrollArea mantine-1j1ni8n" + dir="ltr" + style="position: relative; --radix-scroll-area-corner-width: 0px; --radix-scroll-area-corner-height: 0px;" + > + <style> + [data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none} + </style> + <div + class="mantine-xlwgkm mantine-ScrollArea-viewport" + data-radix-scroll-area-viewport="" + style="overflow-x: scroll; overflow-y: scroll;" + > + <div + style="min-width: 100%; display: table;" + > + <pre + class="mantine-1r2c9o1 mantine-Prism-code prism-code language-javascript" + dir="ltr" + style="color: rgb(33, 37, 41); background-color: rgba(248, 249, 250, 0.65);" + > + <div + class="mantine-1e8ljqt mantine-Prism-line token-line" + > + <div + class="mantine-26ugy1 mantine-Prism-lineContent" + > + <span + class="token maybe-class-name" + > + Test + </span> + <span + class="token plain" + > + + </span> + <span + class="token known-class-name class-name" + style="color: rgb(201, 42, 42);" + > + Error + </span> + </div> + </div> + </pre> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + <button> + trigger error + </button> +</div> +`; + +exports[`DevTools - basic Error boundary should display an error boundary with stack 1`] = ` +<div> + <div + class="mantine-Tabs-root jotai-devtools-shell mantine-xbm20l" + data-testid="jotai-devtools-shell" + > + <div + class="mantine-1gf2wvo" + data-testid="shell-resize-bar" + /> + <div + class="mantine-1yk50fa" + > + <div + class="mantine-4f8xjx" + > + <div + class="mantine-Group-root mantine-1pxhwx0" + > + <h1 + class="mantine-Text-root mantine-Title-root mantine-dfp0rc" + > + πŸ‘»Β Jōtai DevTools + </h1> + <div + class="mantine-Badge-root mantine-1wifcre" + > + <span + class="mantine-h9iq4m mantine-Badge-inner" + > + Alpha + </span> + </div> + </div> + <div + class="mantine-xg7kom" + > + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-1o23hru" + title="Toggle color scheme" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-moon-stars" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <path + d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" + /> + <path + d="M17 4a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2" + /> + <path + d="M19 11h2m-1 -1v2" + /> + </svg> + </button> + <button + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-t0lmpu" + title="Minimize panel" + type="button" + > + <svg + class="icon icon-tabler icon-tabler-minus" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <line + x1="5" + x2="19" + y1="12" + y2="12" + /> + </svg> + </button> + </div> + </div> + </div> + <div + class="mantine-jsu0ax" + data-testid="jotai-devtools-error-boundary" + role="alert" + > + <div + class="mantine-iqssko" + > + <div + class="mantine-Text-root mantine-1gfx3yr" + > + <div + class="mantine-Text-root mantine-1ejuzh1" + > + <svg + class="icon icon-tabler icon-tabler-alert-circle" + fill="none" + height="16" + stroke="currentColor" + stroke-linecap="round" + stroke-linejoin="round" + stroke-width="2" + viewBox="0 0 24 24" + width="16" + xmlns="http://www.w3.org/2000/svg" + > + <path + d="M0 0h24v24H0z" + fill="none" + stroke="none" + /> + <circle + cx="12" + cy="12" + r="9" + /> + <line + x1="12" + x2="12" + y1="8" + y2="12" + /> + <line + x1="12" + x2="12.01" + y1="16" + y2="16" + /> + </svg> + </div> + Uh-oh, something went wrong. + </div> + <div + class="mantine-Text-root mantine-1ngacsz" + > + If you believe this to be a bug, please file an issue on + + <a + class="mantine-Text-root mantine-Anchor-root mantine-o6qwyk" + href="https://github.com/jotaijs/jotai-devtools/issues" + rel="noreferrer noopener" + target="_blank" + > + Jotai DevTool's GitHub repo + </a> + + with a minimal reproduction and the following error + </div> + <div + class="mantine-Prism-root mantine-12sbrde" + translate="no" + > + <button + aria-label="Copy code" + class="mantine-UnstyledButton-root mantine-ActionIcon-root mantine-Prism-copy mantine-r1ykzi" + type="button" + > + <svg + fill="none" + height="15" + viewBox="0 0 15 15" + width="15" + xmlns="http://www.w3.org/2000/svg" + > + <path + clip-rule="evenodd" + d="M5 2V1H10V2H5ZM4.75 0C4.33579 0 4 0.335786 4 0.75V1H3.5C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H11.5C12.3284 14 13 13.3284 13 12.5V2.5C13 1.67157 12.3284 1 11.5 1H11V0.75C11 0.335786 10.6642 0 10.25 0H4.75ZM11 2V2.25C11 2.66421 10.6642 3 10.25 3H4.75C4.33579 3 4 2.66421 4 2.25V2H3.5C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V2.5C12 2.22386 11.7761 2 11.5 2H11Z" + fill="currentColor" + fill-rule="evenodd" + /> + </svg> + </button> + <div + class="mantine-ScrollArea-root mantine-Prism-scrollArea mantine-1j1ni8n" + dir="ltr" + style="position: relative; --radix-scroll-area-corner-width: 0px; --radix-scroll-area-corner-height: 0px;" + > + <style> + [data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none} + </style> + <div + class="mantine-xlwgkm mantine-ScrollArea-viewport" + data-radix-scroll-area-viewport="" + style="overflow-x: scroll; overflow-y: scroll;" + > + <div + style="min-width: 100%; display: table;" + > + <pre + class="mantine-1r2c9o1 mantine-Prism-code prism-code language-javascript" + dir="ltr" + style="color: rgb(33, 37, 41); background-color: rgba(248, 249, 250, 0.65);" + > + <div + class="mantine-1e8ljqt mantine-Prism-line token-line" + > + <div + class="mantine-26ugy1 mantine-Prism-lineContent" + > + <span + class="token plain" + > + some + </span> + <span + class="token operator" + style="color: rgb(201, 42, 42);" + > + - + </span> + <span + class="token plain" + > + stack + </span> + </div> + </div> + </pre> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + <button> + trigger error + </button> +</div> +`; diff --git a/__tests__/devtools/basic.test.tsx b/__tests__/devtools/basic.test.tsx index 97b1dc49..c3b2e98a 100644 --- a/__tests__/devtools/basic.test.tsx +++ b/__tests__/devtools/basic.test.tsx @@ -1,5 +1,7 @@ -import React, { act, fireEvent, screen, waitFor } from '@testing-library/react'; +import React, { useMemo } from 'react'; +import { act, fireEvent, screen, waitFor } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; +import { atom, useAtom, useAtomValue } from 'jotai'; import { DevTools } from 'jotai-devtools'; import { customRender } from '../custom-render'; @@ -51,4 +53,105 @@ describe('DevTools - basic', () => { paddingBottom: '200px', }); }); + + describe('Error boundary', () => { + const ogConsoleError = console.error; + + beforeEach(() => { + console.error = jest.fn(); + }); + + afterEach(() => { + console.error = ogConsoleError; + jest.resetAllMocks(); + jest.restoreAllMocks(); + }); + + const ComponentThatThrows = () => { + const baseErrorAtom = useMemo(() => atom(0), []); + + const triggerErrorAtom = useMemo( + () => + atom( + (get) => { + const val = get(baseErrorAtom); + if (val >= 1) { + const randomFn = function () {}; + randomFn.toString = () => { + throw new Error('Test Error'); + }; + return randomFn; + } + + return val; + }, + (get, set) => set(baseErrorAtom, (prev) => prev + 1), + ), + [baseErrorAtom], + ); + + triggerErrorAtom.debugLabel = 'triggerErrorAtom'; + + const [, triggerError] = useAtom(triggerErrorAtom); + return ( + <> + <DevTools isInitialOpen={true} /> + <button onClick={triggerError}>trigger error</button> + </> + ); + }; + + it('should display an error boundary with stack ', async () => { + const ogErrorSpy = jest.spyOn(global, 'Error'); + ogErrorSpy.mockImplementation((message) => { + return { + name: 'Error', + message, + stack: 'some-stack', + } as Error; + }); + const { container } = customRender(<ComponentThatThrows />); + + await act(async () => { + await userEvent.click(screen.getByText('triggerErrorAtom')); + await userEvent.click(screen.getByText('trigger error')); + }); + + expect( + screen.getByTestId('jotai-devtools-error-boundary'), + ).toBeInTheDocument(); + + expect( + screen.getByTestId('jotai-devtools-error-boundary'), + ).toHaveTextContent('some-stack'); + + expect(container).toMatchSnapshot(); + }); + + it('should display an error boundary with message if stack is not present ', async () => { + const ogErrorSpy = jest.spyOn(global, 'Error'); + ogErrorSpy.mockImplementation((message) => { + return { + name: 'Error', + message, + } as Error; + }); + const { container } = customRender(<ComponentThatThrows />); + + await act(async () => { + await userEvent.click(screen.getByText('triggerErrorAtom')); + await userEvent.click(screen.getByText('trigger error')); + }); + + expect( + screen.getByTestId('jotai-devtools-error-boundary'), + ).toBeInTheDocument(); + + expect( + screen.getByTestId('jotai-devtools-error-boundary'), + ).toHaveTextContent('Test Error'); + + expect(container).toMatchSnapshot(); + }); + }); }); diff --git a/package.json b/package.json index beea6ae6..aa1a5d56 100644 --- a/package.json +++ b/package.json @@ -155,7 +155,9 @@ "@mantine/prism": "^5.10.3", "@redux-devtools/extension": "^3.2.3", "@tabler/icons": "^1.119.0", + "react-error-boundary": "^3.1.4", "react-resizable-panels": "^0.0.35", + "stacktracey": "^2.1.8", "superjson": "^1.12.2" } } diff --git a/src/DevTools/DevTools.tsx b/src/DevTools/DevTools.tsx index a238ea2b..956f684e 100644 --- a/src/DevTools/DevTools.tsx +++ b/src/DevTools/DevTools.tsx @@ -12,8 +12,8 @@ import { useSetDevToolsOptions, } from './atoms/devtools-options'; import { Extension, ExtensionProps } from './Extension'; -import { InternalDevToolsContext } from './internal-jotai-store'; import './fonts'; +import { InternalDevToolsContext } from './internal-jotai-store'; const theme: MantineThemeOverride = { primaryColor: 'dark', diff --git a/src/DevTools/Extension/components/Shell/Shell.tsx b/src/DevTools/Extension/components/Shell/Shell.tsx index 42b57065..8fc515f0 100644 --- a/src/DevTools/Extension/components/Shell/Shell.tsx +++ b/src/DevTools/Extension/components/Shell/Shell.tsx @@ -7,8 +7,10 @@ import { useSetCustomStore } from '../../../atoms/user-custom-store'; import { TabKeys, shellStyleDefaults } from '../../../constants'; import { useDevtoolsJotaiStoreOptions } from '../../../internal-jotai-store'; import { AtomViewer } from './components/AtomViewer'; +import { ErrorBoundary } from './components/ErrorBoundary'; import { Header } from './components/Header'; import { ShellResizeBar } from './components/ShellResizeBar'; +import { TabsHeader } from './components/TabsHeader'; import { shellStyles } from './styles'; type ShellProps = { @@ -52,19 +54,21 @@ export const Shell = ({ store }: ShellProps) => { > <ShellResizeBar shellRef={shellRef} /> <Header /> - - <Tabs.Panel - value={TabKeys.AtomViewer} - h="100%" - sx={{ - overflow: 'hidden', - // Hide the overlap of this div's bg - borderBottomLeftRadius: '7px', - borderBottomRightRadius: '7px', - }} - > - <AtomViewer /> - </Tabs.Panel> + <ErrorBoundary> + <TabsHeader /> + <Tabs.Panel + value={TabKeys.AtomViewer} + h="100%" + sx={{ + overflow: 'hidden', + // Hide the overlap of this div's bg + borderBottomLeftRadius: '7px', + borderBottomRightRadius: '7px', + }} + > + <AtomViewer /> + </Tabs.Panel> + </ErrorBoundary> </Tabs> ); }; diff --git a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx index 832c3c3a..c1425b9d 100644 --- a/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx +++ b/src/DevTools/Extension/components/Shell/components/AtomViewer/components/AtomDetail/components/MemoizedValueRenderer.tsx @@ -1,7 +1,10 @@ import * as React from 'react'; -import { Prism, PrismProps } from '@mantine/prism'; import { AnyAtomValue } from 'src/types'; import { getTypeOfAtomValue } from '../../../../../../../../utils'; +import { + CodeSyntaxHighlighter, + CodeSyntaxHighlighterProps, +} from '../../../../CodeSyntaxHighlighter'; // List of types to render in JavaScript syntax const javaScriptLanguageTypes = [ @@ -15,7 +18,7 @@ const javaScriptLanguageTypes = [ export const getPrismLanguageType = ( atomValue: AnyAtomValue, -): PrismProps['language'] => { +): CodeSyntaxHighlighterProps['language'] => { const type = getTypeOfAtomValue(atomValue); if (javaScriptLanguageTypes.includes(type)) { @@ -33,14 +36,14 @@ type MemoizedValueRendererProps = { export const MemoizedValueRenderer = React.memo( ({ prismLanguageType, value }: MemoizedValueRendererProps): JSX.Element => { return ( - <Prism + <CodeSyntaxHighlighter language={prismLanguageType} mb={10} copyLabel="Copy value" data-testid="atom-parsed-value" > {value} - </Prism> + </CodeSyntaxHighlighter> ); }, ); diff --git a/src/DevTools/Extension/components/Shell/components/CodeSyntaxHighlighter.tsx b/src/DevTools/Extension/components/Shell/components/CodeSyntaxHighlighter.tsx new file mode 100644 index 00000000..d0efede1 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/CodeSyntaxHighlighter.tsx @@ -0,0 +1,12 @@ +import * as React from 'react'; +import { Prism, PrismProps } from '@mantine/prism'; + +// Omit "getPrismTheme" prop because we'll apply a custom component-wide theme here +export type CodeSyntaxHighlighterProps = Omit<PrismProps, 'getPrismTheme'>; + +export const CodeSyntaxHighlighter = ({ + children, + ...rest +}: React.PropsWithChildren<CodeSyntaxHighlighterProps>) => { + return <Prism {...rest}>{children}</Prism>; +}; diff --git a/src/DevTools/Extension/components/Shell/components/ErrorBoundary.tsx b/src/DevTools/Extension/components/Shell/components/ErrorBoundary.tsx new file mode 100644 index 00000000..c272e360 --- /dev/null +++ b/src/DevTools/Extension/components/Shell/components/ErrorBoundary.tsx @@ -0,0 +1,69 @@ +import * as React from 'react'; +import { Anchor, Box, Flex, Sx, Text } from '@mantine/core'; +import { IconAlertCircle } from '@tabler/icons'; +import { + FallbackProps, + ErrorBoundary as ReactErrorBoundary, +} from 'react-error-boundary'; +import { useThemeMode } from '../../../../hooks/useThemeMode'; +import { CodeSyntaxHighlighter } from './CodeSyntaxHighlighter'; + +const textStyles: Sx = { + display: 'flex', + alignItems: 'center', +}; + +const ErrorFallback = ({ error }: FallbackProps) => { + if (Error?.stackTraceLimit) { + Error.stackTraceLimit = 5; + } + + Error?.captureStackTrace?.(error); + + const themedRedColor = useThemeMode('red.8', 'red.5'); + + return ( + <Flex + role="alert" + justify="center" + align="center" + h="90%" + sx={{ overflow: 'scroll' }} + data-testid="jotai-devtools-error-boundary" + > + <Box w="100%" maw="80%" mah="80%"> + <Text size="md" fw="500" color={themedRedColor} sx={textStyles} mb={5}> + <Text mr={5} sx={textStyles}> + <IconAlertCircle size={16} /> + </Text> + Uh-oh, something went wrong. + </Text> + + <Text size="sm" color={themedRedColor} mb="sm"> + If you believe this to be a bug, please file an issue on{' '} + <Anchor + href="https://github.com/jotaijs/jotai-devtools/issues" + color={themedRedColor} + td="underline" + target="_blank" + rel="noreferrer noopener" + > + Jotai DevTool's GitHub repo + </Anchor>{' '} + with a minimal reproduction and the following error + </Text> + <CodeSyntaxHighlighter language="javascript"> + {error.stack?.toString() || error.message} + </CodeSyntaxHighlighter> + </Box> + </Flex> + ); +}; + +export const ErrorBoundary = ({ children }: React.PropsWithChildren) => { + return ( + <ReactErrorBoundary FallbackComponent={ErrorFallback}> + {children} + </ReactErrorBoundary> + ); +}; diff --git a/src/DevTools/Extension/components/Shell/components/Header/Header.tsx b/src/DevTools/Extension/components/Shell/components/Header/Header.tsx index 96839160..c78cf462 100644 --- a/src/DevTools/Extension/components/Shell/components/Header/Header.tsx +++ b/src/DevTools/Extension/components/Shell/components/Header/Header.tsx @@ -1,10 +1,9 @@ -import { memo } from 'react'; +import * as React from 'react'; import { ActionIcon, Badge, Box, Flex, Group, Sx, Title } from '@mantine/core'; import { IconMinus } from '@tabler/icons'; import { useSetAtom } from 'jotai/react'; import { isShellOpenAtom } from '../../../../../atoms/is-shell-open-atom'; import { useDevtoolsJotaiStoreOptions } from '../../../../../internal-jotai-store'; -import { TabsHeader } from './components/TabsHeader'; import { ThemeToggle } from './components/ThemeToggle'; const headerStyles: Sx = { @@ -16,7 +15,7 @@ const headerStyles: Sx = { const logoStyles: Sx = { userSelect: 'none' }; -export const Header = memo(() => { +export const Header = React.memo(() => { const setIsShellOpen = useSetAtom( isShellOpenAtom, useDevtoolsJotaiStoreOptions(), @@ -51,7 +50,6 @@ export const Header = memo(() => { </ActionIcon> </Flex> </Flex> - <TabsHeader /> </Box> ); }); diff --git a/src/DevTools/Extension/components/Shell/components/Header/components/TabsHeader.tsx b/src/DevTools/Extension/components/Shell/components/TabsHeader.tsx similarity index 93% rename from src/DevTools/Extension/components/Shell/components/Header/components/TabsHeader.tsx rename to src/DevTools/Extension/components/Shell/components/TabsHeader.tsx index c3e8e5af..c9e3fae9 100644 --- a/src/DevTools/Extension/components/Shell/components/Header/components/TabsHeader.tsx +++ b/src/DevTools/Extension/components/Shell/components/TabsHeader.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { Tabs } from '@mantine/core'; import { IconLayoutList } from '@tabler/icons'; -import { TabKeys } from '../../../../../../constants'; +import { TabKeys } from '../../../../constants'; export const TabsHeader = React.memo(() => { return ( diff --git a/src/stories/Default/Demos/Random.tsx b/src/stories/Default/Demos/Random.tsx index f0b7f2aa..5e25bc84 100644 --- a/src/stories/Default/Demos/Random.tsx +++ b/src/stories/Default/Demos/Random.tsx @@ -1,5 +1,5 @@ import * as React from 'react'; -import { Box, Button, Code, Title } from '@mantine/core'; +import { Box, Button, Code, Divider, Title } from '@mantine/core'; import { useAtom, useAtomValue } from 'jotai/react'; import { atom } from 'jotai/vanilla'; import { demoStoreOptions } from './demo-store'; @@ -38,8 +38,28 @@ nestedObjectAtom.debugLabel = 'nestedObjectAtom'; const atomsInAtomsCountAtom = atom(atom(atom((get) => get(countAtom)))); atomsInAtomsCountAtom.debugLabel = 'atomsInAtomsCountAtom'; +const baseErrorAtom = atom(0); +const triggerErrorAtom = atom( + (get) => { + const val = get(baseErrorAtom); + if (val >= 1) { + const randomFn = function () {}; + randomFn.toString = () => { + throw new Error('Random error'); + }; + return randomFn; + } + + return val; + }, + (get, set) => { + return set(baseErrorAtom, (prev) => prev + 1); + }, +); +triggerErrorAtom.debugLabel = 'triggerErrorAtom'; export const Random = () => { const [count, setCount] = useAtom(countAtom, demoStoreOptions); + const [, setError] = useAtom(triggerErrorAtom, demoStoreOptions); // We're not displaying these values on the UI // eslint-disable-next-line @typescript-eslint/no-unused-vars useAtomValue(nestedObjectAtom, demoStoreOptions); @@ -72,6 +92,17 @@ export const Random = () => { > Add 1 </Button> + <Divider size="sm" my="lg" /> + <Button + display="block" + mt={5} + onClick={setError} + size="xs" + uppercase + color="red.8" + > + Trigger error πŸ’₯ + </Button> </Box> ); }; diff --git a/yarn.lock b/yarn.lock index 90a656b8..adb3d3bb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4184,6 +4184,13 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== +as-table@^1.0.36: + version "1.0.55" + resolved "https://registry.yarnpkg.com/as-table/-/as-table-1.0.55.tgz#dc984da3937745de902cea1d45843c01bdbbec4f" + integrity sha512-xvsWESUJn0JN421Xb9MQw6AsMHRCUknCe0Wjlxvjud80mU4E6hQf1A6NzQKcYNmYw62MfzEtXc+badstZP3JpQ== + dependencies: + printable-characters "^1.0.42" + assert@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/assert/-/assert-2.0.0.tgz#95fc1c616d48713510680f2eaf2d10dd22e02d32" @@ -5381,6 +5388,11 @@ data-uri-to-buffer@3: resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz#594b8973938c5bc2c33046535785341abc4f3636" integrity sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og== +data-uri-to-buffer@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-2.0.2.tgz#d296973d5a4897a5dbe31716d118211921f04770" + integrity sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA== + data-uri-to-buffer@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz#d8feb2b2881e6a4f58c2e08acfd0e2834e26222e" @@ -6916,6 +6928,14 @@ get-port@^5.1.1: resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== +get-source@^2.0.12: + version "2.0.12" + resolved "https://registry.yarnpkg.com/get-source/-/get-source-2.0.12.tgz#0b47d57ea1e53ce0d3a69f4f3d277eb8047da944" + integrity sha512-X5+4+iD+HoSeEED+uwrQ07BOQr0kEDFMVqqpBuI+RaZBpBpHCuXxo70bjar6f0b0u/DQJsJ7ssurpP0V60Az+w== + dependencies: + data-uri-to-buffer "^2.0.0" + source-map "^0.6.1" + get-stream@^6.0.0, get-stream@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" @@ -9874,6 +9894,11 @@ pretty-hrtime@^1.0.3: resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" integrity sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A== +printable-characters@^1.0.42: + version "1.0.42" + resolved "https://registry.yarnpkg.com/printable-characters/-/printable-characters-1.0.42.tgz#3f18e977a9bd8eb37fcc4ff5659d7be90868b3d8" + integrity sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ== + prism-react-renderer@^1.2.1: version "1.3.5" resolved "https://registry.yarnpkg.com/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz#786bb69aa6f73c32ba1ee813fbe17a0115435085" @@ -10105,6 +10130,13 @@ react-element-to-jsx-string@^15.0.0: is-plain-object "5.0.0" react-is "18.1.0" +react-error-boundary@^3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/react-error-boundary/-/react-error-boundary-3.1.4.tgz#255db92b23197108757a888b01e5b729919abde0" + integrity sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA== + dependencies: + "@babel/runtime" "^7.12.5" + react-inspector@^6.0.0: version "6.0.1" resolved "https://registry.yarnpkg.com/react-inspector/-/react-inspector-6.0.1.tgz#1a37f0165d9df81ee804d63259eaaeabe841287d" @@ -10971,6 +11003,14 @@ stackframe@^1.3.4: resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.3.4.tgz#b881a004c8c149a5e8efef37d51b16e412943310" integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw== +stacktracey@^2.1.8: + version "2.1.8" + resolved "https://registry.yarnpkg.com/stacktracey/-/stacktracey-2.1.8.tgz#bf9916020738ce3700d1323b32bd2c91ea71199d" + integrity sha512-Kpij9riA+UNg7TnphqjH7/CzctQ/owJGNbFkfEeve4Z4uxT5+JapVLFXcsurIfN34gnTWZNJ/f7NMG0E8JDzTw== + dependencies: + as-table "^1.0.36" + get-source "^2.0.12" + statuses@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" From ba2147f2a367eece0fac12a5327fe9cb72f280d6 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Sun, 12 Feb 2023 17:22:19 -0500 Subject: [PATCH 28/45] chore: release v0.3.0-next.2 --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e4c06e80..24f4344e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +# [0.3.0-next.2](https://github.com/jotai-labs/jotai-devtools/compare/v0.3.0-next.1...v0.3.0-next.2) (2023-02-12) + +### Features + +- add error boundary + ([5667a05](https://github.com/jotai-labs/jotai-devtools/commit/5667a059da325ee8d0452e5d097d4eb14ab97c5e)) + # [0.3.0-next.1](https://github.com/jotai-labs/jotai-devtools/compare/v0.3.0-next.0...v0.3.0-next.1) (2023-02-10) ### Bug Fixes diff --git a/package.json b/package.json index aa1a5d56..a459a972 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jotai-devtools", - "version": "0.3.0-next.1", + "version": "0.3.0-next.2", "description": "A powerful toolkit to enhance your development experience with Jotai", "author": { "name": "Arjun Vegda", From baf00c3867026c06e030088cbf16c6d9d0ba6231 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Wed, 15 Feb 2023 21:26:54 -0500 Subject: [PATCH 29/45] chore: add storybook playground --- package.json | 1 + .../Default/Playground/Playground.stories.tsx | 77 +++++++++++++++++++ src/stories/Default/Playground/Playground.tsx | 70 +++++++++++++++++ yarn.lock | 2 +- 4 files changed, 149 insertions(+), 1 deletion(-) create mode 100644 src/stories/Default/Playground/Playground.stories.tsx create mode 100644 src/stories/Default/Playground/Playground.tsx diff --git a/package.json b/package.json index a459a972..01ad21d2 100644 --- a/package.json +++ b/package.json @@ -136,6 +136,7 @@ "release-it": "^15.6.0", "resize-observer-polyfill": "^1.5.1", "rimraf": "^3.0.2", + "rxjs": "^7.8.0", "shelljs": "^0.8.5", "storybook": "^7.0.0-beta.43", "tsup": "^6.5.0", diff --git a/src/stories/Default/Playground/Playground.stories.tsx b/src/stories/Default/Playground/Playground.stories.tsx new file mode 100644 index 00000000..17c9ec2e --- /dev/null +++ b/src/stories/Default/Playground/Playground.stories.tsx @@ -0,0 +1,77 @@ +import React from 'react'; +import { MantineProvider } from '@mantine/core'; +import { Meta, StoryObj } from '@storybook/react'; +import { DevTools, DevToolsProps } from '../../../DevTools'; +import { Playground } from './Playground'; + +export default { + component: DevTools, + title: 'DevtoolsPlayground', + argTypes: { + store: { + control: { + type: false, + }, + }, + options: { + control: { + type: false, + }, + }, + }, +} as Meta; + +type CustomStorybookProps = DevToolsProps & { + 'options.atomValueParser': 'raw' | 'deep-nested'; +}; + +type Story = StoryObj<CustomStorybookProps>; + +export const Default: Story = { + render: ({ ...args }) => { + const nextOptions = { + ...args.options, + atomValueParser: args['options.atomValueParser'], + }; + const props = { + ...args, + options: nextOptions, + }; + return ( + <MantineProvider + withNormalizeCSS + withGlobalStyles + theme={{ + primaryColor: 'dark', + cursorType: 'pointer', + }} + > + <DevTools {...props} /> + <Playground /> + </MantineProvider> + ); + }, + args: { + isInitialOpen: true, + 'options.atomValueParser': 'raw', + }, + argTypes: { + store: { + control: { + type: false, + }, + }, + options: { + control: { + type: false, + }, + }, + 'options.atomValueParser': { + label: 'Atom Value Parser', + options: ['raw', 'deep-nested'], + control: { + type: 'radio', + }, + }, + }, +}; diff --git a/src/stories/Default/Playground/Playground.tsx b/src/stories/Default/Playground/Playground.tsx new file mode 100644 index 00000000..ac11aa4c --- /dev/null +++ b/src/stories/Default/Playground/Playground.tsx @@ -0,0 +1,70 @@ +import * as React from 'react'; +import { Title } from '@mantine/core'; +import { atom } from 'jotai'; +import { + atomWithDefault, + atomWithObservable, + loadable, + splitAtom, + unstable_unwrap as unwrap, +} from 'jotai/vanilla/utils'; +import { interval } from 'rxjs'; +import { count, map } from 'rxjs/operators'; + +const baseCountAtom = atom(1); +baseCountAtom.debugLabel = 'baseCountAtom'; + +const countAtomWithDefaultAtom = atomWithDefault( + (get) => get(baseCountAtom) * 2, +); +countAtomWithDefaultAtom.debugLabel = 'countAtomWithDefaultAtom'; + +const counterSubject = interval(1000).pipe(map((i) => `#${i}`)); +const counterAtom = atomWithObservable(() => counterSubject); +counterAtom.debugLabel = 'counterAtom'; + +const asyncAtom = atom(async (get) => { + return new Promise((resolve) => { + const timer = window.setTimeout(() => { + clearTimeout(timer); + resolve('Resolved data'); + }, 1000); + }); +}); + +asyncAtom.debugLabel = 'asyncAtom'; + +const loadableAtom = loadable(asyncAtom); +loadableAtom.debugLabel = 'loadableAtom'; + +const someRandomArray = [ + { + id: 1, + name: 'John', + }, + { + id: 2, + name: 'Jane', + }, +]; + +const arrayAtom = atom(someRandomArray); +arrayAtom.debugLabel = 'arrayAtom'; + +const splitAtomAtom = splitAtom(arrayAtom); +splitAtomAtom.debugLabel = 'splitAtomAtom'; + +const asyncArrayAtom = atom(async () => someRandomArray); +asyncArrayAtom.debugLabel = 'asyncArrayAtom'; + +const splitAsyncAtom = splitAtom(unwrap(asyncArrayAtom, () => [])); +splitAsyncAtom.debugLabel = 'splitAsyncAtom'; + +export const Playground = () => { + return ( + <> + <Title>Playground + {count} + + ); +}; diff --git a/yarn.lock b/yarn.lock index adb3d3bb..e16fc961 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10612,7 +10612,7 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -rxjs@^7.5.7: +rxjs@^7.5.7, rxjs@^7.8.0: version "7.8.0" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.0.tgz#90a938862a82888ff4c7359811a595e14e1e09a4" integrity sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg== From 8ddad63821ce825b8871a14e7a6cc37eb2c93622 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Thu, 16 Feb 2023 10:18:04 -0500 Subject: [PATCH 30/45] fix: infer options type from Jotai --- src/types.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/types.ts b/src/types.ts index 35a41b24..10c3d0a3 100644 --- a/src/types.ts +++ b/src/types.ts @@ -1,10 +1,9 @@ +import { useStore } from 'jotai/react'; import type { Atom, createStore } from 'jotai/vanilla'; export type Store = ReturnType; -export type Options = { - store?: Store; -}; +export type Options = Parameters[0]; export type AnyAtomValue = unknown; export type AnyAtom = Atom; From 6c9cbdffa020e9f15e1e0198d18eefae0b2e4f28 Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Thu, 16 Feb 2023 15:35:42 -0500 Subject: [PATCH 31/45] fix: use exactOptionalPropertyTypes --- src/DevTools/DevTools.tsx | 2 +- src/DevTools/Extension/Extension.tsx | 6 ++---- src/DevTools/Extension/components/Shell/Shell.tsx | 4 ++-- src/DevTools/internal-jotai-store.ts | 10 ++++++++-- tsconfig.build.json | 1 + 5 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/DevTools/DevTools.tsx b/src/DevTools/DevTools.tsx index 956f684e..8a065a1d 100644 --- a/src/DevTools/DevTools.tsx +++ b/src/DevTools/DevTools.tsx @@ -48,7 +48,7 @@ export type DevToolsProps = ExtensionProps & { const DevToolsMain = ({ store, - isInitialOpen, + isInitialOpen = false, theme: userColorScheme = 'light', options, }: DevToolsProps): JSX.Element => { diff --git a/src/DevTools/Extension/Extension.tsx b/src/DevTools/Extension/Extension.tsx index 2d022f39..75f0dc3f 100644 --- a/src/DevTools/Extension/Extension.tsx +++ b/src/DevTools/Extension/Extension.tsx @@ -1,12 +1,11 @@ import * as React from 'react'; import { ActionIcon, Sx } from '@mantine/core'; import { useAtom, useSetAtom } from 'jotai/react'; -import { Store } from 'src/types'; import { isShellOpenAtom } from '../atoms/is-shell-open-atom'; import { useThemeMode } from '../hooks/useThemeMode'; import { useDevtoolsJotaiStoreOptions } from '../internal-jotai-store'; import { logo } from './assets/logo'; -import { Shell } from './components/Shell'; +import { Shell, ShellProps } from './components/Shell'; const shellTriggerButtonStyles: Sx = () => ({ position: 'fixed', @@ -41,10 +40,9 @@ const ShellTriggerButton = React.forwardRef((_, ref) => { ); }); -export type ExtensionProps = { +export type ExtensionProps = ShellProps & { // false by default isInitialOpen?: boolean; - store?: Store; }; export const Extension = ({ diff --git a/src/DevTools/Extension/components/Shell/Shell.tsx b/src/DevTools/Extension/components/Shell/Shell.tsx index 8fc515f0..3eb4ace5 100644 --- a/src/DevTools/Extension/components/Shell/Shell.tsx +++ b/src/DevTools/Extension/components/Shell/Shell.tsx @@ -13,8 +13,8 @@ import { ShellResizeBar } from './components/ShellResizeBar'; import { TabsHeader } from './components/TabsHeader'; import { shellStyles } from './styles'; -type ShellProps = { - store?: Store; +export type ShellProps = { + store?: Store | undefined; }; export const Shell = ({ store }: ShellProps) => { diff --git a/src/DevTools/internal-jotai-store.ts b/src/DevTools/internal-jotai-store.ts index dadac45d..074f8882 100644 --- a/src/DevTools/internal-jotai-store.ts +++ b/src/DevTools/internal-jotai-store.ts @@ -9,8 +9,14 @@ export const InternalDevToolsContext = createContext( undefined, ); -export const useInternalStore = (): Store | undefined => { - return useContext(InternalDevToolsContext); +export const useInternalStore = (): Store => { + const store = useContext(InternalDevToolsContext); + if (!store) { + throw new Error( + `Unable to find internal Jotai store, Did you wrap the component within DevToolsProvider?`, + ); + } + return store; }; export const useDevtoolsJotaiStoreOptions = () => ({ diff --git a/tsconfig.build.json b/tsconfig.build.json index 930909a6..b6ec541e 100644 --- a/tsconfig.build.json +++ b/tsconfig.build.json @@ -12,6 +12,7 @@ "typeRoots": ["./node_modules/@types", "./types/*"], "sourceMap": true, "forceConsistentCasingInFileNames": true, + "exactOptionalPropertyTypes": true, "isolatedModules": true, "baseUrl": ".", "paths": { From f222d5d9c21b9b75b88647d4cc41fb5c1c5aacee Mon Sep 17 00:00:00 2001 From: Arjun <14841132+arjunvegda@users.noreply.github.com> Date: Thu, 16 Feb 2023 15:38:23 -0500 Subject: [PATCH 32/45] test: add emotion snapshot serializer --- .../__snapshots__/AtomViewer.test.tsx.snap | 7881 ++++++++++++++++- .../__snapshots__/basic.test.tsx.snap | 1456 ++- jest.config.ts | 1 + package.json | 1 + yarn.lock | 24 + 5 files changed, 8985 insertions(+), 378 deletions(-) diff --git a/__tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap b/__tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap index 9302ba4d..42ecedc8 100644 --- a/__tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap +++ b/__tests__/devtools/__snapshots__/AtomViewer.test.tsx.snap @@ -1,44 +1,1274 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`DevTools - AtomViewer Atom details Deep nested values should display atom details with deeply parsed value when an atom is selected 1`] = ` +.emotion-1 { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + position: fixed; + left: 0; + bottom: 0; + width: calc(100% - 20px); + border-color: #dee2e6; + border-width: 1px; + border-style: solid; + border-radius: 8px; + background: #fff; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + z-index: 99999; + margin: 10px; + height: 370px; + max-height: 90%; +} + +.emotion-2 { + width: 100%; + height: 5px; + cursor: row-resize; + z-index: 2; + position: absolute; + top: -2px; +} + +.emotion-3 { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1; + width: 100%; +} + +.emotion-4 { + padding: 10px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -webkit-justify-content: space-between; + justify-content: space-between; +} + +.emotion-6 { + box-sizing: border-box; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + gap: 16px; + margin-right: 10px; +} + +.emotion-6>* { + box-sizing: border-box; + -webkit-box-flex: 0; + -webkit-flex-grow: 0; + -ms-flex-positive: 0; + flex-grow: 0; +} + +.emotion-9 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji; + font-weight: 700; + font-size: 18px; + line-height: 1.45; + margin: 0; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.emotion-9:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-9:focus:not(:focus-visible) { + outline: none; +} + +.emotion-11 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + font-size: 9px; + height: 16px; + line-height: 14px; + -webkit-text-decoration: none; + text-decoration: none; + padding: 0 6.666666666666667px; + box-sizing: border-box; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + width: auto; + text-transform: uppercase; + border-radius: 32px; + font-weight: 700; + letter-spacing: 0.25px; + cursor: inherit; + text-overflow: ellipsis; + overflow: hidden; + background: rgba(255, 244, 230, 1); + color: #fd7e14; + border: 1px solid transparent; +} + +.emotion-11:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-11:focus:not(:focus-visible) { + outline: none; +} + +.emotion-12 { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.emotion-14 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.emotion-17 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: #25262b; + color: #fff; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 4px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; +} + +.emotion-17:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-17:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-17:hover { + background-color: #1A1B1E; + } +} + +@media (hover: none) { + .emotion-17:active { + background-color: #1A1B1E; + } +} + +.emotion-17:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-17:disabled, +.emotion-17[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-17:disabled:active, +.emotion-17[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-17[data-loading] { + pointer-events: none; +} + +.emotion-17[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 4px; + cursor: not-allowed; +} + +.emotion-20 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: transparent; + color: #868e96; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 8px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + margin-left: 10px; +} + +.emotion-20:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-20:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-20:hover { + background-color: rgba(248, 249, 250, 1); + } +} + +@media (hover: none) { + .emotion-20:active { + background-color: rgba(248, 249, 250, 1); + } +} + +.emotion-20:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-20:disabled, +.emotion-20[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-20:disabled:active, +.emotion-20[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-20[data-loading] { + pointer-events: none; +} + +.emotion-20[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 8px; + cursor: not-allowed; +} + +.emotion-22 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + border-bottom: 2px solid #dee2e6; +} + +.emotion-25 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + position: relative; + padding: 10px 16px; + padding-left: 10px; + font-size: 14px; + white-space: nowrap; + z-index: 0; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + line-height: 1; + border-bottom: 2px solid transparent; + margin-bottom: -2px; + border-radius: 4px 4px 0 0; +} + +.emotion-25:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-25:focus:not(:focus-visible) { + outline: none; +} + +.emotion-25:disabled { + opacity: 0.5; + cursor: not-allowed; +} + +@media (hover: hover) { + .emotion-25:disabled:hover { + background-color: transparent; + } +} + +@media (hover: none) { + .emotion-25:disabled:active { + background-color: transparent; + } +} + +.emotion-25:focus { + z-index: 1; +} + +@media (hover: hover) { + .emotion-25:hover { + background-color: #f8f9fa; + border-color: #dee2e6; + } +} + +@media (hover: none) { + .emotion-25:active { + background-color: #f8f9fa; + border-color: #dee2e6; + } +} + +.emotion-25[data-active] { + border-color: #25262b; + color: #000; +} + +@media (hover: hover) { + .emotion-25[data-active]:hover { + border-color: #25262b; + } +} + +@media (hover: none) { + .emotion-25[data-active]:active { + border-color: #25262b; + } +} + +.emotion-26 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.emotion-26:not(:only-child) { + margin-right: 7px; +} + +.emotion-31 { + height: 100%; + overflow: hidden; + border-bottom-left-radius: 7px; + border-bottom-right-radius: 7px; +} + +.emotion-32 { + padding: 10px; + padding-top: 0; + height: 100%; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + background: #e9ecef; +} + +.emotion-35 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + line-height: 1.55; + position: -webkit-sticky; + position: sticky; + top: 0; + padding-top: 10px; + padding-bottom: 10px; +} + +.emotion-38 { + display: inline-block; + font-size: 14px; + font-weight: 500; + color: #212529; + word-break: break-word; + cursor: default; + -webkit-tap-highlight-color: transparent; +} + +.emotion-41 { + position: relative; +} + +.emotion-44 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + height: 36px; + -webkit-tap-highlight-color: transparent; + line-height: 34px; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + resize: none; + box-sizing: border-box; + font-size: 14px; + width: 100%; + color: #000; + display: block; + text-align: left; + min-height: 36px; + padding-left: 12px; + padding-right: 12px; + border-radius: 4px; + border: 1px solid #ced4da; + background-color: #fff; + -webkit-transition: border-color 100ms ease; + transition: border-color 100ms ease; +} + +.emotion-44:disabled { + background-color: #f1f3f5; + color: #909296; + opacity: 0.6; + cursor: not-allowed; +} + +.emotion-44:disabled::-webkit-input-placeholder { + color: #909296; +} + +.emotion-44:disabled::-moz-placeholder { + color: #909296; +} + +.emotion-44:disabled:-ms-input-placeholder { + color: #909296; +} + +.emotion-44:disabled::placeholder { + color: #909296; +} + +.emotion-44::-webkit-input-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::-moz-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44:-ms-input-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::-webkit-inner-spin-button, +.emotion-44::-webkit-outer-spin-button, +.emotion-44::-webkit-search-decoration, +.emotion-44::-webkit-search-cancel-button, +.emotion-44::-webkit-search-results-button, +.emotion-44::-webkit-search-results-decoration { + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; +} + +.emotion-44[type=number] { + -moz-appearance: textfield; +} + +.emotion-44:focus, +.emotion-44:focus-within { + outline: none; + border-color: #25262b; +} + +.emotion-45 { + overflow: auto; +} + +.emotion-48 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: 100%; + padding: 8px 12px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + font-family: JetBrains Mono; + border-radius: 5px; +} + +.emotion-48:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-48:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-48:hover { + background-color: #f8f9fa; + } +} + +@media (hover: none) { + .emotion-48:active { + background-color: #f8f9fa; + } +} + +.emotion-48[data-active] { + background-color: #25262b; + color: #fff; +} + +@media (hover: hover) { + .emotion-48[data-active]:hover { + background-color: #1A1B1E; + } +} + +@media (hover: none) { + .emotion-48[data-active]:active { + background-color: #1A1B1E; + } +} + +.emotion-48[data-disabled] { + opacity: 0.4; + pointer-events: none; +} + +.emotion-49 { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; + overflow: hidden; + text-overflow: ellipsis; +} + +.emotion-53 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: 14px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; +} + +.emotion-53:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-53:focus:not(:focus-visible) { + outline: none; +} + +.emotion-55 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: JetBrains Mono; +} + +.emotion-55:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-55:focus:not(:focus-visible) { + outline: none; +} + +.emotion-58 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: #868e96; + font-size: 12px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + display: block; +} + +.emotion-58:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-58:focus:not(:focus-visible) { + outline: none; +} + +.emotion-58[data-active] { + color: inherit; +} + +.emotion-59 { + margin-left: 12px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-transition: -webkit-transform 150ms ease; + transition: transform 150ms ease; +} + +.emotion-59[data-rotate] { + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} + +.emotion-62 { + padding-left: 20px; +} + +.emotion-82 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + padding: 5; + height: 100%; +} + +.emotion-82 ._jotai-devtools-internal-panel-resize-handle { + -webkit-transition: max-height,min-height,height,0.2s ease-out; + transition: max-height,min-height,height,0.2s ease-out; +} + +[data-resize-handle-active] .emotion-82 ._jotai-devtools-internal-panel-resize-handle, +.emotion-82:hover ._jotai-devtools-internal-panel-resize-handle { + height: 90%; + min-height: 90%; + max-height: 90%; +} + +.emotion-83 { + border-radius: 2rem; + vertical-align: middle; + margin: 5px; + background: #dee2e6; + width: 5px; + height: 20%; + min-height: 50px; + max-height: 100px; +} + +.emotion-84 { + padding: 10px; + height: 100%; + position: relative; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; +} + +.emotion-86 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: stretch; + -webkit-box-align: stretch; + -ms-flex-align: stretch; + align-items: stretch; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + gap: 16px; + height: auto; +} + +.emotion-90 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji; + font-weight: 700; + font-size: 22px; + line-height: 1.4; + margin: 0; + margin-bottom: 10px; +} + +.emotion-90:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-90:focus:not(:focus-visible) { + outline: none; +} + +.emotion-92 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-bottom: 10px; + font-weight: bold; +} + +.emotion-92:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-92:focus:not(:focus-visible) { + outline: none; +} + +.emotion-93 { + margin-bottom: 10px; +} + +.emotion-95 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: #868e96; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-size: 10px; + font-weight: bold; + text-transform: uppercase; +} + +.emotion-95:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-95:focus:not(:focus-visible) { + outline: none; +} + +.emotion-97 { + font-family: JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace; + line-height: 1.55; + padding: 2px calc(10px / 2); + border-radius: 4px; + color: #1A1B1E; + background-color: rgba(248, 249, 250, 1); + font-size: 12px; +} + +.emotion-105 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-bottom: 12px; + font-weight: bold; +} + +.emotion-105:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-105:focus:not(:focus-visible) { + outline: none; +} + +.emotion-107 { + position: relative; + margin-bottom: 10px; +} + +.emotion-111 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: transparent; + color: #868e96; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 4px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + position: absolute; + top: 10px; + right: 10px; + left: unset; + z-index: 2; +} + +.emotion-111:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-111:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-111:hover { + background-color: rgba(248, 249, 250, 1); + } +} + +@media (hover: none) { + .emotion-111:active { + background-color: rgba(248, 249, 250, 1); + } +} + +.emotion-111:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-111:disabled, +.emotion-111[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-111:disabled:active, +.emotion-111[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-111[data-loading] { + pointer-events: none; +} + +.emotion-111[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 4px; + cursor: not-allowed; +} + +.emotion-111, +.emotion-111:hover { + background-color: #f8f9fa; +} + +.emotion-114 { + overflow: hidden; +} + +.emotion-115 { + width: 100%; + height: 100%; +} + +.emotion-117 { + box-sizing: border-box; + position: relative; + font-family: JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace; + line-height: 1.7; + font-size: 13px; + border-radius: 4px; + padding: 12px 0; + margin-top: 0; + margin-bottom: 0; +} + +.emotion-119 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + width: 100%; + padding: 0 16px; +} + +.emotion-121 { + width: 100%; +} + +.emotion-125 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 20px; + margin-bottom: 10px; + font-weight: bold; +} + +.emotion-125:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-125:focus:not(:focus-visible) { + outline: none; +} + +.emotion-127 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: 14px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-bottom: 10px; +} + +.emotion-127:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-127:focus:not(:focus-visible) { + outline: none; +} +

πŸ‘»Β Jōtai DevTools

Alpha
@@ -183,24 +1413,24 @@ exports[`DevTools - AtomViewer Atom details Deep nested values should display at style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" >
@@ -460,7 +1690,7 @@ exports[`DevTools - AtomViewer Atom details Deep nested values should display at [data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}
@@ -468,15 +1698,15 @@ exports[`DevTools - AtomViewer Atom details Deep nested values should display at style="min-width: 100%; display: table;" >
                           
Dependents
No dependents
@@ -514,45 +1744,1286 @@ exports[`DevTools - AtomViewer Atom details Deep nested values should display at
`; -exports[`DevTools - AtomViewer Atom details Raw value should display atom details when an atom is selected 1`] = ` +exports[`DevTools - AtomViewer Atom details Raw value should display atom details when an atom is selected 1`] = ` +.emotion-1 { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + position: fixed; + left: 0; + bottom: 0; + width: calc(100% - 20px); + border-color: #dee2e6; + border-width: 1px; + border-style: solid; + border-radius: 8px; + background: #fff; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + z-index: 99999; + margin: 10px; + height: 370px; + max-height: 90%; +} + +.emotion-2 { + width: 100%; + height: 5px; + cursor: row-resize; + z-index: 2; + position: absolute; + top: -2px; +} + +.emotion-3 { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1; + width: 100%; +} + +.emotion-4 { + padding: 10px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -webkit-justify-content: space-between; + justify-content: space-between; +} + +.emotion-6 { + box-sizing: border-box; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + gap: 16px; + margin-right: 10px; +} + +.emotion-6>* { + box-sizing: border-box; + -webkit-box-flex: 0; + -webkit-flex-grow: 0; + -ms-flex-positive: 0; + flex-grow: 0; +} + +.emotion-9 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji; + font-weight: 700; + font-size: 18px; + line-height: 1.45; + margin: 0; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.emotion-9:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-9:focus:not(:focus-visible) { + outline: none; +} + +.emotion-11 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + font-size: 9px; + height: 16px; + line-height: 14px; + -webkit-text-decoration: none; + text-decoration: none; + padding: 0 6.666666666666667px; + box-sizing: border-box; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + width: auto; + text-transform: uppercase; + border-radius: 32px; + font-weight: 700; + letter-spacing: 0.25px; + cursor: inherit; + text-overflow: ellipsis; + overflow: hidden; + background: rgba(255, 244, 230, 1); + color: #fd7e14; + border: 1px solid transparent; +} + +.emotion-11:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-11:focus:not(:focus-visible) { + outline: none; +} + +.emotion-12 { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.emotion-14 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.emotion-17 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: #25262b; + color: #fff; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 4px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; +} + +.emotion-17:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-17:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-17:hover { + background-color: #1A1B1E; + } +} + +@media (hover: none) { + .emotion-17:active { + background-color: #1A1B1E; + } +} + +.emotion-17:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-17:disabled, +.emotion-17[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-17:disabled:active, +.emotion-17[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-17[data-loading] { + pointer-events: none; +} + +.emotion-17[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 4px; + cursor: not-allowed; +} + +.emotion-20 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: transparent; + color: #868e96; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 8px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + margin-left: 10px; +} + +.emotion-20:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-20:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-20:hover { + background-color: rgba(248, 249, 250, 1); + } +} + +@media (hover: none) { + .emotion-20:active { + background-color: rgba(248, 249, 250, 1); + } +} + +.emotion-20:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-20:disabled, +.emotion-20[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-20:disabled:active, +.emotion-20[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-20[data-loading] { + pointer-events: none; +} + +.emotion-20[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 8px; + cursor: not-allowed; +} + +.emotion-22 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + border-bottom: 2px solid #dee2e6; +} + +.emotion-25 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + position: relative; + padding: 10px 16px; + padding-left: 10px; + font-size: 14px; + white-space: nowrap; + z-index: 0; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + line-height: 1; + border-bottom: 2px solid transparent; + margin-bottom: -2px; + border-radius: 4px 4px 0 0; +} + +.emotion-25:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-25:focus:not(:focus-visible) { + outline: none; +} + +.emotion-25:disabled { + opacity: 0.5; + cursor: not-allowed; +} + +@media (hover: hover) { + .emotion-25:disabled:hover { + background-color: transparent; + } +} + +@media (hover: none) { + .emotion-25:disabled:active { + background-color: transparent; + } +} + +.emotion-25:focus { + z-index: 1; +} + +@media (hover: hover) { + .emotion-25:hover { + background-color: #f8f9fa; + border-color: #dee2e6; + } +} + +@media (hover: none) { + .emotion-25:active { + background-color: #f8f9fa; + border-color: #dee2e6; + } +} + +.emotion-25[data-active] { + border-color: #25262b; + color: #000; +} + +@media (hover: hover) { + .emotion-25[data-active]:hover { + border-color: #25262b; + } +} + +@media (hover: none) { + .emotion-25[data-active]:active { + border-color: #25262b; + } +} + +.emotion-26 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.emotion-26:not(:only-child) { + margin-right: 7px; +} + +.emotion-31 { + height: 100%; + overflow: hidden; + border-bottom-left-radius: 7px; + border-bottom-right-radius: 7px; +} + +.emotion-32 { + padding: 10px; + padding-top: 0; + height: 100%; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + background: #e9ecef; +} + +.emotion-35 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + line-height: 1.55; + position: -webkit-sticky; + position: sticky; + top: 0; + padding-top: 10px; + padding-bottom: 10px; +} + +.emotion-38 { + display: inline-block; + font-size: 14px; + font-weight: 500; + color: #212529; + word-break: break-word; + cursor: default; + -webkit-tap-highlight-color: transparent; +} + +.emotion-41 { + position: relative; +} + +.emotion-44 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + height: 36px; + -webkit-tap-highlight-color: transparent; + line-height: 34px; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + resize: none; + box-sizing: border-box; + font-size: 14px; + width: 100%; + color: #000; + display: block; + text-align: left; + min-height: 36px; + padding-left: 12px; + padding-right: 12px; + border-radius: 4px; + border: 1px solid #ced4da; + background-color: #fff; + -webkit-transition: border-color 100ms ease; + transition: border-color 100ms ease; +} + +.emotion-44:disabled { + background-color: #f1f3f5; + color: #909296; + opacity: 0.6; + cursor: not-allowed; +} + +.emotion-44:disabled::-webkit-input-placeholder { + color: #909296; +} + +.emotion-44:disabled::-moz-placeholder { + color: #909296; +} + +.emotion-44:disabled:-ms-input-placeholder { + color: #909296; +} + +.emotion-44:disabled::placeholder { + color: #909296; +} + +.emotion-44::-webkit-input-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::-moz-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44:-ms-input-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::-webkit-inner-spin-button, +.emotion-44::-webkit-outer-spin-button, +.emotion-44::-webkit-search-decoration, +.emotion-44::-webkit-search-cancel-button, +.emotion-44::-webkit-search-results-button, +.emotion-44::-webkit-search-results-decoration { + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; +} + +.emotion-44[type=number] { + -moz-appearance: textfield; +} + +.emotion-44:focus, +.emotion-44:focus-within { + outline: none; + border-color: #25262b; +} + +.emotion-45 { + overflow: auto; +} + +.emotion-48 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: 100%; + padding: 8px 12px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + font-family: JetBrains Mono; + border-radius: 5px; +} + +.emotion-48:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-48:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-48:hover { + background-color: #f8f9fa; + } +} + +@media (hover: none) { + .emotion-48:active { + background-color: #f8f9fa; + } +} + +.emotion-48[data-active] { + background-color: #25262b; + color: #fff; +} + +@media (hover: hover) { + .emotion-48[data-active]:hover { + background-color: #1A1B1E; + } +} + +@media (hover: none) { + .emotion-48[data-active]:active { + background-color: #1A1B1E; + } +} + +.emotion-48[data-disabled] { + opacity: 0.4; + pointer-events: none; +} + +.emotion-49 { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; + overflow: hidden; + text-overflow: ellipsis; +} + +.emotion-53 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: 14px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; +} + +.emotion-53:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-53:focus:not(:focus-visible) { + outline: none; +} + +.emotion-55 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: JetBrains Mono; +} + +.emotion-55:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-55:focus:not(:focus-visible) { + outline: none; +} + +.emotion-58 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: #868e96; + font-size: 12px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + display: block; +} + +.emotion-58:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-58:focus:not(:focus-visible) { + outline: none; +} + +.emotion-58[data-active] { + color: inherit; +} + +.emotion-59 { + margin-left: 12px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-transition: -webkit-transform 150ms ease; + transition: transform 150ms ease; +} + +.emotion-59[data-rotate] { + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} + +.emotion-62 { + padding-left: 20px; +} + +.emotion-82 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + padding: 5; + height: 100%; +} + +.emotion-82 ._jotai-devtools-internal-panel-resize-handle { + -webkit-transition: max-height,min-height,height,0.2s ease-out; + transition: max-height,min-height,height,0.2s ease-out; +} + +[data-resize-handle-active] .emotion-82 ._jotai-devtools-internal-panel-resize-handle, +.emotion-82:hover ._jotai-devtools-internal-panel-resize-handle { + height: 90%; + min-height: 90%; + max-height: 90%; +} + +.emotion-83 { + border-radius: 2rem; + vertical-align: middle; + margin: 5px; + background: #dee2e6; + width: 5px; + height: 20%; + min-height: 50px; + max-height: 100px; +} + +.emotion-84 { + padding: 10px; + height: 100%; + position: relative; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; +} + +.emotion-86 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: stretch; + -webkit-box-align: stretch; + -ms-flex-align: stretch; + align-items: stretch; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + gap: 16px; + height: auto; +} + +.emotion-90 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji; + font-weight: 700; + font-size: 22px; + line-height: 1.4; + margin: 0; + margin-bottom: 10px; +} + +.emotion-90:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-90:focus:not(:focus-visible) { + outline: none; +} + +.emotion-92 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-bottom: 10px; + font-weight: bold; +} + +.emotion-92:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-92:focus:not(:focus-visible) { + outline: none; +} + +.emotion-93 { + margin-bottom: 10px; +} + +.emotion-95 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: #868e96; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-size: 10px; + font-weight: bold; + text-transform: uppercase; +} + +.emotion-95:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-95:focus:not(:focus-visible) { + outline: none; +} + +.emotion-97 { + font-family: JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace; + line-height: 1.55; + padding: 2px calc(10px / 2); + border-radius: 4px; + color: #1A1B1E; + background-color: rgba(248, 249, 250, 1); + font-size: 12px; +} + +.emotion-105 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-bottom: 12px; + font-weight: bold; +} + +.emotion-105:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-105:focus:not(:focus-visible) { + outline: none; +} + +.emotion-107 { + position: relative; + margin-bottom: 10px; +} + +.emotion-111 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: transparent; + color: #868e96; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 4px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + position: absolute; + top: 10px; + right: 10px; + left: unset; + z-index: 2; +} + +.emotion-111:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-111:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-111:hover { + background-color: rgba(248, 249, 250, 1); + } +} + +@media (hover: none) { + .emotion-111:active { + background-color: rgba(248, 249, 250, 1); + } +} + +.emotion-111:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-111:disabled, +.emotion-111[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-111:disabled:active, +.emotion-111[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-111[data-loading] { + pointer-events: none; +} + +.emotion-111[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 4px; + cursor: not-allowed; +} + +.emotion-111, +.emotion-111:hover { + background-color: #f8f9fa; +} + +.emotion-114 { + overflow: hidden; +} + +.emotion-115 { + width: 100%; + height: 100%; +} + +.emotion-117 { + box-sizing: border-box; + position: relative; + font-family: JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace; + line-height: 1.7; + font-size: 13px; + border-radius: 4px; + padding: 12px 0; + margin-top: 0; + margin-bottom: 0; +} + +.emotion-119 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + width: 100%; + padding: 0 16px; +} + +.emotion-121 { + width: 100%; +} + +.emotion-125 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 20px; + margin-bottom: 10px; + font-weight: bold; +} + +.emotion-125:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-125:focus:not(:focus-visible) { + outline: none; +} + +.emotion-127 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + color: #000; + font-size: 16px; + line-height: 1.55; + margin: 0; + padding-left: 0; + list-style-position: inside; + margin-bottom: 10px; +} + +.emotion-129 { + white-space: nowrap; + line-height: 1.55; +} + +.emotion-129:not(:first-of-type) { + margin-top: 0; +} + +.emotion-130 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + white-space: normal; +} +

πŸ‘»Β Jōtai DevTools

Alpha
@@ -697,24 +3168,24 @@ exports[`DevTools - AtomViewer Atom details Raw value should display atom detail style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" >
@@ -974,7 +3445,7 @@ exports[`DevTools - AtomViewer Atom details Raw value should display atom detail [data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}
@@ -982,15 +3453,15 @@ exports[`DevTools - AtomViewer Atom details Raw value should display atom detail style="min-width: 100%; display: table;" >
                           
Dependents
  1. @@ -1045,44 +3516,1274 @@ exports[`DevTools - AtomViewer Atom details Raw value should display atom detail `; exports[`DevTools - AtomViewer Atom details Raw value should display the dependents of the atom correctly 1`] = ` +.emotion-1 { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + position: fixed; + left: 0; + bottom: 0; + width: calc(100% - 20px); + border-color: #dee2e6; + border-width: 1px; + border-style: solid; + border-radius: 8px; + background: #fff; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + z-index: 99999; + margin: 10px; + height: 370px; + max-height: 90%; +} + +.emotion-2 { + width: 100%; + height: 5px; + cursor: row-resize; + z-index: 2; + position: absolute; + top: -2px; +} + +.emotion-3 { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1; + width: 100%; +} + +.emotion-4 { + padding: 10px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -webkit-justify-content: space-between; + justify-content: space-between; +} + +.emotion-6 { + box-sizing: border-box; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + gap: 16px; + margin-right: 10px; +} + +.emotion-6>* { + box-sizing: border-box; + -webkit-box-flex: 0; + -webkit-flex-grow: 0; + -ms-flex-positive: 0; + flex-grow: 0; +} + +.emotion-9 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji; + font-weight: 700; + font-size: 18px; + line-height: 1.45; + margin: 0; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.emotion-9:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-9:focus:not(:focus-visible) { + outline: none; +} + +.emotion-11 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + font-size: 9px; + height: 16px; + line-height: 14px; + -webkit-text-decoration: none; + text-decoration: none; + padding: 0 6.666666666666667px; + box-sizing: border-box; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + width: auto; + text-transform: uppercase; + border-radius: 32px; + font-weight: 700; + letter-spacing: 0.25px; + cursor: inherit; + text-overflow: ellipsis; + overflow: hidden; + background: rgba(255, 244, 230, 1); + color: #fd7e14; + border: 1px solid transparent; +} + +.emotion-11:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-11:focus:not(:focus-visible) { + outline: none; +} + +.emotion-12 { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.emotion-14 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.emotion-17 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: #25262b; + color: #fff; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 4px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; +} + +.emotion-17:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-17:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-17:hover { + background-color: #1A1B1E; + } +} + +@media (hover: none) { + .emotion-17:active { + background-color: #1A1B1E; + } +} + +.emotion-17:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-17:disabled, +.emotion-17[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-17:disabled:active, +.emotion-17[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-17[data-loading] { + pointer-events: none; +} + +.emotion-17[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 4px; + cursor: not-allowed; +} + +.emotion-20 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: transparent; + color: #868e96; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 8px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + margin-left: 10px; +} + +.emotion-20:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-20:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-20:hover { + background-color: rgba(248, 249, 250, 1); + } +} + +@media (hover: none) { + .emotion-20:active { + background-color: rgba(248, 249, 250, 1); + } +} + +.emotion-20:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-20:disabled, +.emotion-20[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-20:disabled:active, +.emotion-20[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-20[data-loading] { + pointer-events: none; +} + +.emotion-20[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 8px; + cursor: not-allowed; +} + +.emotion-22 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + border-bottom: 2px solid #dee2e6; +} + +.emotion-25 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + position: relative; + padding: 10px 16px; + padding-left: 10px; + font-size: 14px; + white-space: nowrap; + z-index: 0; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + line-height: 1; + border-bottom: 2px solid transparent; + margin-bottom: -2px; + border-radius: 4px 4px 0 0; +} + +.emotion-25:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-25:focus:not(:focus-visible) { + outline: none; +} + +.emotion-25:disabled { + opacity: 0.5; + cursor: not-allowed; +} + +@media (hover: hover) { + .emotion-25:disabled:hover { + background-color: transparent; + } +} + +@media (hover: none) { + .emotion-25:disabled:active { + background-color: transparent; + } +} + +.emotion-25:focus { + z-index: 1; +} + +@media (hover: hover) { + .emotion-25:hover { + background-color: #f8f9fa; + border-color: #dee2e6; + } +} + +@media (hover: none) { + .emotion-25:active { + background-color: #f8f9fa; + border-color: #dee2e6; + } +} + +.emotion-25[data-active] { + border-color: #25262b; + color: #000; +} + +@media (hover: hover) { + .emotion-25[data-active]:hover { + border-color: #25262b; + } +} + +@media (hover: none) { + .emotion-25[data-active]:active { + border-color: #25262b; + } +} + +.emotion-26 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.emotion-26:not(:only-child) { + margin-right: 7px; +} + +.emotion-31 { + height: 100%; + overflow: hidden; + border-bottom-left-radius: 7px; + border-bottom-right-radius: 7px; +} + +.emotion-32 { + padding: 10px; + padding-top: 0; + height: 100%; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + background: #e9ecef; +} + +.emotion-35 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + line-height: 1.55; + position: -webkit-sticky; + position: sticky; + top: 0; + padding-top: 10px; + padding-bottom: 10px; +} + +.emotion-38 { + display: inline-block; + font-size: 14px; + font-weight: 500; + color: #212529; + word-break: break-word; + cursor: default; + -webkit-tap-highlight-color: transparent; +} + +.emotion-41 { + position: relative; +} + +.emotion-44 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + height: 36px; + -webkit-tap-highlight-color: transparent; + line-height: 34px; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + resize: none; + box-sizing: border-box; + font-size: 14px; + width: 100%; + color: #000; + display: block; + text-align: left; + min-height: 36px; + padding-left: 12px; + padding-right: 12px; + border-radius: 4px; + border: 1px solid #ced4da; + background-color: #fff; + -webkit-transition: border-color 100ms ease; + transition: border-color 100ms ease; +} + +.emotion-44:disabled { + background-color: #f1f3f5; + color: #909296; + opacity: 0.6; + cursor: not-allowed; +} + +.emotion-44:disabled::-webkit-input-placeholder { + color: #909296; +} + +.emotion-44:disabled::-moz-placeholder { + color: #909296; +} + +.emotion-44:disabled:-ms-input-placeholder { + color: #909296; +} + +.emotion-44:disabled::placeholder { + color: #909296; +} + +.emotion-44::-webkit-input-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::-moz-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44:-ms-input-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::-webkit-inner-spin-button, +.emotion-44::-webkit-outer-spin-button, +.emotion-44::-webkit-search-decoration, +.emotion-44::-webkit-search-cancel-button, +.emotion-44::-webkit-search-results-button, +.emotion-44::-webkit-search-results-decoration { + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; +} + +.emotion-44[type=number] { + -moz-appearance: textfield; +} + +.emotion-44:focus, +.emotion-44:focus-within { + outline: none; + border-color: #25262b; +} + +.emotion-45 { + overflow: auto; +} + +.emotion-48 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: 100%; + padding: 8px 12px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + font-family: JetBrains Mono; + border-radius: 5px; +} + +.emotion-48:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-48:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-48:hover { + background-color: #f8f9fa; + } +} + +@media (hover: none) { + .emotion-48:active { + background-color: #f8f9fa; + } +} + +.emotion-48[data-active] { + background-color: #25262b; + color: #fff; +} + +@media (hover: hover) { + .emotion-48[data-active]:hover { + background-color: #1A1B1E; + } +} + +@media (hover: none) { + .emotion-48[data-active]:active { + background-color: #1A1B1E; + } +} + +.emotion-48[data-disabled] { + opacity: 0.4; + pointer-events: none; +} + +.emotion-49 { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; + overflow: hidden; + text-overflow: ellipsis; +} + +.emotion-53 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: 14px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; +} + +.emotion-53:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-53:focus:not(:focus-visible) { + outline: none; +} + +.emotion-55 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: JetBrains Mono; +} + +.emotion-55:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-55:focus:not(:focus-visible) { + outline: none; +} + +.emotion-58 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: #868e96; + font-size: 12px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + display: block; +} + +.emotion-58:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-58:focus:not(:focus-visible) { + outline: none; +} + +.emotion-58[data-active] { + color: inherit; +} + +.emotion-59 { + margin-left: 12px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-transition: -webkit-transform 150ms ease; + transition: transform 150ms ease; +} + +.emotion-59[data-rotate] { + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} + +.emotion-62 { + padding-left: 20px; +} + +.emotion-82 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + padding: 5; + height: 100%; +} + +.emotion-82 ._jotai-devtools-internal-panel-resize-handle { + -webkit-transition: max-height,min-height,height,0.2s ease-out; + transition: max-height,min-height,height,0.2s ease-out; +} + +[data-resize-handle-active] .emotion-82 ._jotai-devtools-internal-panel-resize-handle, +.emotion-82:hover ._jotai-devtools-internal-panel-resize-handle { + height: 90%; + min-height: 90%; + max-height: 90%; +} + +.emotion-83 { + border-radius: 2rem; + vertical-align: middle; + margin: 5px; + background: #dee2e6; + width: 5px; + height: 20%; + min-height: 50px; + max-height: 100px; +} + +.emotion-84 { + padding: 10px; + height: 100%; + position: relative; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; +} + +.emotion-86 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: stretch; + -webkit-box-align: stretch; + -ms-flex-align: stretch; + align-items: stretch; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + gap: 16px; + height: auto; +} + +.emotion-90 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji; + font-weight: 700; + font-size: 22px; + line-height: 1.4; + margin: 0; + margin-bottom: 10px; +} + +.emotion-90:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-90:focus:not(:focus-visible) { + outline: none; +} + +.emotion-92 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-bottom: 10px; + font-weight: bold; +} + +.emotion-92:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-92:focus:not(:focus-visible) { + outline: none; +} + +.emotion-93 { + margin-bottom: 10px; +} + +.emotion-95 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: #868e96; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-size: 10px; + font-weight: bold; + text-transform: uppercase; +} + +.emotion-95:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-95:focus:not(:focus-visible) { + outline: none; +} + +.emotion-97 { + font-family: JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace; + line-height: 1.55; + padding: 2px calc(10px / 2); + border-radius: 4px; + color: #1A1B1E; + background-color: rgba(248, 249, 250, 1); + font-size: 12px; +} + +.emotion-105 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-bottom: 12px; + font-weight: bold; +} + +.emotion-105:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-105:focus:not(:focus-visible) { + outline: none; +} + +.emotion-107 { + position: relative; + margin-bottom: 10px; +} + +.emotion-111 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: transparent; + color: #868e96; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 4px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + position: absolute; + top: 10px; + right: 10px; + left: unset; + z-index: 2; +} + +.emotion-111:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-111:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-111:hover { + background-color: rgba(248, 249, 250, 1); + } +} + +@media (hover: none) { + .emotion-111:active { + background-color: rgba(248, 249, 250, 1); + } +} + +.emotion-111:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-111:disabled, +.emotion-111[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-111:disabled:active, +.emotion-111[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-111[data-loading] { + pointer-events: none; +} + +.emotion-111[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 4px; + cursor: not-allowed; +} + +.emotion-111, +.emotion-111:hover { + background-color: #f8f9fa; +} + +.emotion-114 { + overflow: hidden; +} + +.emotion-115 { + width: 100%; + height: 100%; +} + +.emotion-117 { + box-sizing: border-box; + position: relative; + font-family: JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace; + line-height: 1.7; + font-size: 13px; + border-radius: 4px; + padding: 12px 0; + margin-top: 0; + margin-bottom: 0; +} + +.emotion-119 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + width: 100%; + padding: 0 16px; +} + +.emotion-121 { + width: 100%; +} + +.emotion-125 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 20px; + margin-bottom: 10px; + font-weight: bold; +} + +.emotion-125:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-125:focus:not(:focus-visible) { + outline: none; +} + +.emotion-127 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: 14px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-bottom: 10px; +} + +.emotion-127:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-127:focus:not(:focus-visible) { + outline: none; +} +

    πŸ‘»Β Jōtai DevTools

    Alpha
    @@ -1227,24 +4928,24 @@ exports[`DevTools - AtomViewer Atom details Raw value should display the depende style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" >
    @@ -1504,7 +5205,7 @@ exports[`DevTools - AtomViewer Atom details Raw value should display the depende [data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}
    @@ -1512,15 +5213,15 @@ exports[`DevTools - AtomViewer Atom details Raw value should display the depende style="min-width: 100%; display: table;" >
                               
    Dependents
    No dependents
    @@ -1559,44 +5260,862 @@ exports[`DevTools - AtomViewer Atom details Raw value should display the depende `; exports[`DevTools - AtomViewer List of atoms Search should display an error if no atoms are found 1`] = ` +.emotion-1 { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + position: fixed; + left: 0; + bottom: 0; + width: calc(100% - 20px); + border-color: #dee2e6; + border-width: 1px; + border-style: solid; + border-radius: 8px; + background: #fff; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + z-index: 99999; + margin: 10px; + height: 370px; + max-height: 90%; +} + +.emotion-2 { + width: 100%; + height: 5px; + cursor: row-resize; + z-index: 2; + position: absolute; + top: -2px; +} + +.emotion-3 { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1; + width: 100%; +} + +.emotion-4 { + padding: 10px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -webkit-justify-content: space-between; + justify-content: space-between; +} + +.emotion-6 { + box-sizing: border-box; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + gap: 16px; + margin-right: 10px; +} + +.emotion-6>* { + box-sizing: border-box; + -webkit-box-flex: 0; + -webkit-flex-grow: 0; + -ms-flex-positive: 0; + flex-grow: 0; +} + +.emotion-9 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji; + font-weight: 700; + font-size: 18px; + line-height: 1.45; + margin: 0; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.emotion-9:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-9:focus:not(:focus-visible) { + outline: none; +} + +.emotion-11 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + font-size: 9px; + height: 16px; + line-height: 14px; + -webkit-text-decoration: none; + text-decoration: none; + padding: 0 6.666666666666667px; + box-sizing: border-box; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + width: auto; + text-transform: uppercase; + border-radius: 32px; + font-weight: 700; + letter-spacing: 0.25px; + cursor: inherit; + text-overflow: ellipsis; + overflow: hidden; + background: rgba(255, 244, 230, 1); + color: #fd7e14; + border: 1px solid transparent; +} + +.emotion-11:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-11:focus:not(:focus-visible) { + outline: none; +} + +.emotion-12 { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.emotion-14 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.emotion-17 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: #25262b; + color: #fff; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 4px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; +} + +.emotion-17:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-17:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-17:hover { + background-color: #1A1B1E; + } +} + +@media (hover: none) { + .emotion-17:active { + background-color: #1A1B1E; + } +} + +.emotion-17:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-17:disabled, +.emotion-17[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-17:disabled:active, +.emotion-17[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-17[data-loading] { + pointer-events: none; +} + +.emotion-17[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 4px; + cursor: not-allowed; +} + +.emotion-20 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: transparent; + color: #868e96; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 8px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + margin-left: 10px; +} + +.emotion-20:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-20:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-20:hover { + background-color: rgba(248, 249, 250, 1); + } +} + +@media (hover: none) { + .emotion-20:active { + background-color: rgba(248, 249, 250, 1); + } +} + +.emotion-20:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-20:disabled, +.emotion-20[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-20:disabled:active, +.emotion-20[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-20[data-loading] { + pointer-events: none; +} + +.emotion-20[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 8px; + cursor: not-allowed; +} + +.emotion-22 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + border-bottom: 2px solid #dee2e6; +} + +.emotion-25 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + position: relative; + padding: 10px 16px; + padding-left: 10px; + font-size: 14px; + white-space: nowrap; + z-index: 0; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + line-height: 1; + border-bottom: 2px solid transparent; + margin-bottom: -2px; + border-radius: 4px 4px 0 0; +} + +.emotion-25:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-25:focus:not(:focus-visible) { + outline: none; +} + +.emotion-25:disabled { + opacity: 0.5; + cursor: not-allowed; +} + +@media (hover: hover) { + .emotion-25:disabled:hover { + background-color: transparent; + } +} + +@media (hover: none) { + .emotion-25:disabled:active { + background-color: transparent; + } +} + +.emotion-25:focus { + z-index: 1; +} + +@media (hover: hover) { + .emotion-25:hover { + background-color: #f8f9fa; + border-color: #dee2e6; + } +} + +@media (hover: none) { + .emotion-25:active { + background-color: #f8f9fa; + border-color: #dee2e6; + } +} + +.emotion-25[data-active] { + border-color: #25262b; + color: #000; +} + +@media (hover: hover) { + .emotion-25[data-active]:hover { + border-color: #25262b; + } +} + +@media (hover: none) { + .emotion-25[data-active]:active { + border-color: #25262b; + } +} + +.emotion-26 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.emotion-26:not(:only-child) { + margin-right: 7px; +} + +.emotion-31 { + height: 100%; + overflow: hidden; + border-bottom-left-radius: 7px; + border-bottom-right-radius: 7px; +} + +.emotion-32 { + padding: 10px; + padding-top: 0; + height: 100%; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + background: #e9ecef; +} + +.emotion-35 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + line-height: 1.55; + position: -webkit-sticky; + position: sticky; + top: 0; + padding-top: 10px; + padding-bottom: 10px; +} + +.emotion-38 { + display: inline-block; + font-size: 14px; + font-weight: 500; + color: #212529; + word-break: break-word; + cursor: default; + -webkit-tap-highlight-color: transparent; +} + +.emotion-41 { + position: relative; +} + +.emotion-44 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + height: 36px; + -webkit-tap-highlight-color: transparent; + line-height: 34px; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + resize: none; + box-sizing: border-box; + font-size: 14px; + width: 100%; + color: #000; + display: block; + text-align: left; + min-height: 36px; + padding-left: 12px; + padding-right: 12px; + border-radius: 4px; + border: 1px solid #ced4da; + background-color: #fff; + -webkit-transition: border-color 100ms ease; + transition: border-color 100ms ease; +} + +.emotion-44:disabled { + background-color: #f1f3f5; + color: #909296; + opacity: 0.6; + cursor: not-allowed; +} + +.emotion-44:disabled::-webkit-input-placeholder { + color: #909296; +} + +.emotion-44:disabled::-moz-placeholder { + color: #909296; +} + +.emotion-44:disabled:-ms-input-placeholder { + color: #909296; +} + +.emotion-44:disabled::placeholder { + color: #909296; +} + +.emotion-44::-webkit-input-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::-moz-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44:-ms-input-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::-webkit-inner-spin-button, +.emotion-44::-webkit-outer-spin-button, +.emotion-44::-webkit-search-decoration, +.emotion-44::-webkit-search-cancel-button, +.emotion-44::-webkit-search-results-button, +.emotion-44::-webkit-search-results-decoration { + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; +} + +.emotion-44[type=number] { + -moz-appearance: textfield; +} + +.emotion-44:focus, +.emotion-44:focus-within { + outline: none; + border-color: #25262b; +} + +.emotion-45 { + overflow: auto; +} + +.emotion-47 { + box-sizing: border-box; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + gap: 16px; + margin-top: 20px; +} + +.emotion-47>* { + box-sizing: border-box; + -webkit-box-flex: 0; + -webkit-flex-grow: 0; + -ms-flex-positive: 0; + flex-grow: 0; +} + +.emotion-49 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-left: 0; + font-size: 14px; +} + +.emotion-49:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-49:focus:not(:focus-visible) { + outline: none; +} + +.emotion-50 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + padding: 5; + height: 100%; +} + +.emotion-50 ._jotai-devtools-internal-panel-resize-handle { + -webkit-transition: max-height,min-height,height,0.2s ease-out; + transition: max-height,min-height,height,0.2s ease-out; +} + +[data-resize-handle-active] .emotion-50 ._jotai-devtools-internal-panel-resize-handle, +.emotion-50:hover ._jotai-devtools-internal-panel-resize-handle { + height: 90%; + min-height: 90%; + max-height: 90%; +} + +.emotion-51 { + border-radius: 2rem; + vertical-align: middle; + margin: 5px; + background: #dee2e6; + width: 5px; + height: 20%; + min-height: 50px; + max-height: 100px; +} + +.emotion-52 { + padding: 10px; + height: 100%; + position: relative; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; +} + +.emotion-53 { + position: relative; + top: 50%; + -webkit-transform: translateY(-50%); + -moz-transform: translateY(-50%); + -ms-transform: translateY(-50%); + transform: translateY(-50%); +} + +.emotion-55 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + text-align: center; + width: 100%; +} + +.emotion-55:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-55:focus:not(:focus-visible) { + outline: none; +} +

    πŸ‘»Β Jōtai DevTools

    Alpha
    @@ -1741,24 +6260,24 @@ exports[`DevTools - AtomViewer List of atoms Search should display an error if n style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" >
    No Atoms found! @@ -1831,10 +6350,10 @@ exports[`DevTools - AtomViewer List of atoms Search should display an error if n tabindex="0" >
    @@ -1847,13 +6366,13 @@ exports[`DevTools - AtomViewer List of atoms Search should display an error if n style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" >
    Select an atom from the left panel to view the details @@ -1867,45 +6386,987 @@ exports[`DevTools - AtomViewer List of atoms Search should display an error if n
    `; -exports[`DevTools - AtomViewer List of atoms Search should search for atoms correctly 1`] = ` +exports[`DevTools - AtomViewer List of atoms Search should search for atoms correctly 1`] = ` +.emotion-1 { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + position: fixed; + left: 0; + bottom: 0; + width: calc(100% - 20px); + border-color: #dee2e6; + border-width: 1px; + border-style: solid; + border-radius: 8px; + background: #fff; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + z-index: 99999; + margin: 10px; + height: 370px; + max-height: 90%; +} + +.emotion-2 { + width: 100%; + height: 5px; + cursor: row-resize; + z-index: 2; + position: absolute; + top: -2px; +} + +.emotion-3 { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1; + width: 100%; +} + +.emotion-4 { + padding: 10px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -webkit-justify-content: space-between; + justify-content: space-between; +} + +.emotion-6 { + box-sizing: border-box; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + gap: 16px; + margin-right: 10px; +} + +.emotion-6>* { + box-sizing: border-box; + -webkit-box-flex: 0; + -webkit-flex-grow: 0; + -ms-flex-positive: 0; + flex-grow: 0; +} + +.emotion-9 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji; + font-weight: 700; + font-size: 18px; + line-height: 1.45; + margin: 0; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.emotion-9:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-9:focus:not(:focus-visible) { + outline: none; +} + +.emotion-11 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + font-size: 9px; + height: 16px; + line-height: 14px; + -webkit-text-decoration: none; + text-decoration: none; + padding: 0 6.666666666666667px; + box-sizing: border-box; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + width: auto; + text-transform: uppercase; + border-radius: 32px; + font-weight: 700; + letter-spacing: 0.25px; + cursor: inherit; + text-overflow: ellipsis; + overflow: hidden; + background: rgba(255, 244, 230, 1); + color: #fd7e14; + border: 1px solid transparent; +} + +.emotion-11:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-11:focus:not(:focus-visible) { + outline: none; +} + +.emotion-12 { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.emotion-14 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.emotion-17 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: #25262b; + color: #fff; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 4px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; +} + +.emotion-17:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-17:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-17:hover { + background-color: #1A1B1E; + } +} + +@media (hover: none) { + .emotion-17:active { + background-color: #1A1B1E; + } +} + +.emotion-17:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-17:disabled, +.emotion-17[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-17:disabled:active, +.emotion-17[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-17[data-loading] { + pointer-events: none; +} + +.emotion-17[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 4px; + cursor: not-allowed; +} + +.emotion-20 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: transparent; + color: #868e96; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 8px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + margin-left: 10px; +} + +.emotion-20:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-20:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-20:hover { + background-color: rgba(248, 249, 250, 1); + } +} + +@media (hover: none) { + .emotion-20:active { + background-color: rgba(248, 249, 250, 1); + } +} + +.emotion-20:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-20:disabled, +.emotion-20[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-20:disabled:active, +.emotion-20[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-20[data-loading] { + pointer-events: none; +} + +.emotion-20[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 8px; + cursor: not-allowed; +} + +.emotion-22 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + border-bottom: 2px solid #dee2e6; +} + +.emotion-25 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + position: relative; + padding: 10px 16px; + padding-left: 10px; + font-size: 14px; + white-space: nowrap; + z-index: 0; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + line-height: 1; + border-bottom: 2px solid transparent; + margin-bottom: -2px; + border-radius: 4px 4px 0 0; +} + +.emotion-25:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-25:focus:not(:focus-visible) { + outline: none; +} + +.emotion-25:disabled { + opacity: 0.5; + cursor: not-allowed; +} + +@media (hover: hover) { + .emotion-25:disabled:hover { + background-color: transparent; + } +} + +@media (hover: none) { + .emotion-25:disabled:active { + background-color: transparent; + } +} + +.emotion-25:focus { + z-index: 1; +} + +@media (hover: hover) { + .emotion-25:hover { + background-color: #f8f9fa; + border-color: #dee2e6; + } +} + +@media (hover: none) { + .emotion-25:active { + background-color: #f8f9fa; + border-color: #dee2e6; + } +} + +.emotion-25[data-active] { + border-color: #25262b; + color: #000; +} + +@media (hover: hover) { + .emotion-25[data-active]:hover { + border-color: #25262b; + } +} + +@media (hover: none) { + .emotion-25[data-active]:active { + border-color: #25262b; + } +} + +.emotion-26 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.emotion-26:not(:only-child) { + margin-right: 7px; +} + +.emotion-31 { + height: 100%; + overflow: hidden; + border-bottom-left-radius: 7px; + border-bottom-right-radius: 7px; +} + +.emotion-32 { + padding: 10px; + padding-top: 0; + height: 100%; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + background: #e9ecef; +} + +.emotion-35 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + line-height: 1.55; + position: -webkit-sticky; + position: sticky; + top: 0; + padding-top: 10px; + padding-bottom: 10px; +} + +.emotion-38 { + display: inline-block; + font-size: 14px; + font-weight: 500; + color: #212529; + word-break: break-word; + cursor: default; + -webkit-tap-highlight-color: transparent; +} + +.emotion-41 { + position: relative; +} + +.emotion-44 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + height: 36px; + -webkit-tap-highlight-color: transparent; + line-height: 34px; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + resize: none; + box-sizing: border-box; + font-size: 14px; + width: 100%; + color: #000; + display: block; + text-align: left; + min-height: 36px; + padding-left: 12px; + padding-right: 12px; + border-radius: 4px; + border: 1px solid #ced4da; + background-color: #fff; + -webkit-transition: border-color 100ms ease; + transition: border-color 100ms ease; +} + +.emotion-44:disabled { + background-color: #f1f3f5; + color: #909296; + opacity: 0.6; + cursor: not-allowed; +} + +.emotion-44:disabled::-webkit-input-placeholder { + color: #909296; +} + +.emotion-44:disabled::-moz-placeholder { + color: #909296; +} + +.emotion-44:disabled:-ms-input-placeholder { + color: #909296; +} + +.emotion-44:disabled::placeholder { + color: #909296; +} + +.emotion-44::-webkit-input-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::-moz-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44:-ms-input-placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::placeholder { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + color: #adb5bd; + opacity: 1; +} + +.emotion-44::-webkit-inner-spin-button, +.emotion-44::-webkit-outer-spin-button, +.emotion-44::-webkit-search-decoration, +.emotion-44::-webkit-search-cancel-button, +.emotion-44::-webkit-search-results-button, +.emotion-44::-webkit-search-results-decoration { + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; +} + +.emotion-44[type=number] { + -moz-appearance: textfield; +} + +.emotion-44:focus, +.emotion-44:focus-within { + outline: none; + border-color: #25262b; +} + +.emotion-45 { + overflow: auto; +} + +.emotion-48 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: 100%; + padding: 8px 12px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + font-family: JetBrains Mono; + border-radius: 5px; +} + +.emotion-48:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-48:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-48:hover { + background-color: #f8f9fa; + } +} + +@media (hover: none) { + .emotion-48:active { + background-color: #f8f9fa; + } +} + +.emotion-48[data-active] { + background-color: #25262b; + color: #fff; +} + +@media (hover: hover) { + .emotion-48[data-active]:hover { + background-color: #1A1B1E; + } +} + +@media (hover: none) { + .emotion-48[data-active]:active { + background-color: #1A1B1E; + } +} + +.emotion-48[data-disabled] { + opacity: 0.4; + pointer-events: none; +} + +.emotion-49 { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; + overflow: hidden; + text-overflow: ellipsis; +} + +.emotion-53 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: 14px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; +} + +.emotion-53:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-53:focus:not(:focus-visible) { + outline: none; +} + +.emotion-55 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: JetBrains Mono; +} + +.emotion-55:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-55:focus:not(:focus-visible) { + outline: none; +} + +.emotion-58 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: #868e96; + font-size: 12px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + display: block; +} + +.emotion-58:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-58:focus:not(:focus-visible) { + outline: none; +} + +.emotion-58[data-active] { + color: inherit; +} + +.emotion-59 { + margin-left: 12px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-transition: -webkit-transform 150ms ease; + transition: transform 150ms ease; +} + +.emotion-59[data-rotate] { + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} + +.emotion-62 { + padding-left: 20px; +} + +.emotion-64 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + padding: 5; + height: 100%; +} + +.emotion-64 ._jotai-devtools-internal-panel-resize-handle { + -webkit-transition: max-height,min-height,height,0.2s ease-out; + transition: max-height,min-height,height,0.2s ease-out; +} + +[data-resize-handle-active] .emotion-64 ._jotai-devtools-internal-panel-resize-handle, +.emotion-64:hover ._jotai-devtools-internal-panel-resize-handle { + height: 90%; + min-height: 90%; + max-height: 90%; +} + +.emotion-65 { + border-radius: 2rem; + vertical-align: middle; + margin: 5px; + background: #dee2e6; + width: 5px; + height: 20%; + min-height: 50px; + max-height: 100px; +} + +.emotion-66 { + padding: 10px; + height: 100%; + position: relative; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; +} + +.emotion-67 { + position: relative; + top: 50%; + -webkit-transform: translateY(-50%); + -moz-transform: translateY(-50%); + -ms-transform: translateY(-50%); + transform: translateY(-50%); +} + +.emotion-69 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + text-align: center; + width: 100%; +} + +.emotion-69:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-69:focus:not(:focus-visible) { + outline: none; +} +

    πŸ‘»Β Jōtai DevTools

    Alpha
    @@ -2050,24 +7511,24 @@ exports[`DevTools - AtomViewer List of atoms Search should search for atoms corr style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" >
    @@ -2374,24 +8777,24 @@ exports[`DevTools - AtomViewer List of atoms should render atom viewer with corr style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" >
    @@ -2757,24 +9978,24 @@ exports[`DevTools - AtomViewer List of atoms should render atom viewer without a style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" >
    No Atoms found! @@ -2847,10 +10068,10 @@ exports[`DevTools - AtomViewer List of atoms should render atom viewer without a tabindex="0" >
    @@ -2863,13 +10084,13 @@ exports[`DevTools - AtomViewer List of atoms should render atom viewer without a style="flex-basis: 0px; flex-grow: 50; flex-shrink: 1; overflow: auto;" >
    Select an atom from the left panel to view the details diff --git a/__tests__/devtools/__snapshots__/basic.test.tsx.snap b/__tests__/devtools/__snapshots__/basic.test.tsx.snap index f672a456..dc53dd14 100644 --- a/__tests__/devtools/__snapshots__/basic.test.tsx.snap +++ b/__tests__/devtools/__snapshots__/basic.test.tsx.snap @@ -1,44 +1,724 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`DevTools - basic Error boundary should display an error boundary with message if stack is not present 1`] = ` +.emotion-1 { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + position: fixed; + left: 0; + bottom: 0; + width: calc(100% - 20px); + border-color: #dee2e6; + border-width: 1px; + border-style: solid; + border-radius: 8px; + background: #fff; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + z-index: 99999; + margin: 10px; + height: 370px; + max-height: 90%; +} + +.emotion-2 { + width: 100%; + height: 5px; + cursor: row-resize; + z-index: 2; + position: absolute; + top: -2px; +} + +.emotion-3 { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1; + width: 100%; +} + +.emotion-4 { + padding: 10px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -webkit-justify-content: space-between; + justify-content: space-between; +} + +.emotion-6 { + box-sizing: border-box; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + gap: 16px; + margin-right: 10px; +} + +.emotion-6>* { + box-sizing: border-box; + -webkit-box-flex: 0; + -webkit-flex-grow: 0; + -ms-flex-positive: 0; + flex-grow: 0; +} + +.emotion-9 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + font-family: Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji; + font-weight: 700; + font-size: 18px; + line-height: 1.45; + margin: 0; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.emotion-9:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-9:focus:not(:focus-visible) { + outline: none; +} + +.emotion-11 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + font-size: 9px; + height: 16px; + line-height: 14px; + -webkit-text-decoration: none; + text-decoration: none; + padding: 0 6.666666666666667px; + box-sizing: border-box; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + width: auto; + text-transform: uppercase; + border-radius: 32px; + font-weight: 700; + letter-spacing: 0.25px; + cursor: inherit; + text-overflow: ellipsis; + overflow: hidden; + background: rgba(255, 244, 230, 1); + color: #fd7e14; + border: 1px solid transparent; +} + +.emotion-11:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-11:focus:not(:focus-visible) { + outline: none; +} + +.emotion-12 { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.emotion-14 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.emotion-17 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: #25262b; + color: #fff; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 4px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; +} + +.emotion-17:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-17:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-17:hover { + background-color: #1A1B1E; + } +} + +@media (hover: none) { + .emotion-17:active { + background-color: #1A1B1E; + } +} + +.emotion-17:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-17:disabled, +.emotion-17[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-17:disabled:active, +.emotion-17[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-17[data-loading] { + pointer-events: none; +} + +.emotion-17[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 4px; + cursor: not-allowed; +} + +.emotion-20 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: transparent; + color: #868e96; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 8px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + margin-left: 10px; +} + +.emotion-20:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-20:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-20:hover { + background-color: rgba(248, 249, 250, 1); + } +} + +@media (hover: none) { + .emotion-20:active { + background-color: rgba(248, 249, 250, 1); + } +} + +.emotion-20:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-20:disabled, +.emotion-20[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-20:disabled:active, +.emotion-20[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-20[data-loading] { + pointer-events: none; +} + +.emotion-20[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 8px; + cursor: not-allowed; +} + +.emotion-21 { + height: 90%; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + overflow: scroll; +} + +.emotion-22 { + width: 100%; + max-width: 80%; + max-height: 80%; +} + +.emotion-24 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: #e03131; + font-size: 16px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + margin-bottom: 5px; + font-weight: 500; +} + +.emotion-24:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-24:focus:not(:focus-visible) { + outline: none; +} + +.emotion-26 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: inherit; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + margin-right: 5px; +} + +.emotion-26:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-26:focus:not(:focus-visible) { + outline: none; +} + +.emotion-28 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: #e03131; + font-size: 14px; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + margin-bottom: 12px; +} + +.emotion-28:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-28:focus:not(:focus-visible) { + outline: none; +} + +.emotion-31 { + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + -webkit-tap-highlight-color: transparent; + color: #e03131; + font-size: inherit; + line-height: 1.55; + -webkit-text-decoration: none; + text-decoration: none; + background-color: transparent; + cursor: pointer; + padding: 0; + border: 0; + -webkit-text-decoration: underline; + text-decoration: underline; +} + +.emotion-31:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-31:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-31:hover { + -webkit-text-decoration: underline; + text-decoration: underline; + } +} + +@media (hover: none) { + .emotion-31:active { + -webkit-text-decoration: underline; + text-decoration: underline; + } +} + +.emotion-33 { + position: relative; +} + +.emotion-37 { + -webkit-tap-highlight-color: transparent; + font-family: Inter,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe,sans-serif; + cursor: pointer; + border: 0; + padding: 0; + -webkit-appearance: none; + -moz-appearance: none; + -ms-appearance: none; + appearance: none; + font-size: 16px; + background-color: transparent; + text-align: left; + color: #000; + -webkit-text-decoration: none; + text-decoration: none; + box-sizing: border-box; + border: 1px solid transparent; + background-color: transparent; + color: #868e96; + position: relative; + height: 28px; + min-height: 28px; + width: 28px; + min-width: 28px; + border-radius: 4px; + padding: 0; + line-height: 1; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + position: absolute; + top: 10px; + right: 10px; + left: unset; + z-index: 2; +} + +.emotion-37:focus { + outline-offset: 2px; + outline: 2px solid #2C2E33; +} + +.emotion-37:focus:not(:focus-visible) { + outline: none; +} + +@media (hover: hover) { + .emotion-37:hover { + background-color: rgba(248, 249, 250, 1); + } +} + +@media (hover: none) { + .emotion-37:active { + background-color: rgba(248, 249, 250, 1); + } +} + +.emotion-37:active { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} + +.emotion-37:disabled, +.emotion-37[data-disabled] { + color: #ced4da; + cursor: not-allowed; + background-color: #f1f3f5; + border-color: #f1f3f5; + background-image: none; + pointer-events: none; +} + +.emotion-37:disabled:active, +.emotion-37[data-disabled]:active { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} + +.emotion-37[data-loading] { + pointer-events: none; +} + +.emotion-37[data-loading]::before { + content: ""; + position: absolute; + top: -1px; + left: -1px; + right: -1px; + bottom: -1px; + background-color: rgba(255, 255, 255, .5); + border-radius: 4px; + cursor: not-allowed; +} + +.emotion-37, +.emotion-37:hover { + background-color: #f8f9fa; +} + +.emotion-40 { + overflow: hidden; +} + +.emotion-41 { + width: 100%; + height: 100%; +} + +.emotion-43 { + box-sizing: border-box; + position: relative; + font-family: JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace; + line-height: 1.7; + font-size: 13px; + border-radius: 4px; + padding: 12px 0; + margin-top: 0; + margin-bottom: 0; +} + +.emotion-45 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + width: 100%; + padding: 0 16px; +} + +.emotion-47 { + width: 100%; +} +

    πŸ‘»Β Jōtai DevTools

    Alpha