From 67fba0f404018c581932b4d9bd627571df7f9ca5 Mon Sep 17 00:00:00 2001 From: Dane Hillard Date: Sat, 29 Oct 2022 15:30:38 -0400 Subject: [PATCH 1/9] Site: improve imports (#433) * chore(site): improve imports * chore: add changeset * fix: correct registry in yarn.lock * fix: correct TLD in yarn.lock * Trigger new build --- .changeset/clean-impalas-fold.md | 5 + .tool-versions | 2 +- package.json | 6 +- packages/pharos-site/gatsby-config.js | 10 + packages/pharos-site/package.json | 7 +- .../src/pages/components/alert/index.mdx | 2 +- .../src/pages/components/breadcrumb/index.mdx | 2 +- .../src/pages/components/button/index.mdx | 2 +- .../src/pages/components/checkbox/index.mdx | 2 +- .../src/pages/components/combobox/index.mdx | 2 +- .../components/dropdown-menu-nav/index.mdx | 2 +- .../pages/components/dropdown-menu/index.mdx | 2 +- .../src/pages/components/footer/index.mdx | 2 +- .../src/pages/components/header/index.mdx | 2 +- .../src/pages/components/heading/index.mdx | 2 +- .../src/pages/components/icon/index.mdx | 2 +- .../src/pages/components/image-card/index.mdx | 2 +- .../pages/components/input-group/index.mdx | 2 +- .../src/pages/components/layout/index.mdx | 2 +- .../src/pages/components/link/index.mdx | 2 +- .../components/loading-spinner/index.mdx | 2 +- .../src/pages/components/modal/index.mdx | 2 +- .../src/pages/components/pagination/index.mdx | 2 +- .../pages/components/progress-bar/index.mdx | 2 +- .../pages/components/radio-button/index.mdx | 2 +- .../src/pages/components/select/index.mdx | 2 +- .../src/pages/components/sidenav/index.mdx | 2 +- .../src/pages/components/tabs/index.mdx | 2 +- .../src/pages/components/text-input/index.mdx | 2 +- .../src/pages/components/textarea/index.mdx | 2 +- .../src/pages/components/toast/index.mdx | 2 +- .../components/toggle-button-group/index.mdx | 2 +- .../src/pages/components/tooltip/index.mdx | 2 +- .../content-style-guide/web-elements.mdx | 4 +- .../src/pages/styles/type-styles.mdx | 2 +- .../static/guidelines/alert.docs.mdx | 4 +- .../static/guidelines/breadcrumb.docs.mdx | 4 +- .../static/guidelines/button.docs.mdx | 6 +- .../static/guidelines/checkbox.docs.mdx | 4 +- .../static/guidelines/combobox.docs.mdx | 4 +- .../guidelines/dropdown-menu-nav.docs.mdx | 4 +- .../static/guidelines/dropdown-menu.docs.mdx | 4 +- .../static/guidelines/footer.docs.mdx | 4 +- .../static/guidelines/header.docs.mdx | 4 +- .../static/guidelines/heading.docs.mdx | 4 +- .../static/guidelines/icon.docs.mdx | 4 +- .../static/guidelines/image-card.docs.mdx | 6 +- .../static/guidelines/input-group.docs.mdx | 4 +- .../static/guidelines/layout.docs.mdx | 6 +- .../static/guidelines/link.docs.mdx | 4 +- .../guidelines/loading-spinner.docs.mdx | 6 +- .../static/guidelines/modal.docs.mdx | 4 +- .../static/guidelines/pagination.docs.mdx | 6 +- .../static/guidelines/progress-bar.docs.mdx | 4 +- .../static/guidelines/radio.docs.mdx | 4 +- .../static/guidelines/select.docs.mdx | 4 +- .../static/guidelines/sidenav.docs.mdx | 4 +- .../static/guidelines/tabs.docs.mdx | 4 +- .../static/guidelines/template.mdx | 4 +- .../static/guidelines/text-input.docs.mdx | 4 +- .../static/guidelines/textarea.docs.mdx | 4 +- .../static/guidelines/toast.docs.mdx | 4 +- .../guidelines/toggle-button-group.docs.mdx | 4 +- .../static/guidelines/tooltip.docs.mdx | 10 +- .../static/guidelines/type-styles.docs.mdx | 2 +- yarn.lock | 854 +++++++++++------- 66 files changed, 662 insertions(+), 418 deletions(-) create mode 100644 .changeset/clean-impalas-fold.md diff --git a/.changeset/clean-impalas-fold.md b/.changeset/clean-impalas-fold.md new file mode 100644 index 000000000..1530774ed --- /dev/null +++ b/.changeset/clean-impalas-fold.md @@ -0,0 +1,5 @@ +--- +'@ithaka/pharos-site': patch +--- + +Improve imports with path aliases diff --git a/.tool-versions b/.tool-versions index 8abaea2e5..ffd2870b7 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1 +1 @@ -nodejs 16.14.0 +nodejs 16.18.0 diff --git a/package.json b/package.json index d4f42e047..7ae7d673a 100644 --- a/package.json +++ b/package.json @@ -82,14 +82,14 @@ "@storybook/source-loader": "^6.5.9", "@storybook/theming": "^6.5.9", "@storybook/web-components": "^6.5.9", - "@typescript-eslint/eslint-plugin": "^5.4.0", - "@typescript-eslint/parser": "^5.4.0", + "@typescript-eslint/eslint-plugin": "^5.41.0", + "@typescript-eslint/parser": "^5.41.0", "all-contributors-cli": "^6.20.0", "concurrently": "^6.2.0", "css-loader": "^6.5.1", "cssnano": "^5.0.1", "esbuild-loader": "^2.18.0", - "eslint": "^8.2.0", + "eslint": "^8.26.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-jsx-a11y": "^6.5.1", "eslint-plugin-lit": "^1.6.1", diff --git a/packages/pharos-site/gatsby-config.js b/packages/pharos-site/gatsby-config.js index 304583daa..f802d7f87 100644 --- a/packages/pharos-site/gatsby-config.js +++ b/packages/pharos-site/gatsby-config.js @@ -13,6 +13,16 @@ module.exports = { }, plugins: [ `gatsby-plugin-react-helmet`, + { + resolve: `gatsby-plugin-alias-imports`, + options: { + alias: { + '@components': `src/components/`, + '@guidelines': `static/guidelines/`, + '@images': `static/images/`, + }, + }, + }, { resolve: `gatsby-source-filesystem`, options: { diff --git a/packages/pharos-site/package.json b/packages/pharos-site/package.json index 18caff928..ca7531ed1 100644 --- a/packages/pharos-site/package.json +++ b/packages/pharos-site/package.json @@ -6,11 +6,12 @@ "description": "Pharos acts as a guiding light to helps us create consistent, dependable and focused experiences for all of JSTOR users.", "version": "5.11.3", "dependencies": { + "@ithaka/pharos": "^12.6.0", "@mdx-js/mdx": "^1.6.22", "@mdx-js/react": "^1.6.22", - "@ithaka/pharos": "^12.6.0", "@webcomponents/scoped-custom-element-registry": "^0.0.3", "gatsby": "^4.2.0", + "gatsby-plugin-alias-imports": "^1.0.5", "gatsby-plugin-google-tagmanager": "^4.2.0", "gatsby-plugin-image": "^2.2.0", "gatsby-plugin-manifest": "^4.2.0", @@ -32,9 +33,9 @@ }, "devDependencies": { "@types/mdx-js__react": "^1.5.3", - "@types/react-helmet": "^6.1.0", - "@types/react-dom": "^17.0.0", "@types/react": "^17.0.1", + "@types/react-dom": "^17.0.0", + "@types/react-helmet": "^6.1.0", "babel-preset-gatsby": "^2.2.0", "typescript": "^4.5.2" }, diff --git a/packages/pharos-site/src/pages/components/alert/index.mdx b/packages/pharos-site/src/pages/components/alert/index.mdx index 1a3f6eaa5..59ebca833 100644 --- a/packages/pharos-site/src/pages/components/alert/index.mdx +++ b/packages/pharos-site/src/pages/components/alert/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/alert.docs.mdx'; +import Intro from '@guidelines/alert.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/breadcrumb/index.mdx b/packages/pharos-site/src/pages/components/breadcrumb/index.mdx index 42c3aa022..3c17f42b0 100644 --- a/packages/pharos-site/src/pages/components/breadcrumb/index.mdx +++ b/packages/pharos-site/src/pages/components/breadcrumb/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/breadcrumb.docs'; +import Intro from '@guidelines/breadcrumb.docs'; diff --git a/packages/pharos-site/src/pages/components/button/index.mdx b/packages/pharos-site/src/pages/components/button/index.mdx index bd6140e05..4673ba21c 100644 --- a/packages/pharos-site/src/pages/components/button/index.mdx +++ b/packages/pharos-site/src/pages/components/button/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/button.docs'; +import Intro from '@guidelines/button.docs'; diff --git a/packages/pharos-site/src/pages/components/checkbox/index.mdx b/packages/pharos-site/src/pages/components/checkbox/index.mdx index 84f4e2995..d181f64bd 100644 --- a/packages/pharos-site/src/pages/components/checkbox/index.mdx +++ b/packages/pharos-site/src/pages/components/checkbox/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/checkbox.docs'; +import Intro from '@guidelines/checkbox.docs'; diff --git a/packages/pharos-site/src/pages/components/combobox/index.mdx b/packages/pharos-site/src/pages/components/combobox/index.mdx index bc78dec24..202032153 100644 --- a/packages/pharos-site/src/pages/components/combobox/index.mdx +++ b/packages/pharos-site/src/pages/components/combobox/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/combobox.docs.mdx'; +import Intro from '@guidelines/combobox.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/dropdown-menu-nav/index.mdx b/packages/pharos-site/src/pages/components/dropdown-menu-nav/index.mdx index 6feafc499..4ee501968 100644 --- a/packages/pharos-site/src/pages/components/dropdown-menu-nav/index.mdx +++ b/packages/pharos-site/src/pages/components/dropdown-menu-nav/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/dropdown-menu-nav.docs'; +import Intro from '@guidelines/dropdown-menu-nav.docs'; diff --git a/packages/pharos-site/src/pages/components/dropdown-menu/index.mdx b/packages/pharos-site/src/pages/components/dropdown-menu/index.mdx index fb42ad78f..fad6dbc10 100644 --- a/packages/pharos-site/src/pages/components/dropdown-menu/index.mdx +++ b/packages/pharos-site/src/pages/components/dropdown-menu/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/dropdown-menu.docs'; +import Intro from '@guidelines/dropdown-menu.docs'; diff --git a/packages/pharos-site/src/pages/components/footer/index.mdx b/packages/pharos-site/src/pages/components/footer/index.mdx index 30b70cc81..5f848fffd 100644 --- a/packages/pharos-site/src/pages/components/footer/index.mdx +++ b/packages/pharos-site/src/pages/components/footer/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/footer.docs.mdx'; +import Intro from '@guidelines/footer.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/header/index.mdx b/packages/pharos-site/src/pages/components/header/index.mdx index 8acb7fad6..bbca0e6e6 100644 --- a/packages/pharos-site/src/pages/components/header/index.mdx +++ b/packages/pharos-site/src/pages/components/header/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/header.docs.mdx'; +import Intro from '@guidelines/header.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/heading/index.mdx b/packages/pharos-site/src/pages/components/heading/index.mdx index af2b9e4c1..b345415f6 100644 --- a/packages/pharos-site/src/pages/components/heading/index.mdx +++ b/packages/pharos-site/src/pages/components/heading/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/heading.docs.mdx'; +import Intro from '@guidelines/heading.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/icon/index.mdx b/packages/pharos-site/src/pages/components/icon/index.mdx index 502a97081..369c25d41 100644 --- a/packages/pharos-site/src/pages/components/icon/index.mdx +++ b/packages/pharos-site/src/pages/components/icon/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/icon.docs'; +import Intro from '@guidelines/icon.docs'; diff --git a/packages/pharos-site/src/pages/components/image-card/index.mdx b/packages/pharos-site/src/pages/components/image-card/index.mdx index 8b5275a4e..3e472d4d8 100644 --- a/packages/pharos-site/src/pages/components/image-card/index.mdx +++ b/packages/pharos-site/src/pages/components/image-card/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/image-card.docs'; +import Intro from '@guidelines/image-card.docs'; diff --git a/packages/pharos-site/src/pages/components/input-group/index.mdx b/packages/pharos-site/src/pages/components/input-group/index.mdx index 00674bfc1..f013e22b6 100644 --- a/packages/pharos-site/src/pages/components/input-group/index.mdx +++ b/packages/pharos-site/src/pages/components/input-group/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/input-group.docs.mdx'; +import Intro from '@guidelines/input-group.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/layout/index.mdx b/packages/pharos-site/src/pages/components/layout/index.mdx index 67e4e8f09..e38981f9b 100644 --- a/packages/pharos-site/src/pages/components/layout/index.mdx +++ b/packages/pharos-site/src/pages/components/layout/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/layout.docs.mdx'; +import Intro from '@guidelines/layout.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/link/index.mdx b/packages/pharos-site/src/pages/components/link/index.mdx index 5599e4d31..9777ce2e3 100644 --- a/packages/pharos-site/src/pages/components/link/index.mdx +++ b/packages/pharos-site/src/pages/components/link/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/link.docs.mdx'; +import Intro from '@guidelines/link.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/loading-spinner/index.mdx b/packages/pharos-site/src/pages/components/loading-spinner/index.mdx index 112cfccea..6332a1150 100644 --- a/packages/pharos-site/src/pages/components/loading-spinner/index.mdx +++ b/packages/pharos-site/src/pages/components/loading-spinner/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/loading-spinner.docs.mdx'; +import Intro from '@guidelines/loading-spinner.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/modal/index.mdx b/packages/pharos-site/src/pages/components/modal/index.mdx index 4617ac743..488dfdf11 100644 --- a/packages/pharos-site/src/pages/components/modal/index.mdx +++ b/packages/pharos-site/src/pages/components/modal/index.mdx @@ -1,4 +1,4 @@ -import Intro from '../../../../static/guidelines/modal.docs.mdx'; +import Intro from '@guidelines/modal.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/pagination/index.mdx b/packages/pharos-site/src/pages/components/pagination/index.mdx index cdf02826e..e2d4bd0d9 100644 --- a/packages/pharos-site/src/pages/components/pagination/index.mdx +++ b/packages/pharos-site/src/pages/components/pagination/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/pagination.docs.mdx'; +import Intro from '@guidelines/pagination.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/progress-bar/index.mdx b/packages/pharos-site/src/pages/components/progress-bar/index.mdx index 3c5964018..ebd6fea75 100644 --- a/packages/pharos-site/src/pages/components/progress-bar/index.mdx +++ b/packages/pharos-site/src/pages/components/progress-bar/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/progress-bar.docs'; +import Intro from '@guidelines/progress-bar.docs'; diff --git a/packages/pharos-site/src/pages/components/radio-button/index.mdx b/packages/pharos-site/src/pages/components/radio-button/index.mdx index 9a1a80bd5..1aac42a44 100644 --- a/packages/pharos-site/src/pages/components/radio-button/index.mdx +++ b/packages/pharos-site/src/pages/components/radio-button/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/radio.docs.mdx'; +import Intro from '@guidelines/radio.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/select/index.mdx b/packages/pharos-site/src/pages/components/select/index.mdx index 10aa8d47b..c5f98cefe 100644 --- a/packages/pharos-site/src/pages/components/select/index.mdx +++ b/packages/pharos-site/src/pages/components/select/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/select.docs.mdx'; +import Intro from '@guidelines/select.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/sidenav/index.mdx b/packages/pharos-site/src/pages/components/sidenav/index.mdx index 1f7226713..1bdb47c1a 100644 --- a/packages/pharos-site/src/pages/components/sidenav/index.mdx +++ b/packages/pharos-site/src/pages/components/sidenav/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/sidenav.docs'; +import Intro from '@guidelines/sidenav.docs'; diff --git a/packages/pharos-site/src/pages/components/tabs/index.mdx b/packages/pharos-site/src/pages/components/tabs/index.mdx index f24b62cd1..c30a4aa64 100644 --- a/packages/pharos-site/src/pages/components/tabs/index.mdx +++ b/packages/pharos-site/src/pages/components/tabs/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/tabs.docs'; +import Intro from '@guidelines/tabs.docs'; diff --git a/packages/pharos-site/src/pages/components/text-input/index.mdx b/packages/pharos-site/src/pages/components/text-input/index.mdx index dc0c7b1d5..b178b5e4a 100644 --- a/packages/pharos-site/src/pages/components/text-input/index.mdx +++ b/packages/pharos-site/src/pages/components/text-input/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/text-input.docs.mdx'; +import Intro from '@guidelines/text-input.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/textarea/index.mdx b/packages/pharos-site/src/pages/components/textarea/index.mdx index c3aacf26b..fac4d0011 100644 --- a/packages/pharos-site/src/pages/components/textarea/index.mdx +++ b/packages/pharos-site/src/pages/components/textarea/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/textarea.docs.mdx'; +import Intro from '@guidelines/textarea.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/toast/index.mdx b/packages/pharos-site/src/pages/components/toast/index.mdx index 8990a9db0..503929805 100644 --- a/packages/pharos-site/src/pages/components/toast/index.mdx +++ b/packages/pharos-site/src/pages/components/toast/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/toast.docs.mdx'; +import Intro from '@guidelines/toast.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/toggle-button-group/index.mdx b/packages/pharos-site/src/pages/components/toggle-button-group/index.mdx index a328aa000..ddc6379ea 100644 --- a/packages/pharos-site/src/pages/components/toggle-button-group/index.mdx +++ b/packages/pharos-site/src/pages/components/toggle-button-group/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/toggle-button-group.docs.mdx'; +import Intro from '@guidelines/toggle-button-group.docs.mdx'; diff --git a/packages/pharos-site/src/pages/components/tooltip/index.mdx b/packages/pharos-site/src/pages/components/tooltip/index.mdx index 19eb5bc15..0c2ade10c 100644 --- a/packages/pharos-site/src/pages/components/tooltip/index.mdx +++ b/packages/pharos-site/src/pages/components/tooltip/index.mdx @@ -1,3 +1,3 @@ -import Intro from '../../../../static/guidelines/tooltip.docs.mdx'; +import Intro from '@guidelines/tooltip.docs.mdx'; diff --git a/packages/pharos-site/src/pages/content-style-guide/web-elements.mdx b/packages/pharos-site/src/pages/content-style-guide/web-elements.mdx index 7365a77b9..4a4125115 100644 --- a/packages/pharos-site/src/pages/content-style-guide/web-elements.mdx +++ b/packages/pharos-site/src/pages/content-style-guide/web-elements.mdx @@ -1,6 +1,6 @@ import { Fragment } from 'react'; -import PageSection from '../../components/statics/PageSection'; -import BestPractices from '../../components/statics/BestPractices'; +import PageSection from '@components/statics/PageSection'; +import BestPractices from '@components/statics/BestPractices'; diff --git a/packages/pharos-site/static/guidelines/alert.docs.mdx b/packages/pharos-site/static/guidelines/alert.docs.mdx index 597e8705b..8b4dc13ae 100644 --- a/packages/pharos-site/static/guidelines/alert.docs.mdx +++ b/packages/pharos-site/static/guidelines/alert.docs.mdx @@ -1,5 +1,5 @@ -import PageSection from '../../src/components/statics/PageSection.tsx'; -import BestPractices from '../../src/components/statics/BestPractices.tsx'; +import PageSection from '@components/statics/PageSection.tsx'; +import BestPractices from '@components/statics/BestPractices.tsx'; -import PageSection from '../../src/components/statics/PageSection.tsx'; -import BestPractices from '../../src/components/statics/BestPractices.tsx'; +import PageSection from '@components/statics/PageSection.tsx'; +import BestPractices from '@components/statics/BestPractices.tsx'; diff --git a/packages/pharos-site/static/guidelines/text-input.docs.mdx b/packages/pharos-site/static/guidelines/text-input.docs.mdx index f8cc53332..12bbfe24c 100644 --- a/packages/pharos-site/static/guidelines/text-input.docs.mdx +++ b/packages/pharos-site/static/guidelines/text-input.docs.mdx @@ -1,5 +1,5 @@ -import PageSection from '../../src/components/statics/PageSection.tsx'; -import BestPractices from '../../src/components/statics/BestPractices.tsx'; +import PageSection from '@components/statics/PageSection.tsx'; +import BestPractices from '@components/statics/BestPractices.tsx'; =4.43.0 <6.0.0", webpack@^5.61.0, webpack@^5.64.1, webpack@^5.9.0: - version "5.73.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.73.0.tgz#bbd17738f8a53ee5760ea2f59dce7f3431d35d38" - integrity sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA== + version "5.74.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.74.0.tgz#02a5dac19a17e0bb47093f2be67c695102a55980" + integrity sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA== 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.4.1" + acorn "^8.7.1" acorn-import-assertions "^1.7.6" browserslist "^4.14.5" chrome-trace-event "^1.0.2" - enhanced-resolve "^5.9.3" + enhanced-resolve "^5.10.0" es-module-lexer "^0.9.0" eslint-scope "5.1.1" events "^3.2.0" @@ -20961,7 +21189,7 @@ webpack@4, "webpack@>=4.43.0 <6.0.0", webpack@^5.61.0, webpack@^5.64.1, webpack@ schema-utils "^3.1.0" tapable "^2.1.1" terser-webpack-plugin "^5.1.3" - watchpack "^2.3.1" + watchpack "^2.4.0" webpack-sources "^3.2.3" whatwg-encoding@^1.0.5: @@ -21265,9 +21493,9 @@ ws@^8.2.3: integrity sha512-IHVsKe2pjajSUIl4KYMQOdlyliovpEPquKkqbwswulszzI7r0SfQrxnXdWAEqOlDCLrVSJzo+O1hAwdog2sKSQ== ws@^8.3.0: - version "8.7.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.7.0.tgz#eaf9d874b433aa00c0e0d8752532444875db3957" - integrity sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg== + version "8.10.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.10.0.tgz#00a28c09dfb76eae4eb45c3b565f771d6951aa51" + integrity sha512-+s49uSmZpvtAsd2h37vIPy1RBusaLawVe8of+GyEPsaJTCMpj/2v8NpeK1SHXjBlQ95lQTmQofOJnFiLoaN3yw== ws@~7.4.2: version "7.4.6" From 080c496fedd4be13bd7f63c92332b9e1f6e32069 Mon Sep 17 00:00:00 2001 From: Dane Hillard Date: Mon, 31 Oct 2022 20:35:16 -0400 Subject: [PATCH 2/9] Tooltip, DropdownMenu: replace popperjs with floating-ui (#434) * chore(tooltip, dropdown-menu): replace popperjs with floating-ui * chore: add debug logging to GitHub Actions * chore: remove debug logging from GitHub Actions * chore: add changeset * fix(ci): update set-output to environment files Closes #436 * chore(ci): update actions/cache from v2 to v3 * chore(ci): update actions/checkout and actions/setup-node from v2 to v3 * fix(styles): fix stylelint errors around specificity * fix(toggle-button): fix border width regression on hover * fix(toggle-button): fix style regression and story display * fix(tooltip, dropdown-menu): remove contain property * fix(storybook): fix poor prettier transform --- .changeset/fast-chicken-repeat.md | 10 + .github/workflows/chromatic.yml | 10 +- .github/workflows/release.yml | 10 +- .github/workflows/size-limit.yml | 10 +- .github/workflows/verify.yml | 20 +- package.json | 1 + .../static/guidelines/tooltip.docs.mdx | 9 +- packages/pharos/package.json | 10 +- .../src/components/base/overlay-element.ts | 118 +- .../src/components/button/pharos-button.scss | 46 +- .../dropdown-menu/pharos-dropdown-menu.scss | 2 +- .../pharos-dropdown-menu.test.ts | 20 - .../dropdown-menu/pharos-dropdown-menu.ts | 68 +- .../layout/PharosLayout.react.stories.mdx | 4 +- .../src/components/link/pharos-link.scss | 12 +- .../text-input/pharos-text-input.scss | 8 +- .../PharosToggleButtonGroup.react.stories.mdx | 12 +- .../pharos-toggle-button-group.wc.stories.mdx | 23 +- .../pharos-toggle-button.scss | 61 +- .../tooltip/PharosTooltip.react.stories.mdx | 61 +- .../components/tooltip/pharos-tooltip.scss | 42 +- .../components/tooltip/pharos-tooltip.test.ts | 48 +- .../src/components/tooltip/pharos-tooltip.ts | 139 +- .../tooltip/pharos-tooltip.wc.stories.mdx | 2 +- packages/pharos/src/utils/popper.ts | 16 - packages/pharos/src/utils/scss/_mixins.scss | 2 +- yarn.lock | 11748 ++++++++-------- 27 files changed, 6073 insertions(+), 6439 deletions(-) create mode 100644 .changeset/fast-chicken-repeat.md delete mode 100644 packages/pharos/src/utils/popper.ts diff --git a/.changeset/fast-chicken-repeat.md b/.changeset/fast-chicken-repeat.md new file mode 100644 index 000000000..b2f767100 --- /dev/null +++ b/.changeset/fast-chicken-repeat.md @@ -0,0 +1,10 @@ +--- +'@ithaka/pharos': minor +'@ithaka/pharos-site': minor +--- + +* Replace PopperJS with Floating UI for tooltips and dropdown menus +* Update GitHub Actions to use environment files instead of `set-output` +* Update GitHub Actions action versions +* Fix stylelint errors for Link, ToggleButton, TextInput + diff --git a/.github/workflows/chromatic.yml b/.github/workflows/chromatic.yml index 4a70c033c..d673b2e5f 100644 --- a/.github/workflows/chromatic.yml +++ b/.github/workflows/chromatic.yml @@ -16,25 +16,25 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: fetch-depth: 0 - name: Setup Node.js 16.x - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: 16.x registry-url: 'https://registry.npmjs.org' - name: Get yarn cache directory path id: yarn-cache-dir-path - run: echo "::set-output name=dir::$(yarn cache dir)" + run: echo "YARN_CACHE_DIR=$(yarn cache dir)" >> $GITHUB_OUTPUT - - uses: actions/cache@v2 + - uses: actions/cache@v3 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: | - ${{ steps.yarn-cache-dir-path.outputs.dir }} + ${{ steps.yarn-cache-dir-path.outputs.YARN_CACHE_DIR }} **/node_modules key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} restore-keys: | diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 80e38977e..35d4e6698 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,26 +13,26 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: # This makes Actions fetch all Git history so that Changesets can generate changelogs with the correct commits fetch-depth: 0 - name: Setup Node.js 16.x - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: 16.x registry-url: 'https://registry.npmjs.org' - name: Get yarn cache directory path id: yarn-cache-dir-path - run: echo "::set-output name=dir::$(yarn cache dir)" + run: echo "YARN_CACHE_DIR=$(yarn cache dir)" >> $GITHUB_OUTPUT - - uses: actions/cache@v2 + - uses: actions/cache@v3 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: | - ${{ steps.yarn-cache-dir-path.outputs.dir }} + ${{ steps.yarn-cache-dir-path.outputs.YARN_CACHE_DIR }} **/node_modules key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} restore-keys: | diff --git a/.github/workflows/size-limit.yml b/.github/workflows/size-limit.yml index 09f14848d..3cc13d93d 100644 --- a/.github/workflows/size-limit.yml +++ b/.github/workflows/size-limit.yml @@ -11,22 +11,22 @@ jobs: env: CI_JOB_NUMBER: 1 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Setup Node 16.x - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: 16.x - name: Get yarn cache directory path id: yarn-cache-dir-path - run: echo "::set-output name=dir::$(yarn cache dir)" + run: echo "YARN_CACHE_DIR=$(yarn cache dir)" >> $GITHUB_OUTPUT - - uses: actions/cache@v2 + - uses: actions/cache@v3 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: | - ${{ steps.yarn-cache-dir-path.outputs.dir }} + ${{ steps.yarn-cache-dir-path.outputs.YARN_CACHE_DIR }} **/node_modules key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} restore-keys: | diff --git a/.github/workflows/verify.yml b/.github/workflows/verify.yml index 74997611f..623c22ae7 100644 --- a/.github/workflows/verify.yml +++ b/.github/workflows/verify.yml @@ -11,22 +11,22 @@ jobs: name: Lint runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Setup Node 16.x - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: 16.x - name: Get yarn cache directory path id: yarn-cache-dir-path - run: echo "::set-output name=dir::$(yarn cache dir)" + run: echo "YARN_CACHE_DIR=$(yarn cache dir)" >> $GITHUB_OUTPUT - - uses: actions/cache@v2 + - uses: actions/cache@v3 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: | - ${{ steps.yarn-cache-dir-path.outputs.dir }} + ${{ steps.yarn-cache-dir-path.outputs.YARN_CACHE_DIR }} **/node_modules key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} restore-keys: | @@ -42,22 +42,22 @@ jobs: name: Test runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Setup Node 16.x - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: 16.x - name: Get yarn cache directory path id: yarn-cache-dir-path - run: echo "::set-output name=dir::$(yarn cache dir)" + run: echo "YARN_CACHE_DIR=$(yarn cache dir)" >> $GITHUB_OUTPUT - - uses: actions/cache@v2 + - uses: actions/cache@v3 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: | - ${{ steps.yarn-cache-dir-path.outputs.dir }} + ${{ steps.yarn-cache-dir-path.outputs.YARN_CACHE_DIR }} **/node_modules key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} restore-keys: | diff --git a/package.json b/package.json index 7ae7d673a..571c5056c 100644 --- a/package.json +++ b/package.json @@ -126,6 +126,7 @@ ] }, "resolutions": { + "@typescript-eslint/parser": "^5.41.0", "axe-core": "^4.3.3", "playwright": "^1.17.1", "webpack": "^5.64.1", diff --git a/packages/pharos-site/static/guidelines/tooltip.docs.mdx b/packages/pharos-site/static/guidelines/tooltip.docs.mdx index 5dee1d36c..474c496a9 100644 --- a/packages/pharos-site/static/guidelines/tooltip.docs.mdx +++ b/packages/pharos-site/static/guidelines/tooltip.docs.mdx @@ -146,13 +146,14 @@ import BestPractices from '@components/statics/BestPractices.tsx';

- We use Popper.js to position our - tooltips. By default, tooltips are placed in the center of the trigger, but the - caret/arrow will move and remain "attached" with Popper's overflow functionality. + We use Floating UI to position + our tooltips. By default, tooltips are placed in the center of the trigger, but the + caret/arrow will move and remain "attached" with Floating UI's flip and shift + functionality.

Popper tooltip overflow example diff --git a/packages/pharos/package.json b/packages/pharos/package.json index aba9ba117..95ddc2960 100644 --- a/packages/pharos/package.json +++ b/packages/pharos/package.json @@ -54,20 +54,20 @@ "author": "ITHAKA", "license": "MIT", "dependencies": { + "@floating-ui/dom": "^1.0.3", "@ithaka/focus-trap": "2.0.1", "@lit-labs/scoped-registry-mixin": "^1.0.0", "@open-wc/dedupe-mixin": "^1.3.0", - "@popperjs/core": "^2.11.0", "lit": "^2.0.0" }, "devDependencies": { "@custom-elements-manifest/analyzer": "^0.5.6", "@open-wc/testing": "^3.0.1", - "@types/react-dom": "^17.0.0", "@types/react": "^17.0.1", - "@web/test-runner": "^0.13.16", - "@web/test-runner-commands": "^0.5.10", - "@web/test-runner-playwright": "^0.8.8", + "@types/react-dom": "^17.0.0", + "@web/test-runner": "^0.15.0", + "@web/test-runner-commands": "^0.6.5", + "@web/test-runner-playwright": "^0.9.0", "autoprefixer": "^10.4.0", "cem-plugin-readonly": "^0.0.2", "chokidar": "^3.5.2", diff --git a/packages/pharos/src/components/base/overlay-element.ts b/packages/pharos/src/components/base/overlay-element.ts index 23bb00c5e..f10f6ff45 100644 --- a/packages/pharos/src/components/base/overlay-element.ts +++ b/packages/pharos/src/components/base/overlay-element.ts @@ -1,13 +1,23 @@ import { PharosElement } from './pharos-element'; import { property } from 'lit/decorators.js'; import type { PropertyValues } from 'lit'; -import deepSelector from '../../utils/deepSelector'; -import { placements } from '../../utils/popper'; -import type { Instance, Options, Placement, PositioningStrategy } from '../../utils/popper'; - -export type { Placement, PositioningStrategy }; - -const STRATEGIES = ['absolute', 'fixed']; +import type { + Side, + Placement, + AlignedPlacement, + Strategy as PositioningStrategy, +} from '@floating-ui/dom/src/types'; +export { arrow, autoUpdate, computePosition, flip, offset, shift } from '@floating-ui/dom'; + +export type { Placement, PositioningStrategy, Side }; + +const STRATEGIES: PositioningStrategy[] = ['absolute', 'fixed']; +const SIDES: Side[] = ['top', 'right', 'bottom', 'left']; +export const allPlacements = SIDES.reduce( + (acc: Placement[], side) => + acc.concat(side, `${side}-start` as AlignedPlacement, `${side}-end` as AlignedPlacement), + [] +); /** * The base overlay element class to house shared properties, styles, and methods. @@ -26,13 +36,13 @@ export class OverlayElement extends PharosElement { * @attr placement */ @property({ reflect: true }) - public placement: Placement = 'top'; + public placement: Placement | 'auto' = 'top'; // 'auto' kept for backward compatibility; remove in next major version /** - * List of placements for popper to try in the order provided when no space is available for the preferred placement. + * List of placements to try in the order provided when no space is available for the preferred placement. */ @property({ attribute: false }) - public fallbackPlacements?: Placement[]; + public fallbackPlacements?: (Placement | 'auto')[]; // 'auto' kept for backward compatibility; remove in next major version /** * Describes the positioning strategy to use. If your target element is in a fixed container, use the fixed strategy. @@ -41,22 +51,46 @@ export class OverlayElement extends PharosElement { @property({ reflect: true }) public strategy: PositioningStrategy = 'absolute'; - protected _popper?: Instance; - protected _options?: Options; + protected _filteredFallbackPlacements?: Placement[]; protected override update(changedProperties: PropertyValues): void { super.update && super.update(changedProperties); - if (changedProperties.has('placement') && !placements.includes(this.placement)) { - throw new Error( - `${this.placement} is not a valid placement. Valid placements are: ${placements.join(', ')}` - ); + if (changedProperties.has('placement')) { + if ( + this.placement !== 'auto' && // 'auto' kept for backward compatibility; remove in next major version + !allPlacements.includes(this.placement) + ) { + throw new Error( + `${this.placement} is not a valid placement. Valid placements are: ${allPlacements.join( + ', ' + )}` + ); + } + + if (this.placement === 'auto') { + console.warn( + 'The auto placement will be removed in the next major version of Pharos, as this is now the default behavior.' + ); + } } if (changedProperties.has('fallbackPlacements')) { - const invalid = this.fallbackPlacements?.filter((fallback) => !placements.includes(fallback)); + const invalid = this.fallbackPlacements?.filter( + (fallback) => fallback !== 'auto' && !allPlacements.includes(fallback) // 'auto' kept for backward compatibility; remove in next major version + ); + + if (this.fallbackPlacements?.includes('auto')) { + console.warn( + 'The auto placement will be removed in the next major version of Pharos, as this is now the default behavior.' + ); + } + this._filteredFallbackPlacements = this.fallbackPlacements?.filter( + (fallback) => fallback !== 'auto' + ) as Placement[]; + if (invalid?.length) { throw new Error( - `${invalid.join(', ')} are not valid fallbacks. Valid fallbacks are: ${placements.join( + `${invalid.join(', ')} are not valid fallbacks. Valid fallbacks are: ${allPlacements.join( ', ' )}` ); @@ -70,52 +104,4 @@ export class OverlayElement extends PharosElement { ); } } - - protected override updated(changedProperties: PropertyValues): void { - if ( - changedProperties.has('placement') || - changedProperties.has('fallbackPlacements') || - changedProperties.has('strategy') || - changedProperties.has('boundary') - ) { - if (this._options) { - this._options.placement = this.placement; - this._options.strategy = this.strategy; - - const flip = this._options.modifiers.find(({ name }) => name === 'flip'); - if (flip?.options) { - flip.options.fallbackPlacements = this.fallbackPlacements; - } - - const preventOverflow = this._options.modifiers.find( - ({ name }) => name === 'preventOverflow' - ); - if (preventOverflow?.options) { - preventOverflow.options.boundary = - this.boundary === 'clippingParents' ? this.boundary : deepSelector(`#${this.boundary}`); - } - - this._popper?.setOptions(this._options); - } - } - } - - protected async _setPopperListeners(): Promise { - // Enable listeners when open and disable them when closed - if (this._options) { - const listeners = this._options.modifiers.pop(); - - if (listeners?.options) { - listeners.options.scroll = this.open; - listeners.options.resize = this.open; - } - - this._options.modifiers.push(listeners || {}); - - if (!this.open) { - await new Promise((r) => setTimeout(r, 100)); - } - this._popper?.setOptions(this._options); - } - } } diff --git a/packages/pharos/src/components/button/pharos-button.scss b/packages/pharos/src/components/button/pharos-button.scss index 51368343d..9bd3eea6f 100644 --- a/packages/pharos/src/components/button/pharos-button.scss +++ b/packages/pharos/src/components/button/pharos-button.scss @@ -82,29 +82,6 @@ padding: var(--pharos-spacing-one-half-x); } -:host([icon]:not([disabled])) #button-element:hover, -:host([icon]:not([disabled])) #button-element:active { - padding: calc(var(--pharos-spacing-one-quarter-x) - 1px); -} - -:host([variant='subtle']:not([disabled])) #button-element:hover, -:host([variant='subtle']:not([disabled])) #button-element:active { - @include mixins.button-color( - $color: var(--pharos-color-hover-primary), - $background-color: var(--pharos-color-ui-20), - $border-color: var(--pharos-color-ui-20) - ); -} - -:host([variant='overlay']:not([disabled])) #button-element:hover, -:host([variant='overlay']:not([disabled])) #button-element:active { - @include mixins.button-color( - $color: var(--pharos-color-ui-10), - $background-color: var(--pharos-color-marble-gray-20), - $border-color: var(--pharos-color-marble-gray-20) - ); -} - :host([on-background][variant='primary']:not([disabled])) #button-element { @include mixins.button-color( $color: var(--pharos-color-interactive-secondary), @@ -129,6 +106,29 @@ ); } +:host([icon]:not([disabled])) #button-element:hover, +:host([icon]:not([disabled])) #button-element:active { + padding: calc(var(--pharos-spacing-one-quarter-x) - 1px); +} + +:host([variant='subtle']:not([disabled])) #button-element:hover, +:host([variant='subtle']:not([disabled])) #button-element:active { + @include mixins.button-color( + $color: var(--pharos-color-hover-primary), + $background-color: var(--pharos-color-ui-20), + $border-color: var(--pharos-color-ui-20) + ); +} + +:host([variant='overlay']:not([disabled])) #button-element:hover, +:host([variant='overlay']:not([disabled])) #button-element:active { + @include mixins.button-color( + $color: var(--pharos-color-ui-10), + $background-color: var(--pharos-color-marble-gray-20), + $border-color: var(--pharos-color-marble-gray-20) + ); +} + :host([icon-condensed][icon]:not([disabled])) #button-element:hover, :host([icon-condensed][icon]:not([disabled])) #button-element:active { padding: var(--pharos-spacing-one-eighth-x); diff --git a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.scss b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.scss index ddcd5ac03..aee850984 100644 --- a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.scss +++ b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.scss @@ -7,13 +7,13 @@ pointer-events: none; top: 0; left: 0; - contain: layout; } .dropdown-menu__list { @include mixins.interactive-focus; background-color: var(--pharos-color-ui-10); + position: relative; margin: 0; list-style-type: none; padding-left: 0; diff --git a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.test.ts b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.test.ts index 8d3b06398..b9c44eb00 100644 --- a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.test.ts +++ b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.test.ts @@ -741,24 +741,4 @@ describe('pharos-dropdown-menu', () => { expect(lastItem['_last']).to.be.true; }); - - it('is placed "bottom-start" when opened in a menu nav', async () => { - const trigger = document.createElement('button'); - const parentNode = document.createElement('pharos-dropdown-menu-nav'); - - trigger.setAttribute('id', 'trigger'); - trigger.setAttribute('data-dropdown-menu-id', 'my-dropdown'); - trigger.setAttribute('data-dropdown-menu-hover', ''); - document.body.appendChild(trigger); - - component = await fixture(getSimpleDropdown(), { - parentNode, - }); - - trigger.dispatchEvent(new MouseEvent('mouseenter')); - await aTimeout(150); - await component.updateComplete; - - expect(component['_options']?.placement).to.equal('bottom-start'); - }); }); diff --git a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.ts b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.ts index 055368152..65c48e89b 100644 --- a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.ts +++ b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.ts @@ -2,7 +2,6 @@ import { html } from 'lit'; import { property, query, state } from 'lit/decorators.js'; import type { TemplateResult, CSSResultArray, PropertyValues } from 'lit'; import { styleMap } from 'lit/directives/style-map.js'; -import { createPopper } from '../../utils/popper'; import debounce from '../../utils/debounce'; import observeResize from '../../utils/observeResize'; import { dropdownMenuStyles } from './pharos-dropdown-menu.css'; @@ -15,6 +14,7 @@ import FocusMixin from '../../utils/mixins/focus'; import { FocusTrap } from '@ithaka/focus-trap'; import type { Placement, PositioningStrategy } from '../base/overlay-element'; +import { autoUpdate, computePosition, flip, offset } from '../base/overlay-element'; export type { Placement, PositioningStrategy }; /** @@ -63,6 +63,7 @@ export class PharosDropdownMenu extends ScopedRegistryMixin(FocusMixin(OverlayEl private _hasHover = false; private _moveFocusToLast = false; private _enterByKey = false; + private _cleanup?: { (): void } = undefined; private _observeResizeTrigger: Handle | null = null; @@ -77,7 +78,6 @@ export class PharosDropdownMenu extends ScopedRegistryMixin(FocusMixin(OverlayEl 10 ); this._targetWidth = offsetWidth - (borderLeft + borderRight); - this._popper?.update(); }); constructor() { @@ -133,27 +133,20 @@ export class PharosDropdownMenu extends ScopedRegistryMixin(FocusMixin(OverlayEl protected override updated(changedProperties: PropertyValues): void { if (changedProperties.has('open')) { - const popperRefUpdated = this._popper?.state.elements.reference === this._currentTrigger; - if (this._currentTrigger && this._navMenu) { (this._currentTrigger as PharosDropdownMenuNavLink).isActive = this.open; } - if (this.open && !this._popper) { + if (this.open) { this._setupMenu(); } - if (this.open && this._popper && !popperRefUpdated) { - this._popper.state.elements.reference = this._currentTrigger as Element; - this._popper.update(); - } - if (!this._currentTrigger?.hasAttribute('data-dropdown-menu-hover') || this._enterByKey) { if (this.open) { debounce(() => { this._focusContents(); }, 1)(); - } else if (popperRefUpdated && !this._navMenu) { + } else if (!this._navMenu) { this._returnTriggerFocus(); } } @@ -162,10 +155,12 @@ export class PharosDropdownMenu extends ScopedRegistryMixin(FocusMixin(OverlayEl this._currentTrigger = null; this._enterByKey = false; this._resetItemsState(); + if (this._cleanup) { + this._cleanup(); + } } this._setHoverListeners(); - this._setPopperListeners(); this._setupResizeObserver(); this._setTriggerAttributes(); this._emitVisibilityChange(); @@ -238,34 +233,27 @@ export class PharosDropdownMenu extends ScopedRegistryMixin(FocusMixin(OverlayEl private _setupMenu(): void { const yOffset = this._navMenu ? 0 : 8; - if (this._currentTrigger && this._menu) { - this._options = { - placement: this._navMenu ? 'bottom-start' : this.placement, - modifiers: [ - { - name: 'flip', - options: { - fallbackPlacements: this.fallbackPlacements, - }, - }, - { - name: 'offset', - options: { - offset: [0, yOffset], - }, - }, - { - name: 'eventListeners', - options: { - scroll: this.open, - resize: this.open, - }, - }, - ], - strategy: this.strategy, - }; - - this._popper = createPopper(this._currentTrigger, this, this._options); + const placement = this.placement === 'auto' ? 'bottom-start' : this.placement; + if (this._currentTrigger) { + this._cleanup = autoUpdate(this._currentTrigger, this, () => { + if (this._currentTrigger && this._menu) { + computePosition(this._currentTrigger, this, { + placement: this._navMenu ? 'bottom-start' : placement, + strategy: this.strategy, + middleware: [ + offset(yOffset), + flip({ + fallbackPlacements: this._filteredFallbackPlacements, + }), + ], + }).then(({ x, y }) => { + Object.assign(this.style, { + left: `${x}px`, + top: `${y}px`, + }); + }); + } + }); } } diff --git a/packages/pharos/src/components/layout/PharosLayout.react.stories.mdx b/packages/pharos/src/components/layout/PharosLayout.react.stories.mdx index 8510f06a2..93808546f 100644 --- a/packages/pharos/src/components/layout/PharosLayout.react.stories.mdx +++ b/packages/pharos/src/components/layout/PharosLayout.react.stories.mdx @@ -79,7 +79,7 @@ export const gridColumns = () => { Pharos Home -
+
{gridColumns()}
@@ -104,7 +104,7 @@ export const gridColumns = () => { Pharos Home -
+
{gridColumns()}
diff --git a/packages/pharos/src/components/link/pharos-link.scss b/packages/pharos/src/components/link/pharos-link.scss index fc727c8d6..ad5c3ce2a 100644 --- a/packages/pharos/src/components/link/pharos-link.scss +++ b/packages/pharos/src/components/link/pharos-link.scss @@ -99,12 +99,6 @@ @include mixins.hidden; } -:host([no-hover]) #link-element:hover { - @include mixins.underline($text-decoration-color: var(--pharos-color-interactive-secondary)); - - color: var(--pharos-color-interactive-secondary); -} - :host([on-background][subtle]) #link-element { @at-root &:hover { @include mixins.underline($text-decoration-color: var(--pharos-color-interactive-tertiary)); @@ -115,6 +109,12 @@ } } +:host([no-hover]) #link-element:hover { + @include mixins.underline($text-decoration-color: var(--pharos-color-interactive-secondary)); + + color: var(--pharos-color-interactive-secondary); +} + :host([no-hover][subtle]) #link-element:hover { @include mixins.no-underline; } diff --git a/packages/pharos/src/components/text-input/pharos-text-input.scss b/packages/pharos/src/components/text-input/pharos-text-input.scss index cf1454a31..c41edc36e 100644 --- a/packages/pharos/src/components/text-input/pharos-text-input.scss +++ b/packages/pharos/src/components/text-input/pharos-text-input.scss @@ -59,6 +59,10 @@ padding: var(--pharos-spacing-1-x); } +:host([invalidated][variant='prominent']) #input-element { + @include mixins.input-padding-thick-border-prominent; +} + :host([on-background]) #input-element { @include mixins.input-on-background; @@ -71,7 +75,3 @@ :host([variant='prominent']) #input-element:focus { @include mixins.input-padding-thick-border-prominent; } - -:host([invalidated][variant='prominent']) #input-element { - @include mixins.input-padding-thick-border-prominent; -} diff --git a/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.mdx b/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.mdx index 45bfd3a08..ecc9e732d 100644 --- a/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.mdx +++ b/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.mdx @@ -47,14 +47,12 @@ import { PharosToggleButton } from '../../react-components/toggle-button-group/p document.querySelector('#presentation-view').style.display = 'block'; }} id="view-presentation-button" - icon-left="view-gallery" + icon-left="image" > Presentation -
- List view -
+
List view
@@ -74,10 +72,10 @@ import { PharosToggleButton } from '../../react-components/toggle-button-group/p }} > action('Select')(e.target.id)}> - + List - + Gallery @@ -95,7 +93,7 @@ import { PharosToggleButton } from '../../react-components/toggle-button-group/p Gallery - + Presentation diff --git a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.mdx b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.mdx index d5fd02595..ec6d5ae95 100644 --- a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.mdx +++ b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.mdx @@ -26,9 +26,8 @@ import { html } from 'lit'; icon-left="view-list" id="view-list-button" > - List - - - Gallery - - List view +
List view
`} @@ -72,9 +70,8 @@ import { html } from 'lit'; @pharos-toggle-button-selected="${(e) => action('Selected')(e.target.id)}" > - List - - + List Gallery @@ -88,9 +85,9 @@ import { html } from 'lit'; {html` - - - + `} diff --git a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button.scss b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button.scss index 070293834..1300b1e28 100644 --- a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button.scss +++ b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button.scss @@ -7,22 +7,19 @@ $border-color: var(--pharos-color-black) ); + outline-offset: 0; border-radius: 0; + border-width: 1px; } -:host([first='true']) #button-element { +:host([variant='secondary'][first='true']) #button-element { border-radius: var(--pharos-radius-base-standard) 0 0 var(--pharos-radius-base-standard); } -:host([last='true']) #button-element { +:host([variant='secondary'][last='true']) #button-element { border-radius: 0 var(--pharos-radius-base-standard) var(--pharos-radius-base-standard) 0; } -:host([variant='secondary']) #button-element:focus { - outline-offset: 0; - z-index: 100; -} - :host([variant='secondary']:not([selected])) #button-element { @include mixins.button-color( $color: var(--pharos-color-text-40), @@ -30,56 +27,64 @@ $border-color: var(--pharos-color-ui-40) ); - pharos-icon { + [data-pharos-component='PharosIcon'] { fill: var(--pharos-color-ui-40); stroke: var(--pharos-color-ui-40); } } :host([variant='secondary'][icon]:not([selected])) #button-element { - pharos-icon { + [data-pharos-component='PharosIcon'] { fill: var(--pharos-color-ui-50); stroke: var(--pharos-color-ui-50); } } -:host([variant='secondary']:not([disabled])) #button-element:hover, -:host([variant='secondary']:not([selected])) #button-element:hover, -:host([variant='secondary']:not([selected])) #button-element:active { - color: var(--pharos-color-hover-primary); - background-color: var(--pharos-color-marble-gray-97); - border-width: 1px; - padding: var(--pharos-spacing-one-quarter-x) var(--pharos-spacing-three-quarters-x); - - pharos-icon { - fill: var(--pharos-color-hover-primary); - stroke: var(--pharos-color-hover-primary); - } -} - :host([variant='secondary'][first='false']:not([selected])) #button-element { border-left-width: 0; } -:host([variant='secondary'][hide-left-border='true']:not([selected])) #button-element, -:host([variant='secondary'][hide-left-border='true'][selected]) #button-element { +:host([variant='secondary'][hide-left-border='true'][selected]) #button-element, +:host([variant='secondary'][hide-left-border='true']:not([selected])) #button-element { border-left-width: 0; } -:host([variant='secondary'][hide-right-border='true']:not([selected])) #button-element, -:host([variant='secondary'][hide-right-border='true'][selected]) #button-element { +:host([variant='secondary'][hide-right-border='true'][selected]) #button-element, +:host([variant='secondary'][hide-right-border='true']:not([selected])) #button-element { border-right-width: 0; } +:host([variant='secondary']) #button-element:hover, +:host([variant='secondary']) #button-element:active { + border-width: 1px; +} + :host([variant='secondary'][hide-left-border='true']:not([selected])) #button-element:active { border-left-width: 0; } +:host([variant='secondary']) #button-element:focus { + z-index: 100; +} + :host([variant='secondary'][hide-right-border='true']:not([selected])) #button-element:active { border-right-width: 0; } -:host([selected]) { +:host([variant='secondary']:not([disabled])) #button-element:hover, +:host([variant='secondary']:not([selected])) #button-element:hover, +:host([variant='secondary']:not([selected])) #button-element:active { + color: var(--pharos-color-hover-primary); + background-color: var(--pharos-color-marble-gray-97); + padding: var(--pharos-spacing-one-quarter-x) var(--pharos-spacing-three-quarters-x); + + [data-pharos-component='PharosIcon'] { + fill: var(--pharos-color-hover-primary); + stroke: var(--pharos-color-hover-primary); + } +} + +:host([variant='secondary'][selected]) { pointer-events: none; } diff --git a/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.mdx b/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.mdx index 1a63d7d0d..3d86aa02c 100644 --- a/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.mdx +++ b/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.mdx @@ -5,6 +5,7 @@ import { PharosDropdownMenu } from '../../react-components/dropdown-menu/pharos- import { PharosDropdownMenuItem } from '../../react-components/dropdown-menu/pharos-dropdown-menu-item'; import { PharosTooltip } from '../../react-components/tooltip/pharos-tooltip'; import { PharosButton } from '../../react-components/button/pharos-button'; +import { useEffect } from '@storybook/client-api'; -export const Template = (args) => ( -
- {args.targetText} - { + const effect = () => { + useEffect(() => { + setTimeout(() => { + document.querySelector('#my-button').dispatchEvent(new Event('mouseenter')); + }, 700); + }); + }; + effect(); + return ( +
- {args.tooltipText} - -
-); + + {args.targetText} + + + {args.tooltipText} + +
+ ); +}; ( id: 'my-placement-tooltip', }} argTypes={{ - open: { table: { disable: true }, defaultValue: true }, + open: { table: { disable: true }, defaultValue: false }, placement: { options: [ 'top', @@ -140,7 +153,7 @@ export const Template = (args) => ( table: { disable: true }, defaultValue: 'Hi there again!', }, - open: { table: { disable: true }, defaultValue: true }, + open: { table: { disable: true }, defaultValue: false }, placement: { options: [ 'top', @@ -164,7 +177,7 @@ export const Template = (args) => ( }, fallbackPlacements: { control: { type: 'array' }, - defaultValue: ['auto'], + defaultValue: ['top'], }, }} > @@ -185,7 +198,7 @@ export const Template = (args) => ( }} argTypes={{ fullWidth: { table: { disable: true }, defaultValue: true }, - open: { table: { disable: true }, defaultValue: true }, + open: { table: { disable: true }, defaultValue: false }, placement: { table: { disable: true }, defaultValue: 'auto' }, }} > diff --git a/packages/pharos/src/components/tooltip/pharos-tooltip.scss b/packages/pharos/src/components/tooltip/pharos-tooltip.scss index ce8b778fc..1fe27b29c 100644 --- a/packages/pharos/src/components/tooltip/pharos-tooltip.scss +++ b/packages/pharos/src/components/tooltip/pharos-tooltip.scss @@ -7,18 +7,12 @@ pointer-events: none; top: 0; left: 0; - contain: layout; -} - -:host([data-popper-reference-hidden]) { - opacity: 0; - visibility: hidden; - pointer-events: none; } .tooltip__body { visibility: hidden; pointer-events: none; + position: relative; opacity: 0; white-space: nowrap; transform: translate3d(0, 0, 0); @@ -60,34 +54,8 @@ .tooltip__caret { position: absolute; - height: 0; - width: 0; - border-top: 0.375rem solid var(--pharos-tooltip-color-background-base); - border-left: 0.375rem solid transparent; - border-right: 0.375rem solid transparent; - border-bottom: 0.375rem solid transparent; -} - -:host([data-popper-placement*='right']) .tooltip__caret { - right: 100%; - border-right: 0.375rem solid var(--pharos-tooltip-color-background-base); - border-left: 0.375rem solid transparent; - border-top: 0.375rem solid transparent; - border-bottom: 0.375rem solid transparent; -} - -:host([data-popper-placement*='left']) .tooltip__caret { - left: 100%; - border-left: 0.375rem solid var(--pharos-tooltip-color-background-base); - border-right: 0.375rem solid transparent; - border-top: 0.375rem solid transparent; - border-bottom: 0.375rem solid transparent; -} - -:host([data-popper-placement*='bottom']) .tooltip__caret { - bottom: 100%; - border-bottom: 0.375rem solid var(--pharos-tooltip-color-background-base); - border-right: 0.375rem solid transparent; - border-top: 0.375rem solid transparent; - border-left: 0.375rem solid transparent; + height: 8px; + width: 8px; + transform: rotate(45deg); + background-color: var(--pharos-tooltip-color-background-base); } diff --git a/packages/pharos/src/components/tooltip/pharos-tooltip.test.ts b/packages/pharos/src/components/tooltip/pharos-tooltip.test.ts index b71aa8211..0ca72a5a0 100644 --- a/packages/pharos/src/components/tooltip/pharos-tooltip.test.ts +++ b/packages/pharos/src/components/tooltip/pharos-tooltip.test.ts @@ -1,9 +1,7 @@ import { fixture, expect, aTimeout, nextFrame } from '@open-wc/testing'; import { html } from 'lit/static-html.js'; -import sinon from 'sinon'; -import type { SinonSpy } from 'sinon'; -import type { Placement, Instance } from '../../utils/popper'; +import type { Placement } from '../base/overlay-element'; import type { PharosTooltip } from './pharos-tooltip'; describe('pharos-tooltip', () => { @@ -48,7 +46,7 @@ describe('pharos-tooltip', () => { it('sets its default attributes', async () => { expect(component).dom.to.equal( - `Hi there!` + `Hi there!` ); }); @@ -156,11 +154,6 @@ describe('pharos-tooltip', () => { }); it('opens the first one on hover and then closes it upon focusing the second', async () => { - const secondTrigger = addTrigger('my-second-trigger', 'my-second-tooltip'); - secondComponent = await fixture(html` - Hi there again! - `); - trigger.dispatchEvent(new Event('mouseenter')); await component.updateComplete; await aTimeout(100); @@ -202,40 +195,6 @@ describe('pharos-tooltip', () => { expect(component['_bubble'].classList.contains('tooltip__bubble--text-wrap')).to.be.true; }); - it('has an attribute to set tooltip width equal to target width', async () => { - component.fullWidth = true; - await component.updateComplete; - trigger.dispatchEvent(new Event('focusin')); - await component.updateComplete; - await aTimeout(100); - - const { offsetWidth } = trigger; - const paddingLeft = parseInt( - window.getComputedStyle(component['_bubble'], null).getPropertyValue('padding-left'), - 10 - ); - const paddingRight = parseInt( - window.getComputedStyle(component['_bubble'], null).getPropertyValue('padding-right'), - 10 - ); - expect(component['_bubble'].style.width).to.equal( - `${offsetWidth - (paddingLeft + paddingRight)}px` - ); - }); - - it('updates options of popper instance on placement change', async () => { - trigger.dispatchEvent(new Event('focusin')); - await component.updateComplete; - await nextFrame(); - const popper = component['_popper'] as Instance; - const popperSpy: SinonSpy = sinon.spy(popper, 'setOptions'); - - component.placement = 'bottom'; - await component.updateComplete; - - expect(popperSpy.callCount).to.equal(1); - }); - it('sets aria attributes on the trigger element', async () => { trigger.dispatchEvent(new Event('focusin')); await component.updateComplete; @@ -246,7 +205,6 @@ describe('pharos-tooltip', () => { component.open = true; await component.updateComplete; expect(component.open).to.equal(true); - expect(component['_popper']?.state.elements.reference === trigger).to.be.true; }); it('supports multiple triggers when open and another trigger is focused', async () => { @@ -263,7 +221,6 @@ describe('pharos-tooltip', () => { await nextFrame(); expect(component.open).to.be.true; - expect(component['_popper']?.state.elements.reference === thirdTrigger).to.be.true; }); it('supports multiple triggers when open and another trigger is hovered', async () => { @@ -280,7 +237,6 @@ describe('pharos-tooltip', () => { await nextFrame(); expect(component.open).to.be.true; - expect(component['_popper']?.state.elements.reference === thirdTrigger).to.be.true; }); it('has an attribute to set tooltip width to be within the boundary for short tooltip', async () => { diff --git a/packages/pharos/src/components/tooltip/pharos-tooltip.ts b/packages/pharos/src/components/tooltip/pharos-tooltip.ts index d39d1e3b5..1f533139e 100644 --- a/packages/pharos/src/components/tooltip/pharos-tooltip.ts +++ b/packages/pharos/src/components/tooltip/pharos-tooltip.ts @@ -3,14 +3,22 @@ import { property, queryAssignedNodes, query, state } from 'lit/decorators.js'; import type { PropertyValues, TemplateResult, CSSResultArray } from 'lit'; import { classMap } from 'lit/directives/class-map.js'; import { styleMap } from 'lit/directives/style-map.js'; -import { createPopper } from '../../utils/popper'; import debounce from '../../utils/debounce'; + import observeResize from '../../utils/observeResize'; import deepSelector from '../../utils/deepSelector'; import { tooltipStyles } from './pharos-tooltip.css'; +import type { Placement, PositioningStrategy, Side } from '../base/overlay-element'; +import { + arrow, + autoUpdate, + computePosition, + flip, + offset, + shift, + OverlayElement, +} from '../base/overlay-element'; -import { OverlayElement } from '../base/overlay-element'; -import type { Placement, PositioningStrategy } from '../base/overlay-element'; export type { Placement, PositioningStrategy }; /** @@ -37,7 +45,7 @@ export class PharosTooltip extends OverlayElement { * @attr boundary */ @property({ type: String, reflect: true }) - public boundary = 'clippingParents'; + public boundary = 'clippingAncestors'; @queryAssignedNodes() private _contentNodes!: NodeListOf; @@ -45,6 +53,9 @@ export class PharosTooltip extends OverlayElement { @query('.tooltip__caret') private _caret!: HTMLSpanElement; + @query('.tooltip__body') + private _tooltip!: HTMLDivElement; + @query('.tooltip__bubble') private _bubble!: HTMLSpanElement; @@ -59,6 +70,7 @@ export class PharosTooltip extends OverlayElement { private _observeResizeTrigger: Handle | null = null; private _triggers!: HTMLElement[]; private _currentTrigger: Element | null = null; + private _cleanup?: { (): void } = undefined; private _resizeObserver: ResizeObserver = new ResizeObserver((entries: ResizeObserverEntry[]) => { const { offsetWidth } = entries[0].target as HTMLElement; @@ -71,13 +83,11 @@ export class PharosTooltip extends OverlayElement { 10 ); this._targetWidth = offsetWidth - (paddingLeft + paddingRight); - this._popper?.update(); }); private _contentObserver: MutationObserver = new MutationObserver( (mutationsList: MutationRecord[]) => { this._textLength = (mutationsList[0].target as CharacterData).length; - this._popper?.update(); } ); @@ -122,10 +132,7 @@ export class PharosTooltip extends OverlayElement { protected override updated(changedProperties: PropertyValues): void { if (changedProperties.has('open')) { - if ( - this.open && - (!this._popper || this._popper?.state.elements.reference !== this._currentTrigger) - ) { + if (this.open) { this._setup(); } @@ -133,7 +140,6 @@ export class PharosTooltip extends OverlayElement { this._currentTrigger = null; } - this._setPopperListeners(); this._setupResizeObserver(); } @@ -191,60 +197,79 @@ export class PharosTooltip extends OverlayElement { private _setup(): void { this._findSingleTrigger(); - - if (this._currentTrigger && this._bubble) { - this._options = { - placement: this.placement, - modifiers: [ - { - name: 'flip', - options: { - fallbackPlacements: this.fallbackPlacements, - }, - }, - { - name: 'arrow', - options: { - element: this._caret, - padding: 8, - }, - }, - { - name: 'offset', - options: { - offset: [0, 10], - }, - }, - { - name: 'eventListeners', - options: { - scroll: this.open, - resize: this.open, - }, - }, - { - name: 'preventOverflow', - options: { - boundary: - this.boundary === 'clippingParents' - ? this.boundary - : deepSelector(`#${this.boundary}`), - }, - }, - ], - strategy: this.strategy, - }; - - this._popper = createPopper(this._currentTrigger, this, this._options); - } + this._positionElements(); } private _setOpen(): void { if (this._hasHover || this._hasFocus) { this._closeOpenTooltips(); this.open = true; + this._positionElements(); } else { this.open = false; + if (this._cleanup) { + this._cleanup(); + } + } + } + + private _positionCaret( + placement: Placement, + arrowX: number | undefined, + arrowY: number | undefined + ): void { + const staticSide = { + top: 'bottom', + right: 'left', + bottom: 'top', + left: 'right', + }[placement.split('-')[0] as Side]; + + Object.assign(this._caret.style, { + left: arrowX ? `${arrowX}px` : '', + top: arrowY ? `${arrowY}px` : '', + right: '', + bottom: '', + [staticSide]: '-4px', + }); + } + + private _positionTooltip(x: number, y: number): void { + Object.assign(this._tooltip.style, { + left: `${x}px`, + top: `${y}px`, + }); + } + + private _positionElements() { + if (this._currentTrigger && this._bubble) { + this._cleanup = autoUpdate(this._currentTrigger, this._tooltip, () => { + if (this._currentTrigger && this._bubble) { + computePosition(this._currentTrigger, this._tooltip, { + placement: this.placement === 'auto' ? 'top' : this.placement, + strategy: this.strategy, + middleware: [ + offset(10), + flip({ + fallbackPlacements: this._filteredFallbackPlacements, + }), + shift({ + boundary: + this.boundary === 'clippingAncestors' + ? this.boundary + : deepSelector(`#${this.boundary}`) || undefined, + }), + arrow({ element: this._caret }), + ], + }).then(({ middlewareData, placement, x, y }) => { + if (middlewareData.arrow) { + const { x: arrowX, y: arrowY } = middlewareData.arrow; + this._positionCaret(placement, arrowX, arrowY); + } + this._positionTooltip(x, y); + }); + } + }); } } diff --git a/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.mdx b/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.mdx index 001deee93..5efbff99f 100644 --- a/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.mdx +++ b/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.mdx @@ -154,7 +154,7 @@ export const Template = (args) => { }, fallbackPlacements: { control: { type: 'array' }, - defaultValue: ['auto'], + defaultValue: ['top'], }, }} > diff --git a/packages/pharos/src/utils/popper.ts b/packages/pharos/src/utils/popper.ts deleted file mode 100644 index d1b6f91e7..000000000 --- a/packages/pharos/src/utils/popper.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { popperGenerator, defaultModifiers } from '@popperjs/core/lib/popper-lite.js'; -import type { Instance, Options, PositioningStrategy } from '@popperjs/core/lib/types'; -import type { Placement } from '@popperjs/core/lib/enums'; -import { placements } from '@popperjs/core/lib/enums.js'; - -import flip from '@popperjs/core/lib/modifiers/flip.js'; -import preventOverflow from '@popperjs/core/lib/modifiers/preventOverflow.js'; -import arrow from '@popperjs/core/lib/modifiers/arrow.js'; -import offset from '@popperjs/core/lib/modifiers/offset.js'; - -export const createPopper = popperGenerator({ - defaultModifiers: [...defaultModifiers, flip, preventOverflow, arrow, offset], -}); - -export { placements }; -export type { Instance, Options, PositioningStrategy, Placement }; diff --git a/packages/pharos/src/utils/scss/_mixins.scss b/packages/pharos/src/utils/scss/_mixins.scss index 90a5721ff..bd91b2ee5 100644 --- a/packages/pharos/src/utils/scss/_mixins.scss +++ b/packages/pharos/src/utils/scss/_mixins.scss @@ -165,7 +165,7 @@ font-size: $font-size; font-weight: $font-weight; line-height: $line-height; - text-rendering: optimizeLegibility; + text-rendering: optimizelegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } diff --git a/yarn.lock b/yarn.lock index fc3d2b752..ea1b1ac39 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,12 +2,36 @@ # yarn lockfile v1 -"@ardatan/aggregate-error@0.0.6": - version "0.0.6" - resolved "https://registry.yarnpkg.com/@ardatan/aggregate-error/-/aggregate-error-0.0.6.tgz#fe6924771ea40fc98dc7a7045c2e872dc8527609" - integrity sha512-vyrkEHG1jrukmzTPtyWB4NLPauUw5bQeg4uhn8f+1SSynmrOcyvlb1GKQjjgoBzElLdfXCRYX8UnBlhklOHYRQ== +"@ampproject/remapping@^2.1.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" + integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== + dependencies: + "@jridgewell/gen-mapping" "^0.1.0" + "@jridgewell/trace-mapping" "^0.3.9" + +"@ardatan/relay-compiler@12.0.0": + version "12.0.0" + resolved "https://registry.yarnpkg.com/@ardatan/relay-compiler/-/relay-compiler-12.0.0.tgz#2e4cca43088e807adc63450e8cab037020e91106" + integrity sha512-9anThAaj1dQr6IGmzBMcfzOQKTa5artjuPmw8NYK/fiGEMjADbSguBY2FMDykt+QhilR3wc9VA/3yVju7JHg7Q== dependencies: - tslib "~2.0.1" + "@babel/core" "^7.14.0" + "@babel/generator" "^7.14.0" + "@babel/parser" "^7.14.0" + "@babel/runtime" "^7.0.0" + "@babel/traverse" "^7.14.0" + "@babel/types" "^7.0.0" + babel-preset-fbjs "^3.4.0" + chalk "^4.0.0" + fb-watchman "^2.0.0" + fbjs "^3.0.0" + glob "^7.1.1" + immutable "~3.7.6" + invariant "^2.2.4" + nullthrows "^1.1.1" + relay-runtime "12.0.0" + signedsource "^1.0.0" + yargs "^15.3.1" "@ardatan/sync-fetch@0.0.1": version "0.0.1" @@ -16,13 +40,6 @@ dependencies: node-fetch "^2.6.1" -"@babel/code-frame@7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a" - integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg== - dependencies: - "@babel/highlight" "^7.10.4" - "@babel/code-frame@7.12.11": version "7.12.11" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" @@ -30,46 +47,17 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.11", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.0", "@babel/code-frame@^7.16.0", "@babel/code-frame@^7.5.5", "@babel/code-frame@^7.8.3": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.0.tgz#0dfc80309beec8411e65e706461c408b0bb9b431" - integrity sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA== - dependencies: - "@babel/highlight" "^7.16.0" - -"@babel/code-frame@^7.18.6": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.11", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.0", "@babel/code-frame@^7.16.0", "@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.13.11", "@babel/compat-data@^7.16.0", "@babel/compat-data@^7.16.4": - version "7.16.4" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.16.4.tgz#081d6bbc336ec5c2435c6346b2ae1fb98b5ac68e" - integrity sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q== - -"@babel/core@7.10.5": - version "7.10.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.10.5.tgz#1f15e2cca8ad9a1d78a38ddba612f5e7cdbbd330" - integrity sha512-O34LQooYVDXPl7QWCdW9p4NR+QlzOr7xShPPJz8GsuCU3/8ua/wqTr7gmnxXv+WBESiGU/G5s16i6tUvHkNb+w== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.10.5" - "@babel/helper-module-transforms" "^7.10.5" - "@babel/helpers" "^7.10.4" - "@babel/parser" "^7.10.5" - "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.5" - "@babel/types" "^7.10.5" - 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/compat-data@^7.17.7", "@babel/compat-data@^7.19.4", "@babel/compat-data@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.0.tgz#9b61938c5f688212c7b9ae363a819df7d29d4093" + integrity sha512-Gt9jszFJYq7qzXVK4slhc6NzJXnOVmRECWcVjF/T23rNXD9NtWQ0W3qxdg+p9wWIB+VQw3GYV/U2Ha9bRTfs4w== "@babel/core@7.12.9": version "7.12.9" @@ -93,70 +81,45 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/core@^7.1.0", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.15.5", "@babel/core@^7.7.2", "@babel/core@^7.7.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.16.5.tgz#924aa9e1ae56e1e55f7184c8bf073a50d8677f5c" - integrity sha512-wUcenlLzuWMZ9Zt8S0KmFwGlH6QKRh3vsm/dhDA3CHkiTA45YuG1XkHRcNRl73EFPXDp/d5kVOU0/y7x2w6OaQ== +"@babel/core@^7.1.0", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.14.0", "@babel/core@^7.15.5", "@babel/core@^7.7.2", "@babel/core@^7.7.5", "@babel/core@^7.8.0": + version "7.19.6" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.19.6.tgz#7122ae4f5c5a37c0946c066149abd8e75f81540f" + integrity sha512-D2Ue4KHpc6Ys2+AxpIx1BZ8+UegLLLE2p3KJEuJRKmokHOtl49jQ5ny1773KsGLZs8MQvBidAF6yWUJxRqtKtg== dependencies: - "@babel/code-frame" "^7.16.0" - "@babel/generator" "^7.16.5" - "@babel/helper-compilation-targets" "^7.16.3" - "@babel/helper-module-transforms" "^7.16.5" - "@babel/helpers" "^7.16.5" - "@babel/parser" "^7.16.5" - "@babel/template" "^7.16.0" - "@babel/traverse" "^7.16.5" - "@babel/types" "^7.16.0" + "@ampproject/remapping" "^2.1.0" + "@babel/code-frame" "^7.18.6" + "@babel/generator" "^7.19.6" + "@babel/helper-compilation-targets" "^7.19.3" + "@babel/helper-module-transforms" "^7.19.6" + "@babel/helpers" "^7.19.4" + "@babel/parser" "^7.19.6" + "@babel/template" "^7.18.10" + "@babel/traverse" "^7.19.6" + "@babel/types" "^7.19.4" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" - json5 "^2.1.2" - semver "^6.3.0" - source-map "^0.5.0" - -"@babel/eslint-parser@^7.15.4": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.16.5.tgz#48d3485091d6e36915358e4c0d0b2ebe6da90462" - integrity sha512-mUqYa46lgWqHKQ33Q6LNCGp/wPR3eqOYTUixHFsfrSQqRxH0+WOzca75iEjFr5RDGH1dDz622LaHhLOzOuQRUA== - dependencies: - eslint-scope "^5.1.1" - eslint-visitor-keys "^2.1.0" + json5 "^2.2.1" semver "^6.3.0" -"@babel/eslint-parser@^7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.17.0.tgz#eabb24ad9f0afa80e5849f8240d0e5facc2d90d6" - integrity sha512-PUEJ7ZBXbRkbq3qqM/jZ2nIuakUBqCYc7Qf52Lj7dlZ6zERnqisdHioL0l4wwQZnmskMeasqUNzLBFKs3nylXA== +"@babel/eslint-parser@^7.15.4", "@babel/eslint-parser@^7.17.0": + version "7.19.1" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz#4f68f6b0825489e00a24b41b6a1ae35414ecd2f4" + integrity sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ== dependencies: - eslint-scope "^5.1.1" + "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" semver "^6.3.0" -"@babel/generator@^7.10.5", "@babel/generator@^7.12.11", "@babel/generator@^7.12.5", "@babel/generator@^7.15.4", "@babel/generator@^7.16.5", "@babel/generator@^7.7.2": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.16.5.tgz#26e1192eb8f78e0a3acaf3eede3c6fc96d22bedf" - integrity sha512-kIvCdjZqcdKqoDbVVdt5R99icaRtrtYhYK/xux5qiWCBmfdvEYMFZ68QCrpE5cbFM1JsuArUNs1ZkuKtTtUcZA== - dependencies: - "@babel/types" "^7.16.0" - jsesc "^2.5.1" - source-map "^0.5.0" - -"@babel/generator@^7.18.7": - version "7.18.7" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.18.7.tgz#2aa78da3c05aadfc82dbac16c99552fc802284bd" - integrity sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A== +"@babel/generator@^7.12.11", "@babel/generator@^7.12.5", "@babel/generator@^7.14.0", "@babel/generator@^7.15.4", "@babel/generator@^7.16.8", "@babel/generator@^7.19.6", "@babel/generator@^7.20.0", "@babel/generator@^7.7.2": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.0.tgz#0bfc5379e0efb05ca6092091261fcdf7ec36249d" + integrity sha512-GUPcXxWibClgmYJuIwC2Bc2Lg+8b9VjaJ+HlNdACEVt+Wlr1eoU1OPZjZRm7Hzl0gaTsUZNQfeihvZJhG7oc3w== dependencies: - "@babel/types" "^7.18.7" + "@babel/types" "^7.20.0" "@jridgewell/gen-mapping" "^0.3.2" jsesc "^2.5.1" -"@babel/helper-annotate-as-pure@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz#9a1f0ebcda53d9a2d00108c4ceace6a5d5f1f08d" - integrity sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg== - dependencies: - "@babel/types" "^7.16.0" - "@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" @@ -164,57 +127,44 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.5.tgz#a8429d064dce8207194b8bf05a70a9ea828746af" - integrity sha512-3JEA9G5dmmnIWdzaT9d0NmFRgYnWUThLsDaL7982H0XqqWr56lRrsmwheXFMjR+TMl7QMBb6mzy9kvgr1lRLUA== +"@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.16.0" - "@babel/types" "^7.16.0" + "@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.16.3": - version "7.16.3" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz#5b480cd13f68363df6ec4dc8ac8e2da11363cbf0" - integrity sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA== +"@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.19.0", "@babel/helper-compilation-targets@^7.19.3": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz#6bf5374d424e1b3922822f1d9bdaa43b1a139d0a" + integrity sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ== dependencies: - "@babel/compat-data" "^7.16.0" - "@babel/helper-validator-option" "^7.14.5" - browserslist "^4.17.5" + "@babel/compat-data" "^7.20.0" + "@babel/helper-validator-option" "^7.18.6" + browserslist "^4.21.3" semver "^6.3.0" -"@babel/helper-create-class-features-plugin@^7.16.0", "@babel/helper-create-class-features-plugin@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.5.tgz#5d1bcd096792c1ebec6249eebc6358eec55d0cad" - integrity sha512-NEohnYA7mkB8L5JhU7BLwcBdU3j83IziR9aseMueWGeAjblbul3zzb8UvJ3a1zuBiqCMObzCJHFqKIQE6hTVmg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - "@babel/helper-environment-visitor" "^7.16.5" - "@babel/helper-function-name" "^7.16.0" - "@babel/helper-member-expression-to-functions" "^7.16.5" - "@babel/helper-optimise-call-expression" "^7.16.0" - "@babel/helper-replace-supers" "^7.16.5" - "@babel/helper-split-export-declaration" "^7.16.0" - -"@babel/helper-create-class-features-plugin@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.6.tgz#6f15f8459f3b523b39e00a99982e2c040871ed72" - integrity sha512-YfDzdnoxHGV8CzqHGyCbFvXg5QESPFkXlHtvdCkesLjjVMT2Adxe4FGUR5ChIb3DxSaXO12iIOCWoXdsUVwnqw== +"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.19.0": + version "7.19.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.19.0.tgz#bfd6904620df4e46470bae4850d66be1054c404b" + integrity sha512-NRz8DwF4jT3UfrmUoZjd0Uph9HQnP30t7Ash+weACcyNkiYTywpIjDBgReJMKgr+n86sn2nPVVmJ28Dm053Kqw== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-environment-visitor" "^7.18.6" - "@babel/helper-function-name" "^7.18.6" - "@babel/helper-member-expression-to-functions" "^7.18.6" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.19.0" + "@babel/helper-member-expression-to-functions" "^7.18.9" "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-replace-supers" "^7.18.6" + "@babel/helper-replace-supers" "^7.18.9" "@babel/helper-split-export-declaration" "^7.18.6" -"@babel/helper-create-regexp-features-plugin@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.16.0.tgz#06b2348ce37fccc4f5e18dcd8d75053f2a7c44ff" - integrity sha512-3DyG0zAFAZKcOp7aVr33ddwkxJ0Z0Jr5V99y3I690eYLpukJsJvAbzTy1ewoCqsML8SbIrjH14Jc/nSQ4TvNPA== +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.19.0": + version "7.19.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.19.0.tgz#7976aca61c0984202baca73d84e2337a5424a41b" + integrity sha512-htnV+mHX32DF81amCDrwIDr8nrp1PTm+3wfBN9/v8QJOLEioOCOG7qNyq0nHeFiWbT3Eb7gsPwEmV64UCQ1jzw== dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - regexpu-core "^4.7.1" + "@babel/helper-annotate-as-pure" "^7.18.6" + regexpu-core "^5.1.0" "@babel/helper-define-polyfill-provider@^0.1.5": version "0.1.5" @@ -230,69 +180,37 @@ resolve "^1.14.2" semver "^6.1.2" -"@babel/helper-define-polyfill-provider@^0.3.0": - version "0.3.0" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.0.tgz#c5b10cf4b324ff840140bb07e05b8564af2ae971" - integrity sha512-7hfT8lUljl/tM3h+izTX/pO3W3frz2ok6Pk+gzys8iJqDfZrZy2pXjRTZAvG2YmfHun1X4q8/UZRLatMfqc5Tg== +"@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.13.0" - "@babel/helper-module-imports" "^7.12.13" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/traverse" "^7.13.0" + "@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.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.5.tgz#f6a7f38b3c6d8b07c88faea083c46c09ef5451b8" - integrity sha512-ODQyc5AnxmZWm/R2W7fzhamOk1ey8gSguo5SGvF0zcB3uUzRpTRmM/jmLSm9bDMyPlvbyJ+PwPEK0BWIoZ9wjg== - dependencies: - "@babel/types" "^7.16.0" - -"@babel/helper-environment-visitor@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.6.tgz#b7eee2b5b9d70602e59d1a6cad7dd24de7ca6cd7" - integrity sha512-8n6gSfn2baOY+qlp+VSzsosjCVGFqWKmDF0cCWOybh52Dw3SEyoWR1KrhMJASjLwIEkkAufZ0xvr+SxLHSpy2Q== - -"@babel/helper-explode-assignable-expression@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.0.tgz#753017337a15f46f9c09f674cff10cee9b9d7778" - integrity sha512-Hk2SLxC9ZbcOhLpg/yMznzJ11W++lg5GMbxt1ev6TXUiJB0N42KPC+7w8a+eWGuqDnUYuwStJoZHM7RgmIOaGQ== - dependencies: - "@babel/types" "^7.16.0" - -"@babel/helper-function-name@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz#b7dd0797d00bbfee4f07e9c4ea5b0e30c8bb1481" - integrity sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog== - dependencies: - "@babel/helper-get-function-arity" "^7.16.0" - "@babel/template" "^7.16.0" - "@babel/types" "^7.16.0" +"@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.18.6": +"@babel/helper-explode-assignable-expression@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.18.6.tgz#8334fecb0afba66e6d87a7e8c6bb7fed79926b83" - integrity sha512-0mWMxV1aC97dhjCah5U5Ua7668r5ZmSC2DLfH2EZnf9c3/dHZKiFa5pRLMH5tjSl471tY6496ZWk/kjNONBxhw== + 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/template" "^7.18.6" "@babel/types" "^7.18.6" -"@babel/helper-get-function-arity@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz#0088c7486b29a9cb5d948b1a1de46db66e089cfa" - integrity sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ== - dependencies: - "@babel/types" "^7.16.0" - -"@babel/helper-hoist-variables@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz#4c9023c2f1def7e28ff46fc1dbcd36a39beaa81a" - integrity sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg== +"@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== dependencies: - "@babel/types" "^7.16.0" + "@babel/template" "^7.18.10" + "@babel/types" "^7.19.0" "@babel/helper-hoist-variables@^7.18.6": version "7.18.6" @@ -301,47 +219,33 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-member-expression-to-functions@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.5.tgz#1bc9f7e87354e86f8879c67b316cb03d3dc2caab" - integrity sha512-7fecSXq7ZrLE+TWshbGT+HyCLkxloWNhTbU2QM1NTI/tDqyf0oZiMcEfYtDuUDCo528EOlt39G1rftea4bRZIw== +"@babel/helper-member-expression-to-functions@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz#1531661e8375af843ad37ac692c132841e2fd815" + integrity sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg== dependencies: - "@babel/types" "^7.16.0" + "@babel/types" "^7.18.9" -"@babel/helper-member-expression-to-functions@^7.18.6": +"@babel/helper-module-imports@^7.0.0-beta.49", "@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-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.6.tgz#44802d7d602c285e1692db0bad9396d007be2afc" - integrity sha512-CeHxqwwipekotzPDUuJOfIMtcIHBuc7WAzLmTYWctVigqS5RktNMQ5bEwQSuGewzYnCtTWa3BARXeiLxDTv+Ng== + 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-imports@^7.0.0-beta.49", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz#90538e60b672ecf1b448f5f4f5433d37e79a3ec3" - integrity sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg== - dependencies: - "@babel/types" "^7.16.0" - -"@babel/helper-module-transforms@^7.10.5", "@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.16.5.tgz#530ebf6ea87b500f60840578515adda2af470a29" - integrity sha512-CkvMxgV4ZyyioElFwcuWnDCcNIeyqTkCm9BxXZi73RR1ozqlpboqsbGUNvRTflgZtFbbJ1v5Emvm+lkjMYY/LQ== - dependencies: - "@babel/helper-environment-visitor" "^7.16.5" - "@babel/helper-module-imports" "^7.16.0" - "@babel/helper-simple-access" "^7.16.0" - "@babel/helper-split-export-declaration" "^7.16.0" - "@babel/helper-validator-identifier" "^7.15.7" - "@babel/template" "^7.16.0" - "@babel/traverse" "^7.16.5" - "@babel/types" "^7.16.0" - -"@babel/helper-optimise-call-expression@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.0.tgz#cecdb145d70c54096b1564f8e9f10cd7d193b338" - integrity sha512-SuI467Gi2V8fkofm2JPnZzB/SUuXoJA5zXe/xzyPP2M04686RzFKFHPK6HDVN6JvWBIEW8tt9hPR7fXdn2Lgpw== +"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.19.6": + version "7.19.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.19.6.tgz#6c52cc3ac63b70952d33ee987cbee1c9368b533f" + integrity sha512-fCmcfQo/KYr/VXXDIyd3CBGZ6AFhPFy1TfSEJ+PilGVlQT6jcbqtHAM4C1EciRqMza7/TpOUZliuSH+U6HAhJw== dependencies: - "@babel/types" "^7.16.0" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-simple-access" "^7.19.4" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/helper-validator-identifier" "^7.19.1" + "@babel/template" "^7.18.10" + "@babel/traverse" "^7.19.6" + "@babel/types" "^7.19.4" "@babel/helper-optimise-call-expression@^7.18.6": version "7.18.6" @@ -355,67 +259,45 @@ 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.0", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz#aa3a8ab4c3cceff8e65eb9e73d87dc4ff320b2f5" - integrity sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA== +"@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.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.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.19.0" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz#4796bb14961521f0f8715990bee2fb6e51ce21bf" + integrity sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw== -"@babel/helper-plugin-utils@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.6.tgz#9448974dd4fb1d80fefe72e8a0af37809cd30d6d" - integrity sha512-gvZnm1YAAxh13eJdkb9EWHBnF3eAub3XTLCZEehHT2kWxiKVRL64+ae5Y6Ivne0mVHmMYKT+xWgZO+gQhuLUBg== - -"@babel/helper-remap-async-to-generator@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.5.tgz#e706646dc4018942acb4b29f7e185bc246d65ac3" - integrity sha512-X+aAJldyxrOmN9v3FKp+Hu1NO69VWgYgDGq6YDykwRPzxs5f2N+X988CBXS7EQahDU+Vpet5QYMqLk+nsp+Qxw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - "@babel/helper-wrap-function" "^7.16.5" - "@babel/types" "^7.16.0" - -"@babel/helper-replace-supers@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.16.5.tgz#96d3988bd0ab0a2d22c88c6198c3d3234ca25326" - integrity sha512-ao3seGVa/FZCMCCNDuBcqnBFSbdr8N2EW35mzojx3TwfIbdPmNK+JV6+2d5bR0Z71W5ocLnQp9en/cTF7pBJiQ== +"@babel/helper-remap-async-to-generator@^7.18.6", "@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-environment-visitor" "^7.16.5" - "@babel/helper-member-expression-to-functions" "^7.16.5" - "@babel/helper-optimise-call-expression" "^7.16.0" - "@babel/traverse" "^7.16.5" - "@babel/types" "^7.16.0" + "@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": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.18.6.tgz#efedf51cfccea7b7b8c0f00002ab317e7abfe420" - integrity sha512-fTf7zoXnUGl9gF25fXCWE26t7Tvtyn6H4hkLSYhATwJvw2uYxd3aoXplMSe0g9XbwK7bmxNes7+FGO0rB/xC0g== +"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.18.9", "@babel/helper-replace-supers@^7.19.1": + version "7.19.1" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz#e1592a9b4b368aa6bdb8784a711e0bcbf0612b78" + integrity sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw== dependencies: - "@babel/helper-environment-visitor" "^7.18.6" - "@babel/helper-member-expression-to-functions" "^7.18.6" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-member-expression-to-functions" "^7.18.9" "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/traverse" "^7.18.6" - "@babel/types" "^7.18.6" - -"@babel/helper-simple-access@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.16.0.tgz#21d6a27620e383e37534cf6c10bba019a6f90517" - integrity sha512-o1rjBT/gppAqKsYfUdfHq5Rk03lMQrkPHG1OWzHWpLgVXRH4HnMM9Et9CVdIqwkCQlobnGHEJMsgWP/jE1zUiw== - dependencies: - "@babel/types" "^7.16.0" + "@babel/traverse" "^7.19.1" + "@babel/types" "^7.19.0" -"@babel/helper-skip-transparent-expression-wrappers@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz#0ee3388070147c3ae051e487eca3ebb0e2e8bb09" - integrity sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw== +"@babel/helper-simple-access@^7.19.4": + version "7.19.4" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.19.4.tgz#be553f4951ac6352df2567f7daa19a0ee15668e7" + integrity sha512-f9Xq6WqBFqaDfbCzn2w85hwklswz5qsKlh7f08w4Y9yhJHpnNC0QemtSkK5YyOY8kPGvyiwdzZksGUhnGdaUIg== dependencies: - "@babel/types" "^7.16.0" + "@babel/types" "^7.19.4" -"@babel/helper-split-export-declaration@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz#29672f43663e936df370aaeb22beddb3baec7438" - integrity sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw== +"@babel/helper-skip-transparent-expression-wrappers@^7.18.9": + 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.16.0" + "@babel/types" "^7.20.0" "@babel/helper-split-export-declaration@^7.18.6": version "7.18.6" @@ -424,50 +306,41 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-validator-identifier@^7.15.7": - version "7.15.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389" - integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== +"@babel/helper-string-parser@^7.19.4": + version "7.19.4" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" + integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== -"@babel/helper-validator-identifier@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz#9c97e30d31b2b8c72a1d08984f2ca9b574d7a076" - integrity sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g== - -"@babel/helper-validator-option@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3" - integrity sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow== +"@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": + version "7.19.1" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" + integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== -"@babel/helper-wrap-function@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.16.5.tgz#0158fca6f6d0889c3fee8a6ed6e5e07b9b54e41f" - integrity sha512-2J2pmLBqUqVdJw78U0KPNdeE2qeuIyKoG4mKV7wAq3mc4jJG282UgjZw4ZYDnqiWQuS3Y3IYdF/AQ6CpyBV3VA== - dependencies: - "@babel/helper-function-name" "^7.16.0" - "@babel/template" "^7.16.0" - "@babel/traverse" "^7.16.5" - "@babel/types" "^7.16.0" +"@babel/helper-validator-option@^7.18.6": + version "7.18.6" + 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/helpers@^7.10.4", "@babel/helpers@^7.12.5", "@babel/helpers@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.16.5.tgz#29a052d4b827846dd76ece16f565b9634c554ebd" - integrity sha512-TLgi6Lh71vvMZGEkFuIxzaPsyeYCHQ5jJOOX1f0xXn0uciFuE8cEk0wyBquMcCxBXZ5BJhE2aUB7pnWTD150Tw== +"@babel/helper-wrap-function@^7.18.9": + version "7.19.0" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.19.0.tgz#89f18335cff1152373222f76a4b37799636ae8b1" + integrity sha512-txX8aN8CZyYGTwcLhlk87KRqncAzhh5TpQamZUa0/u3an36NtDpUP6bQgBCBcLeBs09R/OwQu3OjK0k/HwfNDg== dependencies: - "@babel/template" "^7.16.0" - "@babel/traverse" "^7.16.5" - "@babel/types" "^7.16.0" + "@babel/helper-function-name" "^7.19.0" + "@babel/template" "^7.18.10" + "@babel/traverse" "^7.19.0" + "@babel/types" "^7.19.0" -"@babel/highlight@^7.10.4", "@babel/highlight@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz#6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a" - integrity sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g== +"@babel/helpers@^7.12.5", "@babel/helpers@^7.19.4": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.20.0.tgz#27c8ffa8cc32a2ed3762fba48886e7654dbcf77f" + integrity sha512-aGMjYraN0zosCEthoGLdqot1oRsmxVTQRHadsUPz5QM44Zej2PYRz7XiDE7GqnkZnNtLbOuxqoZw42vkU7+XEQ== dependencies: - "@babel/helper-validator-identifier" "^7.15.7" - chalk "^2.0.0" - js-tokens "^4.0.0" + "@babel/template" "^7.18.10" + "@babel/traverse" "^7.20.0" + "@babel/types" "^7.20.0" -"@babel/highlight@^7.18.6": +"@babel/highlight@^7.10.4", "@babel/highlight@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== @@ -476,132 +349,121 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.10.5", "@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.14.7", "@babel/parser@^7.15.5", "@babel/parser@^7.16.0", "@babel/parser@^7.16.5", "@babel/parser@^7.7.2": - version "7.16.6" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.6.tgz#8f194828193e8fa79166f34a4b4e52f3e769a314" - integrity sha512-Gr86ujcNuPDnNOY8mi383Hvi8IYrJVJYuf3XcuBM/Dgd+bINn/7tHqsj+tKkoreMbmGsFLsltI/JJd8fOFWGDQ== - -"@babel/parser@^7.18.6", "@babel/parser@^7.18.8": - version "7.18.8" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.8.tgz#822146080ac9c62dac0823bb3489622e0bc1cbdf" - integrity sha512-RSKRfYX20dyH+elbJK2uqAkVyucL+xXzhqlMD5/ZXx+dAAwpyB7HsvnHe/ZUGOF+xLr5Wx9/JoXVTj6BQE2/oA== +"@babel/parser@^7.1.0", "@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.14.0", "@babel/parser@^7.14.7", "@babel/parser@^7.15.5", "@babel/parser@^7.16.8", "@babel/parser@^7.18.10", "@babel/parser@^7.19.6", "@babel/parser@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.0.tgz#b26133c888da4d79b0d3edcf42677bcadc783046" + integrity sha512-G9VgAhEaICnz8iiJeGJQyVl6J2nTjbW0xeisva0PK6XcKsga7BIaqm4ZF8Rg1Wbaqmy6znspNqhPaPkyukujzg== -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.2": - version "7.16.2" - 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.16.2.tgz#2977fca9b212db153c195674e57cfab807733183" - integrity sha512-h37CvpLSf8gb2lIJ2CgC3t+EjFbi0t8qS7LCS1xcJIlEXE4czlofwaW7W1HA8zpgOCzI9C1nmoqNR1zWkk0pQg== +"@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.14.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.0.tgz#358972eaab006f5eb0826183b0c93cbcaf13e1e2" - integrity sha512-4tcFwwicpWTrpl9qjf7UsoosaArgImF85AxqCRZlgc3IQDvkUHjJpruXAL58Wmj+T6fypWTC/BakfEkwIL/pwA== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz#a11af19aa373d68d561f08e0a57242350ed0ec50" + integrity sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" - "@babel/plugin-proposal-optional-chaining" "^7.16.0" + "@babel/helper-plugin-utils" "^7.18.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9" + "@babel/plugin-proposal-optional-chaining" "^7.18.9" -"@babel/plugin-proposal-async-generator-functions@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.5.tgz#fd3bd7e0d98404a3d4cbca15a72d533f8c9a2f67" - integrity sha512-C/FX+3HNLV6sz7AqbTQqEo1L9/kfrKjxcVtgyBCmvIgOjvuBVUWooDoi7trsLxOzCEo5FccjRvKHkfDsJFZlfA== +"@babel/plugin-proposal-async-generator-functions@^7.19.1": + version "7.19.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.19.1.tgz#34f6f5174b688529342288cd264f80c9ea9fb4a7" + integrity sha512-0yu8vNATgLy4ivqMNBIwb1HebCelqN7YX8SL3FDXORv/RqT0zEEWUCH4GH44JsSrvCu6GqnAdR5EBFAPeNBB4Q== dependencies: - "@babel/helper-plugin-utils" "^7.16.5" - "@babel/helper-remap-async-to-generator" "^7.16.5" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-plugin-utils" "^7.19.0" + "@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.14.0", "@babel/plugin-proposal-class-properties@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.5.tgz#3269f44b89122110f6339806e05d43d84106468a" - integrity sha512-pJD3HjgRv83s5dv1sTnDbZOaTjghKEz8KUn1Kbh2eAIRhGuyQ1XSeI4xVXU3UlIEVA3DAyIdxqT1eRn7Wcn55A== +"@babel/plugin-proposal-class-properties@^7.0.0", "@babel/plugin-proposal-class-properties@^7.12.1", "@babel/plugin-proposal-class-properties@^7.14.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== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.5" - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-create-class-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-proposal-class-static-block@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.16.5.tgz#df58ab015a7d3b0963aafc8f20792dcd834952a9" - integrity sha512-EEFzuLZcm/rNJ8Q5krK+FRKdVkd6FjfzT9tuSZql9sQn64K0hHA2KLJ0DqVot9/iV6+SsuadC5yI39zWnm+nmQ== +"@babel/plugin-proposal-class-static-block@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz#8aa81d403ab72d3962fc06c26e222dacfc9b9020" + integrity sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.5" - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-create-class-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-class-static-block" "^7.14.5" "@babel/plugin-proposal-decorators@^7.12.12", "@babel/plugin-proposal-decorators@^7.15.4": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.16.5.tgz#4617420d3685078dfab8f68f859dca1448bbb3c7" - integrity sha512-XAiZll5oCdp2Dd2RbXA3LVPlFyIRhhcQy+G34p9ePpl6mjFkbqHAYHovyw2j5mqUrlBf0/+MtOIJ3JGYtz8qaw== + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.20.0.tgz#3acef1f1206d7a6a1436aa6ccf9ed7b1bd06aff7" + integrity sha512-vnuRRS20ygSxclEYikHzVrP9nZDFXaSzvJxGLQNAiBX041TmhS4hOUHWNIpq/q4muENuEP9XPJFXTNFejhemkg== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.5" - "@babel/helper-plugin-utils" "^7.16.5" - "@babel/plugin-syntax-decorators" "^7.16.5" + "@babel/helper-create-class-features-plugin" "^7.19.0" + "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-replace-supers" "^7.19.1" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/plugin-syntax-decorators" "^7.19.0" -"@babel/plugin-proposal-dynamic-import@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.5.tgz#2e0d19d5702db4dcb9bc846200ca02f2e9d60e9e" - integrity sha512-P05/SJZTTvHz79LNYTF8ff5xXge0kk5sIIWAypcWgX4BTRUgyHc8wRxJ/Hk+mU0KXldgOOslKaeqnhthcDJCJQ== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-dynamic-import" "^7.8.3" "@babel/plugin-proposal-export-default-from@^7.12.1", "@babel/plugin-proposal-export-default-from@^7.14.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.16.5.tgz#8771249ffc9c06c9eb27342cf5c072a83c6d3811" - integrity sha512-pU4aCS+AzGjDD/6LnwSmeelmtqfMSjzQxs7+/AS673bYsshK1XZm9eth6OkgivVscQM8XdkVYhrb6tPFVTBVHA== + 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.16.5" - "@babel/plugin-syntax-export-default-from" "^7.16.5" + "@babel/helper-plugin-utils" "^7.18.9" + "@babel/plugin-syntax-export-default-from" "^7.18.6" -"@babel/plugin-proposal-export-namespace-from@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.5.tgz#3b4dd28378d1da2fea33e97b9f25d1c2f5bf1ac9" - integrity sha512-i+sltzEShH1vsVydvNaTRsgvq2vZsfyrd7K7vPLUU/KgS0D5yZMe6uipM0+izminnkKrEfdUnz7CxMRb6oHZWw== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.18.9" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" -"@babel/plugin-proposal-json-strings@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.5.tgz#1e726930fca139caab6b084d232a9270d9d16f9c" - integrity sha512-QQJueTFa0y9E4qHANqIvMsuxM/qcLQmKttBACtPCQzGUEizsXDACGonlPiSwynHfOa3vNw0FPMVvQzbuXwh4SQ== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-json-strings" "^7.8.3" -"@babel/plugin-proposal-logical-assignment-operators@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.5.tgz#df1f2e4b5a0ec07abf061d2c18e53abc237d3ef5" - integrity sha512-xqibl7ISO2vjuQM+MzR3rkd0zfNWltk7n9QhaD8ghMmMceVguYrNDt7MikRyj4J4v3QehpnrU8RYLnC7z/gZLA== +"@babel/plugin-proposal-logical-assignment-operators@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz#8148cbb350483bf6220af06fa6db3690e14b2e23" + integrity sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q== dependencies: - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-plugin-utils" "^7.18.9" "@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.14.5", "@babel/plugin-proposal-nullish-coalescing-operator@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.5.tgz#652555bfeeeee2d2104058c6225dc6f75e2d0f07" - integrity sha512-YwMsTp/oOviSBhrjwi0vzCUycseCYwoXnLiXIL3YNjHSMBHicGTz7GjVU/IGgz4DtOEXBdCNG72pvCX22ehfqg== +"@babel/plugin-proposal-nullish-coalescing-operator@^7.12.1", "@babel/plugin-proposal-nullish-coalescing-operator@^7.14.5", "@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-proposal-numeric-separator@^7.14.5", "@babel/plugin-proposal-numeric-separator@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.5.tgz#edcb6379b6cf4570be64c45965d8da7a2debf039" - integrity sha512-DvB9l/TcsCRvsIV9v4jxR/jVP45cslTVC0PMVHvaJhhNuhn2Y1SOhCSFlPK777qLB5wb8rVDaNoqMTyOqtY5Iw== +"@babel/plugin-proposal-numeric-separator@^7.14.5", "@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-proposal-object-rest-spread@7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.10.4.tgz#50129ac216b9a6a55b3853fdd923e74bf553a4c0" - integrity sha512-6vh4SqRuLLarjgeOf4EaROJAHjvu9Gl+/346PbDH9yWbJyfnJ/ah3jmYKYtswEyCoWZiidvVHjHshd4WgjB9BA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-transform-parameters" "^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" @@ -611,43 +473,43 @@ "@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.14.7", "@babel/plugin-proposal-object-rest-spread@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.16.5.tgz#f30f80dacf7bc1404bf67f99c8d9c01665e830ad" - integrity sha512-UEd6KpChoyPhCoE840KRHOlGhEZFutdPDMGj+0I56yuTTOaT51GzmnEl/0uT41fB/vD2nT+Pci2KjezyE3HmUw== +"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.12.1", "@babel/plugin-proposal-object-rest-spread@^7.14.7", "@babel/plugin-proposal-object-rest-spread@^7.19.4": + version "7.19.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.19.4.tgz#a8fc86e8180ff57290c91a75d83fe658189b642d" + integrity sha512-wHmj6LDxVDnL+3WhXteUBaoM1aVILZODAUjg11kHqG4cOlfgMQGxw6aCgvrXrmaJR3Bn14oZhImyCPZzRpC93Q== dependencies: - "@babel/compat-data" "^7.16.4" - "@babel/helper-compilation-targets" "^7.16.3" - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/compat-data" "^7.19.4" + "@babel/helper-compilation-targets" "^7.19.3" + "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.16.5" + "@babel/plugin-transform-parameters" "^7.18.8" -"@babel/plugin-proposal-optional-catch-binding@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.5.tgz#1a5405765cf589a11a33a1fd75b2baef7d48b74e" - integrity sha512-ihCMxY1Iljmx4bWy/PIMJGXN4NS4oUj1MKynwO07kiKms23pNvIn1DMB92DNB2R0EA882sw0VXIelYGdtF7xEQ== +"@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.16.5" + "@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.14.5", "@babel/plugin-proposal-optional-chaining@^7.16.0", "@babel/plugin-proposal-optional-chaining@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.5.tgz#a5fa61056194d5059366c0009cb9a9e66ed75c1f" - integrity sha512-kzdHgnaXRonttiTfKYnSVafbWngPPr2qKw9BWYBESl91W54e+9R5pP70LtWxV56g0f05f/SQrwHYkfvbwcdQ/A== +"@babel/plugin-proposal-optional-chaining@^7.12.7", "@babel/plugin-proposal-optional-chaining@^7.14.5", "@babel/plugin-proposal-optional-chaining@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz#e8e8fe0723f2563960e4bf5e9690933691915993" + integrity sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w== dependencies: - "@babel/helper-plugin-utils" "^7.16.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" + "@babel/helper-plugin-utils" "^7.18.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -"@babel/plugin-proposal-private-methods@^7.12.1", "@babel/plugin-proposal-private-methods@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.5.tgz#2086f7d78c1b0c712d49b5c3fbc2d1ca21a7ee12" - integrity sha512-+yFMO4BGT3sgzXo+lrq7orX5mAZt57DwUK6seqII6AcJnJOIhBJ8pzKH47/ql/d426uQ7YhN8DpUFirQzqYSUA== +"@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.16.5" - "@babel/helper-plugin-utils" "^7.16.5" + "@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.12.1", "@babel/plugin-proposal-private-property-in-object@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz#a64137b232f0aca3733a67eb1a144c192389c503" integrity sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw== @@ -657,23 +519,13 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" -"@babel/plugin-proposal-private-property-in-object@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.5.tgz#a42d4b56005db3d405b12841309dbca647e7a21b" - integrity sha512-+YGh5Wbw0NH3y/E5YMu6ci5qTDmAEVNoZ3I54aB6nVEOZ5BQ7QJlwKq5pYVucQilMByGn/bvX0af+uNaPRCabA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - "@babel/helper-create-class-features-plugin" "^7.16.5" - "@babel/helper-plugin-utils" "^7.16.5" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" - -"@babel/plugin-proposal-unicode-property-regex@^7.16.5", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.5.tgz#35fe753afa7c572f322bd068ff3377bde0f37080" - integrity sha512-s5sKtlKQyFSatt781HQwv1hoM5BQ9qRH30r+dK56OLDsHmV74mzwJNX7R1yMuE7VZKG5O6q/gmOGSAO6ikTudg== +"@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.16.0" - "@babel/helper-plugin-utils" "^7.16.5" + "@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" @@ -689,7 +541,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": +"@babel/plugin-syntax-class-properties@^7.0.0", "@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== @@ -703,12 +555,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-decorators@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.16.5.tgz#8d397dee482716a79f1a22314f0b4770a5b67427" - integrity sha512-3CbYTXfflvyy8O819uhZcZSMedZG4J8yS/NLTc/8T24M9ke1GssTGvg8VZu3Yn2LU5IyQSv1CmPq0a9JWHXJwg== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" @@ -717,12 +569,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-export-default-from@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.16.5.tgz#bfc148b007cba23cd2ce2f3c16df223afb44ab30" - integrity sha512-tvY55nhq4mSG9WbM7IZcLIhdc5jzIZu0PQKJHtZ16+dF7oBxKbqV/Z0e9ta2zaLMvUjH+3rJv1hbZ0+lpXzuFQ== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-export-namespace-from@^7.8.3": version "7.8.3" @@ -731,19 +583,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-flow@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.16.5.tgz#ca0d85e12d71b825b4e9fd1f8d29b64acdf1b46e" - integrity sha512-Nrx+7EAJx1BieBQseZa2pavVH2Rp7hADK2xn7coYqVbWRu9C2OFizYcsKo6TrrqJkJl+qF/+Qqzrk/+XDu4GnA== +"@babel/plugin-syntax-flow@^7.0.0", "@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-syntax-import-assertions@^7.16.7": - version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.16.7.tgz#78288980e36f1614a4024d45937f4c8ca7185ac3" - integrity sha512-DoM/wsaMaDXpM2fa+QkZeqqfYs340WTY+boLRiZ7ckqt3PAFt1CdGmMXVniFCcN8RuStim2Z4Co3bIKdWjTXIQ== +"@babel/plugin-syntax-import-assertions@^7.16.7", "@babel/plugin-syntax-import-assertions@^7.18.6": + 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.16.7" + "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.2.0", "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" @@ -759,13 +611,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.10.4.tgz#39abaae3cbf710c4373d8429484e6ba21340166c" - integrity sha512-KCg9mio9jwiARCB7WAcQ7Y1q+qicILjoK8LP/VkPkEKaf5dkaZZK1EcTe91a3JJlZ3qy6L5s9X52boEYi8DM9g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@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" @@ -773,20 +618,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-jsx@^7.12.13": +"@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.17.12", "@babel/plugin-syntax-jsx@^7.18.6": 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-jsx@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.5.tgz#bf255d252f78bc8b77a17cadc37d1aa5b8ed4394" - integrity sha512-42OGssv9NPk4QHKVgIHlzeLgPOW5rGgfV5jzG90AhcXXIv6hu/eqj63w4VgvRxdvZY3AlYeDgPiSJ3BqAd1Y6Q== - dependencies: - "@babel/helper-plugin-utils" "^7.16.5" - "@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" @@ -808,7 +646,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", "@babel/plugin-syntax-object-rest-spread@^7.0.0", "@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== @@ -843,355 +681,357 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.16.0", "@babel/plugin-syntax-typescript@^7.7.2": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.5.tgz#f47a33e4eee38554f00fb6b2f894fa1f5649b0b3" - integrity sha512-/d4//lZ1Vqb4mZ5xTep3dDK888j7BGM/iKqBmndBaoYAFPlPKrGU608VVBz5JeyAb6YQDjRu1UKqj86UhwWVgw== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.19.0" -"@babel/plugin-transform-arrow-functions@^7.12.1", "@babel/plugin-transform-arrow-functions@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.5.tgz#04c18944dd55397b521d9d7511e791acea7acf2d" - integrity sha512-8bTHiiZyMOyfZFULjsCnYOWG059FVMes0iljEHSfARhNgFfpsqE92OrCffv3veSw9rwMkYcFe9bj0ZoXU2IGtQ== +"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.12.1", "@babel/plugin-transform-arrow-functions@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz#19063fcf8771ec7b31d742339dac62433d0611fe" + integrity sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-async-to-generator@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.5.tgz#89c9b501e65bb14c4579a6ce9563f859de9b34e4" - integrity sha512-TMXgfioJnkXU+XRoj7P2ED7rUm5jbnDWwlCuFVTpQboMfbSya5WrmubNBAMlk7KXvywpo8rd8WuYZkis1o2H8w== +"@babel/plugin-transform-async-to-generator@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz#ccda3d1ab9d5ced5265fdb13f1882d5476c71615" + integrity sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag== dependencies: - "@babel/helper-module-imports" "^7.16.0" - "@babel/helper-plugin-utils" "^7.16.5" - "@babel/helper-remap-async-to-generator" "^7.16.5" + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-remap-async-to-generator" "^7.18.6" -"@babel/plugin-transform-block-scoped-functions@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.5.tgz#af087494e1c387574260b7ee9b58cdb5a4e9b0b0" - integrity sha512-BxmIyKLjUGksJ99+hJyL/HIxLIGnLKtw772zYDER7UuycDZ+Xvzs98ZQw6NGgM2ss4/hlFAaGiZmMNKvValEjw== +"@babel/plugin-transform-block-scoped-functions@^7.0.0", "@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-block-scoping@^7.12.12", "@babel/plugin-transform-block-scoping@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.5.tgz#b91f254fe53e210eabe4dd0c40f71c0ed253c5e7" - integrity sha512-JxjSPNZSiOtmxjX7PBRBeRJTUKTyJ607YUYeT0QJCNdsedOe+/rXITjP08eG8xUpsLfPirgzdCFN+h0w6RI+pQ== +"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.12.12", "@babel/plugin-transform-block-scoping@^7.19.4": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.0.tgz#91fe5e6ffc9ba13cb6c95ed7f0b1204f68c988c5" + integrity sha512-sXOohbpHZSk7GjxK9b3dKB7CfqUD5DwOH+DggKzOQ7TXYP+RCSbRykfjQmn/zq+rBjycVRtLf9pYhAaEJA786w== dependencies: - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-plugin-utils" "^7.19.0" -"@babel/plugin-transform-classes@^7.12.1", "@babel/plugin-transform-classes@^7.15.4", "@babel/plugin-transform-classes@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.5.tgz#6acf2ec7adb50fb2f3194dcd2909dbd056dcf216" - integrity sha512-DzJ1vYf/7TaCYy57J3SJ9rV+JEuvmlnvvyvYKFbk5u46oQbBvuB9/0w+YsVsxkOv8zVWKpDmUoj4T5ILHoXevA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - "@babel/helper-environment-visitor" "^7.16.5" - "@babel/helper-function-name" "^7.16.0" - "@babel/helper-optimise-call-expression" "^7.16.0" - "@babel/helper-plugin-utils" "^7.16.5" - "@babel/helper-replace-supers" "^7.16.5" - "@babel/helper-split-export-declaration" "^7.16.0" +"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.12.1", "@babel/plugin-transform-classes@^7.15.4", "@babel/plugin-transform-classes@^7.19.0": + version "7.19.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.19.0.tgz#0e61ec257fba409c41372175e7c1e606dc79bb20" + integrity sha512-YfeEE9kCjqTS9IitkgfJuxjcEtLUHMqa8yUJ6zdz8vR7hKuo6mOy2C05P0F1tdMmDCeuyidKnlrw/iTppHcr2A== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-compilation-targets" "^7.19.0" + "@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.19.0" + "@babel/helper-replace-supers" "^7.18.9" + "@babel/helper-split-export-declaration" "^7.18.6" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.5.tgz#2af91ebf0cceccfcc701281ada7cfba40a9b322a" - integrity sha512-n1+O7xtU5lSLraRzX88CNcpl7vtGdPakKzww74bVwpAIRgz9JVLJJpOLb0uYqcOaXVM0TL6X0RVeIJGD2CnCkg== +"@babel/plugin-transform-computed-properties@^7.0.0", "@babel/plugin-transform-computed-properties@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz#2357a8224d402dad623caf6259b611e56aec746e" + integrity sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw== dependencies: - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-destructuring@^7.12.1", "@babel/plugin-transform-destructuring@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.16.5.tgz#89ebc87499ac4a81b897af53bb5d3eed261bd568" - integrity sha512-GuRVAsjq+c9YPK6NeTkRLWyQskDC099XkBSVO+6QzbnOnH2d/4mBVXYStaPrZD3dFRfg00I6BFJ9Atsjfs8mlg== +"@babel/plugin-transform-destructuring@^7.0.0", "@babel/plugin-transform-destructuring@^7.12.1", "@babel/plugin-transform-destructuring@^7.19.4": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.0.tgz#712829ef4825d9cc04bb379de316f981e9a6f648" + integrity sha512-1dIhvZfkDVx/zn2S1aFwlruspTt4189j7fEkH0Y0VyuDM6bQt7bD6kLcz3l4IlLG+e5OReaBz9ROAbttRtUHqA== dependencies: - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-plugin-utils" "^7.19.0" -"@babel/plugin-transform-dotall-regex@^7.16.5", "@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.5.tgz#b40739c00b6686820653536d6d143e311de67936" - integrity sha512-iQiEMt8Q4/5aRGHpGVK2Zc7a6mx7qEAO7qehgSug3SDImnuMzgmm/wtJALXaz25zUj1PmnNHtShjFgk4PDx4nw== +"@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.16.0" - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-duplicate-keys@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.5.tgz#2450f2742325412b746d7d005227f5e8973b512a" - integrity sha512-81tijpDg2a6I1Yhj4aWY1l3O1J4Cg/Pd7LfvuaH2VVInAkXtzibz9+zSPdUM1WvuUi128ksstAP0hM5w48vQgg== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-exponentiation-operator@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.5.tgz#36e261fa1ab643cfaf30eeab38e00ed1a76081e2" - integrity sha512-12rba2HwemQPa7BLIKCzm1pT2/RuQHtSFHdNl41cFiC6oi4tcrp7gjB07pxQvFpcADojQywSjblQth6gJyE6CA== +"@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.16.5" - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-flow-strip-types@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.16.5.tgz#8ceb65ab6ca4a349e04d1887e2470a5bfe8f046f" - integrity sha512-skE02E/MptkZdBS4HwoRhjWXqeKQj0BWKEAPfPC+8R4/f6bjQqQ9Nftv/+HkxWwnVxh/E2NV9TNfzLN5H/oiBw== +"@babel/plugin-transform-flow-strip-types@^7.0.0", "@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.16.5" - "@babel/plugin-syntax-flow" "^7.16.5" + "@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.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.5.tgz#9b544059c6ca11d565457c0ff1f08e13ce225261" - integrity sha512-+DpCAJFPAvViR17PIMi9x2AE34dll5wNlXO43wagAX2YcRGgEVHCNFC4azG85b4YyyFarvkc/iD5NPrz4Oneqw== +"@babel/plugin-transform-for-of@^7.0.0", "@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-function-name@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.5.tgz#6896ebb6a5538a75d6a4086a277752f655a7bd15" - integrity sha512-Fuec/KPSpVLbGo6z1RPw4EE1X+z9gZk1uQmnYy7v4xr4TO9p41v1AoUuXEtyqAI7H+xNJYSICzRqZBhDEkd3kQ== +"@babel/plugin-transform-function-name@^7.0.0", "@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-function-name" "^7.16.0" - "@babel/helper-plugin-utils" "^7.16.5" + "@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.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.5.tgz#af392b90e3edb2bd6dc316844cbfd6b9e009d320" - integrity sha512-B1j9C/IfvshnPcklsc93AVLTrNVa69iSqztylZH6qnmiAsDDOmmjEYqOm3Ts2lGSgTSywnBNiqC949VdD0/gfw== +"@babel/plugin-transform-literals@^7.0.0", "@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.16.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-member-expression-literals@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.5.tgz#4bd6ecdc11932361631097b779ca5c7570146dd5" - integrity sha512-d57i3vPHWgIde/9Y8W/xSFUndhvhZN5Wu2TjRrN1MVz5KzdUihKnfDVlfP1U7mS5DNj/WHHhaE4/tTi4hIyHwQ== +"@babel/plugin-transform-member-expression-literals@^7.0.0", "@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-modules-amd@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.5.tgz#92c0a3e83f642cb7e75fada9ab497c12c2616527" - integrity sha512-oHI15S/hdJuSCfnwIz+4lm6wu/wBn7oJ8+QrkzPPwSFGXk8kgdI/AIKcbR/XnD1nQVMg/i6eNaXpszbGuwYDRQ== +"@babel/plugin-transform-modules-amd@^7.18.6": + version "7.19.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.19.6.tgz#aca391801ae55d19c4d8d2ebfeaa33df5f2a2cbd" + integrity sha512-uG3od2mXvAtIFQIh0xrpLH6r5fpSQN04gIVovl+ODLdUMANokxQLZnPBHcjmv3GxRjnqwLuHvppjjcelqUFZvg== dependencies: - "@babel/helper-module-transforms" "^7.16.5" - "@babel/helper-plugin-utils" "^7.16.5" - babel-plugin-dynamic-import-node "^2.3.3" + "@babel/helper-module-transforms" "^7.19.6" + "@babel/helper-plugin-utils" "^7.19.0" -"@babel/plugin-transform-modules-commonjs@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.5.tgz#4ee03b089536f076b2773196529d27c32b9d7bde" - integrity sha512-ABhUkxvoQyqhCWyb8xXtfwqNMJD7tx+irIRnUh6lmyFud7Jln1WzONXKlax1fg/ey178EXbs4bSGNd6PngO+SQ== +"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.18.6": + version "7.19.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.19.6.tgz#25b32feef24df8038fc1ec56038917eacb0b730c" + integrity sha512-8PIa1ym4XRTKuSsOUXqDG0YaOlEuTVvHMe5JCfgBMOtHvJKw/4NGovEGN33viISshG/rZNVrACiBmPQLvWN8xQ== dependencies: - "@babel/helper-module-transforms" "^7.16.5" - "@babel/helper-plugin-utils" "^7.16.5" - "@babel/helper-simple-access" "^7.16.0" - babel-plugin-dynamic-import-node "^2.3.3" + "@babel/helper-module-transforms" "^7.19.6" + "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-simple-access" "^7.19.4" -"@babel/plugin-transform-modules-systemjs@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.5.tgz#07078ba2e3cc94fbdd06836e355c246e98ad006b" - integrity sha512-53gmLdScNN28XpjEVIm7LbWnD/b/TpbwKbLk6KV4KqC9WyU6rq1jnNmVG6UgAdQZVVGZVoik3DqHNxk4/EvrjA== +"@babel/plugin-transform-modules-systemjs@^7.19.0": + version "7.19.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.6.tgz#59e2a84064b5736a4471b1aa7b13d4431d327e0d" + integrity sha512-fqGLBepcc3kErfR9R3DnVpURmckXP7gj7bAlrTQyBxrigFqszZCkFkcoxzCp2v32XmwXLvbw+8Yq9/b+QqksjQ== dependencies: - "@babel/helper-hoist-variables" "^7.16.0" - "@babel/helper-module-transforms" "^7.16.5" - "@babel/helper-plugin-utils" "^7.16.5" - "@babel/helper-validator-identifier" "^7.15.7" - babel-plugin-dynamic-import-node "^2.3.3" + "@babel/helper-hoist-variables" "^7.18.6" + "@babel/helper-module-transforms" "^7.19.6" + "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-validator-identifier" "^7.19.1" -"@babel/plugin-transform-modules-umd@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.5.tgz#caa9c53d636fb4e3c99fd35a4c9ba5e5cd7e002e" - integrity sha512-qTFnpxHMoenNHkS3VoWRdwrcJ3FhX567GvDA3hRZKF0Dj8Fmg0UzySZp3AP2mShl/bzcywb/UWAMQIjA1bhXvw== +"@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.16.5" - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-module-transforms" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-named-capturing-groups-regex@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.5.tgz#4afd8cdee377ce3568f4e8a9ee67539b69886a3c" - integrity sha512-/wqGDgvFUeKELW6ex6QB7dLVRkd5ehjw34tpXu1nhKC0sFfmaLabIswnpf8JgDyV2NeDmZiwoOb0rAmxciNfjA== +"@babel/plugin-transform-named-capturing-groups-regex@^7.19.1": + version "7.19.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.19.1.tgz#ec7455bab6cd8fb05c525a94876f435a48128888" + integrity sha512-oWk9l9WItWBQYS4FgXD4Uyy5kq898lvkXpXQxoJEY1RnvPk4R/Dvu2ebXU9q8lP+rlMwUQTFf2Ok6d78ODa0kw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.16.0" + "@babel/helper-create-regexp-features-plugin" "^7.19.0" + "@babel/helper-plugin-utils" "^7.19.0" -"@babel/plugin-transform-new-target@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.5.tgz#759ea9d6fbbc20796056a5d89d13977626384416" - integrity sha512-ZaIrnXF08ZC8jnKR4/5g7YakGVL6go6V9ql6Jl3ecO8PQaQqFE74CuM384kezju7Z9nGCCA20BqZaR1tJ/WvHg== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-object-super@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.5.tgz#8ccd9a1bcd3e7732ff8aa1702d067d8cd70ce380" - integrity sha512-tded+yZEXuxt9Jdtkc1RraW1zMF/GalVxaVVxh41IYwirdRgyAxxxCKZ9XB7LxZqmsjfjALxupNE1MIz9KH+Zg== +"@babel/plugin-transform-object-super@^7.0.0", "@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.16.5" - "@babel/helper-replace-supers" "^7.16.5" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-replace-supers" "^7.18.6" -"@babel/plugin-transform-parameters@^7.10.4", "@babel/plugin-transform-parameters@^7.12.1", "@babel/plugin-transform-parameters@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.5.tgz#4fc74b18a89638bd90aeec44a11793ecbe031dde" - integrity sha512-B3O6AL5oPop1jAVg8CV+haeUte9oFuY85zu0jwnRNZZi3tVAbJriu5tag/oaO2kGaQM/7q7aGPBlTI5/sr9enA== +"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.12.1", "@babel/plugin-transform-parameters@^7.18.8": + version "7.18.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz#ee9f1a0ce6d78af58d0956a9378ea3427cccb48a" + integrity sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg== dependencies: - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-property-literals@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.5.tgz#58f1465a7202a2bb2e6b003905212dd7a79abe3f" - integrity sha512-+IRcVW71VdF9pEH/2R/Apab4a19LVvdVsr/gEeotH00vSDVlKD+XgfSIw+cgGWsjDB/ziqGv/pGoQZBIiQVXHg== +"@babel/plugin-transform-property-literals@^7.0.0", "@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-react-display-name@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.16.5.tgz#d5e910327d7931fb9f8f9b6c6999473ceae5a286" - integrity sha512-dHYCOnzSsXFz8UcdNQIHGvg94qPL/teF7CCiCEMRxmA1G2p5Mq4JnKVowCDxYfiQ9D7RstaAp9kwaSI+sXbnhw== +"@babel/plugin-transform-react-display-name@^7.0.0", "@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-react-jsx-development@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.16.5.tgz#87da9204c275ffb57f45d192a1120cf104bc1e86" - integrity sha512-uQSLacMZSGLCxOw20dzo1dmLlKkd+DsayoV54q3MHXhbqgPzoiGerZQgNPl/Ro8/OcXV2ugfnkx+rxdS0sN5Uw== +"@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.16.5" + "@babel/plugin-transform-react-jsx" "^7.18.6" -"@babel/plugin-transform-react-jsx@^7.12.12", "@babel/plugin-transform-react-jsx@^7.14.9", "@babel/plugin-transform-react-jsx@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.16.5.tgz#5298aedc5f81e02b1cb702e597e8d6a346675765" - integrity sha512-+arLIz1d7kmwX0fKxTxbnoeG85ONSnLpvdODa4P3pc1sS7CV1hfmtYWufkW/oYsPnkDrEeQFxhUWcFnrXW7jQQ== +"@babel/plugin-transform-react-jsx@^7.0.0", "@babel/plugin-transform-react-jsx@^7.12.12", "@babel/plugin-transform-react-jsx@^7.18.6": + version "7.19.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.19.0.tgz#b3cbb7c3a00b92ec8ae1027910e331ba5c500eb9" + integrity sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg== dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - "@babel/helper-module-imports" "^7.16.0" - "@babel/helper-plugin-utils" "^7.16.5" - "@babel/plugin-syntax-jsx" "^7.16.5" - "@babel/types" "^7.16.0" + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-plugin-utils" "^7.19.0" + "@babel/plugin-syntax-jsx" "^7.18.6" + "@babel/types" "^7.19.0" -"@babel/plugin-transform-react-pure-annotations@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.16.5.tgz#6535d0fe67c7a3a26c5105f92c8cbcbe844cd94b" - integrity sha512-0nYU30hCxnCVCbRjSy9ahlhWZ2Sn6khbY4FqR91W+2RbSqkWEbVu2gXh45EqNy4Bq7sRU+H4i0/6YKwOSzh16A== +"@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.16.0" - "@babel/helper-plugin-utils" "^7.16.5" + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-regenerator@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.5.tgz#704cc6d8dd3dd4758267621ab7b36375238cef13" - integrity sha512-2z+it2eVWU8TtQQRauvGUqZwLy4+7rTfo6wO4npr+fvvN1SW30ZF3O/ZRCNmTuu4F5MIP8OJhXAhRV5QMJOuYg== +"@babel/plugin-transform-regenerator@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz#585c66cb84d4b4bf72519a34cfce761b8676ca73" + integrity sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ== dependencies: - regenerator-transform "^0.14.2" + "@babel/helper-plugin-utils" "^7.18.6" + regenerator-transform "^0.15.0" -"@babel/plugin-transform-reserved-words@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.5.tgz#db95e98799675e193dc2b47d3e72a7c0651d0c30" - integrity sha512-aIB16u8lNcf7drkhXJRoggOxSTUAuihTSTfAcpynowGJOZiGf+Yvi7RuTwFzVYSYPmWyARsPqUGoZWWWxLiknw== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-runtime@^7.15.0": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.16.5.tgz#0cc3f01d69f299d5a42cd9ec43b92ea7a777b8db" - integrity sha512-gxpfS8XQWDbQ8oP5NcmpXxtEgCJkbO+W9VhZlOhr0xPyVaRjAQPOv7ZDj9fg0d5s9+NiVvMCE6gbkEkcsxwGRw== - dependencies: - "@babel/helper-module-imports" "^7.16.0" - "@babel/helper-plugin-utils" "^7.16.5" - babel-plugin-polyfill-corejs2 "^0.3.0" - babel-plugin-polyfill-corejs3 "^0.4.0" - babel-plugin-polyfill-regenerator "^0.3.0" + version "7.19.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.6.tgz#9d2a9dbf4e12644d6f46e5e75bfbf02b5d6e9194" + integrity sha512-PRH37lz4JU156lYFW1p8OxE5i7d6Sl/zV58ooyr+q1J1lnQPyg5tIiXlIwNVhJaY4W3TmOtdc8jqdXQcB1v5Yw== + dependencies: + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-plugin-utils" "^7.19.0" + babel-plugin-polyfill-corejs2 "^0.3.3" + babel-plugin-polyfill-corejs3 "^0.6.0" + babel-plugin-polyfill-regenerator "^0.4.1" semver "^6.3.0" -"@babel/plugin-transform-shorthand-properties@^7.12.1", "@babel/plugin-transform-shorthand-properties@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.5.tgz#ccb60b1a23b799f5b9a14d97c5bc81025ffd96d7" - integrity sha512-ZbuWVcY+MAXJuuW7qDoCwoxDUNClfZxoo7/4swVbOW1s/qYLOMHlm9YRWMsxMFuLs44eXsv4op1vAaBaBaDMVg== +"@babel/plugin-transform-shorthand-properties@^7.0.0", "@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-spread@^7.12.1", "@babel/plugin-transform-spread@^7.14.6", "@babel/plugin-transform-spread@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.5.tgz#912b06cff482c233025d3e69cf56d3e8fa166c29" - integrity sha512-5d6l/cnG7Lw4tGHEoga4xSkYp1euP7LAtrah1h1PgJ3JY7yNsjybsxQAnVK4JbtReZ/8z6ASVmd3QhYYKLaKZw== +"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.12.1", "@babel/plugin-transform-spread@^7.14.6", "@babel/plugin-transform-spread@^7.19.0": + version "7.19.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz#dd60b4620c2fec806d60cfaae364ec2188d593b6" + integrity sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w== dependencies: - "@babel/helper-plugin-utils" "^7.16.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" + "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9" -"@babel/plugin-transform-sticky-regex@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.5.tgz#593579bb2b5a8adfbe02cb43823275d9098f75f9" - integrity sha512-usYsuO1ID2LXxzuUxifgWtJemP7wL2uZtyrTVM4PKqsmJycdS4U4mGovL5xXkfUheds10Dd2PjoQLXw6zCsCbg== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-template-literals@^7.12.1", "@babel/plugin-transform-template-literals@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.5.tgz#343651385fd9923f5aa2275ca352c5d9183e1773" - integrity sha512-gnyKy9RyFhkovex4BjKWL3BVYzUDG6zC0gba7VMLbQoDuqMfJ1SDXs8k/XK41Mmt1Hyp4qNAvGFb9hKzdCqBRQ== +"@babel/plugin-transform-template-literals@^7.0.0", "@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.16.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-typeof-symbol@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.5.tgz#a1d1bf2c71573fe30965d0e4cd6a3291202e20ed" - integrity sha512-ldxCkW180qbrvyCVDzAUZqB0TAeF8W/vGJoRcaf75awm6By+PxfJKvuqVAnq8N9wz5Xa6mSpM19OfVKKVmGHSQ== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-typescript@^7.16.1": - version "7.16.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.16.1.tgz#cc0670b2822b0338355bc1b3d2246a42b8166409" - integrity sha512-NO4XoryBng06jjw/qWEU2LhcLJr1tWkhpMam/H4eas/CDKMX/b2/Ylb6EI256Y7+FVPCawwSM1rrJNOpDiz+Lg== +"@babel/plugin-transform-typescript@^7.18.6": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.20.0.tgz#2c7ec62b8bfc21482f3748789ba294a46a375169" + integrity sha512-xOAsAFaun3t9hCwZ13Qe7gq423UgMZ6zAgmLxeGGapFqlT/X3L5qT2btjiVLlFn7gWtMaVyceS5VxGAuKbgizw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/plugin-syntax-typescript" "^7.16.0" + "@babel/helper-create-class-features-plugin" "^7.19.0" + "@babel/helper-plugin-utils" "^7.19.0" + "@babel/plugin-syntax-typescript" "^7.20.0" -"@babel/plugin-transform-unicode-escapes@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.5.tgz#80507c225af49b4f4ee647e2a0ce53d2eeff9e85" - integrity sha512-shiCBHTIIChGLdyojsKQjoAyB8MBwat25lKM7MJjbe1hE0bgIppD+LX9afr41lLHOhqceqeWl4FkLp+Bgn9o1Q== +"@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.16.5" + "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-unicode-regex@^7.16.5": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.5.tgz#ac84d6a1def947d71ffb832426aa53b83d7ed49e" - integrity sha512-GTJ4IW012tiPEMMubd7sD07iU9O/LOo8Q/oU4xNhcaq0Xn8+6TcUQaHtC8YxySo1T+ErQ8RaWogIEeFhKGNPzw== +"@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.16.0" - "@babel/helper-plugin-utils" "^7.16.5" + "@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.15.4", "@babel/preset-env@^7.15.6": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.16.5.tgz#2e94d922f4a890979af04ffeb6a6b4e44ba90847" - integrity sha512-MiJJW5pwsktG61NDxpZ4oJ1CKxM1ncam9bzRtx9g40/WkLRkxFP6mhpkYV0/DxcciqoiHicx291+eUQrXb/SfQ== - dependencies: - "@babel/compat-data" "^7.16.4" - "@babel/helper-compilation-targets" "^7.16.3" - "@babel/helper-plugin-utils" "^7.16.5" - "@babel/helper-validator-option" "^7.14.5" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.16.2" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.16.0" - "@babel/plugin-proposal-async-generator-functions" "^7.16.5" - "@babel/plugin-proposal-class-properties" "^7.16.5" - "@babel/plugin-proposal-class-static-block" "^7.16.5" - "@babel/plugin-proposal-dynamic-import" "^7.16.5" - "@babel/plugin-proposal-export-namespace-from" "^7.16.5" - "@babel/plugin-proposal-json-strings" "^7.16.5" - "@babel/plugin-proposal-logical-assignment-operators" "^7.16.5" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.16.5" - "@babel/plugin-proposal-numeric-separator" "^7.16.5" - "@babel/plugin-proposal-object-rest-spread" "^7.16.5" - "@babel/plugin-proposal-optional-catch-binding" "^7.16.5" - "@babel/plugin-proposal-optional-chaining" "^7.16.5" - "@babel/plugin-proposal-private-methods" "^7.16.5" - "@babel/plugin-proposal-private-property-in-object" "^7.16.5" - "@babel/plugin-proposal-unicode-property-regex" "^7.16.5" + version "7.19.4" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.19.4.tgz#4c91ce2e1f994f717efb4237891c3ad2d808c94b" + integrity sha512-5QVOTXUdqTCjQuh2GGtdd7YEhoRXBMVGROAtsBeLGIbIz3obCBIfRMT1I3ZKkMgNzwkyCkftDXSSkHxnfVf4qg== + dependencies: + "@babel/compat-data" "^7.19.4" + "@babel/helper-compilation-targets" "^7.19.3" + "@babel/helper-plugin-utils" "^7.19.0" + "@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.19.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.19.4" + "@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.18.6" "@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" @@ -1201,54 +1041,54 @@ "@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.16.5" - "@babel/plugin-transform-async-to-generator" "^7.16.5" - "@babel/plugin-transform-block-scoped-functions" "^7.16.5" - "@babel/plugin-transform-block-scoping" "^7.16.5" - "@babel/plugin-transform-classes" "^7.16.5" - "@babel/plugin-transform-computed-properties" "^7.16.5" - "@babel/plugin-transform-destructuring" "^7.16.5" - "@babel/plugin-transform-dotall-regex" "^7.16.5" - "@babel/plugin-transform-duplicate-keys" "^7.16.5" - "@babel/plugin-transform-exponentiation-operator" "^7.16.5" - "@babel/plugin-transform-for-of" "^7.16.5" - "@babel/plugin-transform-function-name" "^7.16.5" - "@babel/plugin-transform-literals" "^7.16.5" - "@babel/plugin-transform-member-expression-literals" "^7.16.5" - "@babel/plugin-transform-modules-amd" "^7.16.5" - "@babel/plugin-transform-modules-commonjs" "^7.16.5" - "@babel/plugin-transform-modules-systemjs" "^7.16.5" - "@babel/plugin-transform-modules-umd" "^7.16.5" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.16.5" - "@babel/plugin-transform-new-target" "^7.16.5" - "@babel/plugin-transform-object-super" "^7.16.5" - "@babel/plugin-transform-parameters" "^7.16.5" - "@babel/plugin-transform-property-literals" "^7.16.5" - "@babel/plugin-transform-regenerator" "^7.16.5" - "@babel/plugin-transform-reserved-words" "^7.16.5" - "@babel/plugin-transform-shorthand-properties" "^7.16.5" - "@babel/plugin-transform-spread" "^7.16.5" - "@babel/plugin-transform-sticky-regex" "^7.16.5" - "@babel/plugin-transform-template-literals" "^7.16.5" - "@babel/plugin-transform-typeof-symbol" "^7.16.5" - "@babel/plugin-transform-unicode-escapes" "^7.16.5" - "@babel/plugin-transform-unicode-regex" "^7.16.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.19.4" + "@babel/plugin-transform-classes" "^7.19.0" + "@babel/plugin-transform-computed-properties" "^7.18.9" + "@babel/plugin-transform-destructuring" "^7.19.4" + "@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.18.6" + "@babel/plugin-transform-modules-commonjs" "^7.18.6" + "@babel/plugin-transform-modules-systemjs" "^7.19.0" + "@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.18.8" + "@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.16.0" - babel-plugin-polyfill-corejs2 "^0.3.0" - babel-plugin-polyfill-corejs3 "^0.4.0" - babel-plugin-polyfill-regenerator "^0.3.0" - core-js-compat "^3.19.1" + "@babel/types" "^7.19.4" + 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.16.5" - resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.16.5.tgz#fed36ad84ed09f6df41a37b372d3933fc58d0885" - integrity sha512-rmC6Nznp4V55N4Zfec87jwd14TdREqwKVJFM/6Z2wTwoeZQr56czjaPRCezqzqc8TsHF7aLP1oczjadIQ058gw== + 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.16.5" - "@babel/helper-validator-option" "^7.14.5" - "@babel/plugin-transform-flow-strip-types" "^7.16.5" + "@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" @@ -1262,135 +1102,84 @@ esutils "^2.0.2" "@babel/preset-react@^7.12.10", "@babel/preset-react@^7.14.0": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.16.5.tgz#09df3b7a6522cb3e6682dc89b4dfebb97d22031b" - integrity sha512-3kzUOQeaxY/2vhPDS7CX/KGEGu/1bOYGvdRDJ2U5yjEz5o5jmIeTPLoiQBPGjfhPascLuW5OlMiPzwOOuB6txg== + 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.16.5" - "@babel/helper-validator-option" "^7.14.5" - "@babel/plugin-transform-react-display-name" "^7.16.5" - "@babel/plugin-transform-react-jsx" "^7.16.5" - "@babel/plugin-transform-react-jsx-development" "^7.16.5" - "@babel/plugin-transform-react-pure-annotations" "^7.16.5" + "@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", "@babel/preset-typescript@^7.15.0": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.16.5.tgz#b86a5b0ae739ba741347d2f58c52f52e63cf1ba1" - integrity sha512-lmAWRoJ9iOSvs3DqOndQpj8XqXkzaiQs50VG/zESiI9D3eoZhGriU675xNCr0UwvsuXrhMAGvyk1w+EVWF3u8Q== +"@babel/preset-typescript@^7.12.7", "@babel/preset-typescript@^7.15.0", "@babel/preset-typescript@^7.16.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.16.5" - "@babel/helper-validator-option" "^7.14.5" - "@babel/plugin-transform-typescript" "^7.16.1" + "@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.16.5" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.16.5.tgz#657d28b7ca68190de8f6159245b5ed1cfa181640" - integrity sha512-NpluD+cToBiZiDsG3y9rtIcqDyivsahpaM9csfyfiq1qQWduSmihUZ+ruIqqSDGjZKZMJfgAElo9x2YWlOQuRw== + 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.0" + pirates "^4.0.5" source-map-support "^0.5.16" "@babel/runtime-corejs3@^7.10.2": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.16.5.tgz#9057d879720c136193f0440bc400088212a74894" - integrity sha512-F1pMwvTiUNSAM8mc45kccMQxj31x3y3P+tA/X8hKNWp3/hUsxdGxZ3D3H8JIkxtfA8qGkaBTKvcmvStaYseAFw== - dependencies: - core-js-pure "^3.19.0" - regenerator-runtime "^0.13.4" - -"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.4", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.6", "@babel/runtime@^7.15.4", "@babel/runtime@^7.16.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.3.4", "@babel/runtime@^7.5.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.16.5.tgz#7f3e34bf8bdbbadf03fbb7b1ea0d929569c9487a" - integrity sha512-TXWihFIS3Pyv5hzR7j6ihmeLkZfrXGxAr5UfSl8CHf+6q/wpiYDkUau0czckpYG8QmnCIuPpdLtuA9VmuGGyMA== - dependencies: - regenerator-runtime "^0.13.4" - -"@babel/runtime@^7.13.10", "@babel/runtime@^7.17.8": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.18.6.tgz#6a1ef59f838debd670421f8c7f2cbb8da9751580" - integrity sha512-t9wi7/AW6XtKahAe20Yw0/mMljKq0B1r2fPdvaAdV/KPDZewFXdaaa6K7lxmZBZ8FBNpCiAT6iHPmd6QO9bKfQ== + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.20.0.tgz#56ef7af3cd23d1570969809a5a8782e774e0141a" + integrity sha512-v1JH7PeAAGBEyTQM9TqojVl+b20zXtesFKCJHu50xMxZKD1fX0TKaKHPsZfFkXfs7D1M9M6Eeqg1FkJ3a0x2dA== dependencies: - regenerator-runtime "^0.13.4" + core-js-pure "^3.25.1" + regenerator-runtime "^0.13.10" -"@babel/runtime@^7.2.0": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.4", "@babel/runtime@^7.12.5", "@babel/runtime@^7.15.4", "@babel/runtime@^7.17.8", "@babel/runtime@^7.18.0", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.9", "@babel/runtime@^7.2.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.3.4", "@babel/runtime@^7.5.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": version "7.20.0" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.0.tgz#824a9ef325ffde6f78056059db3168c08785e24a" integrity sha512-NDYdls71fTXoU8TZHfbBWg7DiZfNzClcKui/+kyi6ppD2L1qnWW3VV6CjtaBXSUGGhiTWJ6ereOIkUvenif66Q== dependencies: regenerator-runtime "^0.13.10" -"@babel/standalone@^7.15.5": - version "7.16.6" - resolved "https://registry.yarnpkg.com/@babel/standalone/-/standalone-7.16.6.tgz#2999d50df80207f747095118c19ed63a596a268b" - integrity sha512-wjildVe951w1IPEPN4G76j+y5JFZfJN9gdyP8o9zd61qbiVEecAgORKskK1D/7VrJZrZS+nxDbhj2akEFU2RJw== - -"@babel/template@^7.10.4", "@babel/template@^7.12.7", "@babel/template@^7.15.4", "@babel/template@^7.16.0", "@babel/template@^7.3.3", "@babel/template@^7.7.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.0.tgz#d16a35ebf4cd74e202083356fab21dd89363ddd6" - integrity sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A== - dependencies: - "@babel/code-frame" "^7.16.0" - "@babel/parser" "^7.16.0" - "@babel/types" "^7.16.0" - -"@babel/template@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.6.tgz#1283f4993e00b929d6e2d3c72fdc9168a2977a31" - integrity sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw== +"@babel/template@^7.12.7", "@babel/template@^7.16.7", "@babel/template@^7.18.10", "@babel/template@^7.3.3", "@babel/template@^7.7.0": + version "7.18.10" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.10.tgz#6f9134835970d1dbf0835c0d100c9f38de0c5e71" + integrity sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA== dependencies: "@babel/code-frame" "^7.18.6" - "@babel/parser" "^7.18.6" - "@babel/types" "^7.18.6" - -"@babel/traverse@^7.1.0", "@babel/traverse@^7.1.6", "@babel/traverse@^7.10.5", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.15.4", "@babel/traverse@^7.16.5", "@babel/traverse@^7.7.2": - version "7.16.5" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.16.5.tgz#d7d400a8229c714a59b87624fc67b0f1fbd4b2b3" - integrity sha512-FOCODAzqUMROikDYLYxl4nmwiLlu85rNqBML/A5hKRVXG2LV8d0iMqgPzdYTcIpjZEBB7D6UDU9vxRZiriASdQ== - dependencies: - "@babel/code-frame" "^7.16.0" - "@babel/generator" "^7.16.5" - "@babel/helper-environment-visitor" "^7.16.5" - "@babel/helper-function-name" "^7.16.0" - "@babel/helper-hoist-variables" "^7.16.0" - "@babel/helper-split-export-declaration" "^7.16.0" - "@babel/parser" "^7.16.5" - "@babel/types" "^7.16.0" - debug "^4.1.0" - globals "^11.1.0" + "@babel/parser" "^7.18.10" + "@babel/types" "^7.18.10" -"@babel/traverse@^7.18.6": - version "7.18.8" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.18.8.tgz#f095e62ab46abf1da35e5a2011f43aee72d8d5b0" - integrity sha512-UNg/AcSySJYR/+mIcJQDCv00T+AqRO7j/ZEJLzpaYtgM48rMg5MnkJgyNqkzo88+p4tfRvZJCEiwwfG6h4jkRg== +"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.14.0", "@babel/traverse@^7.15.4", "@babel/traverse@^7.16.8", "@babel/traverse@^7.19.0", "@babel/traverse@^7.19.1", "@babel/traverse@^7.19.6", "@babel/traverse@^7.20.0", "@babel/traverse@^7.7.2": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.0.tgz#538c4c6ce6255f5666eba02252a7b59fc2d5ed98" + integrity sha512-5+cAXQNARgjRUK0JWu2UBwja4JLSO/rBMPJzpsKb+oBF5xlUuCfljQepS4XypBQoiigL0VQjTZy6WiONtUdScQ== dependencies: "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.18.7" - "@babel/helper-environment-visitor" "^7.18.6" - "@babel/helper-function-name" "^7.18.6" + "@babel/generator" "^7.20.0" + "@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.18.8" - "@babel/types" "^7.18.8" + "@babel/parser" "^7.20.0" + "@babel/types" "^7.20.0" debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.10.5", "@babel/types@^7.12.11", "@babel/types@^7.12.7", "@babel/types@^7.15.4", "@babel/types@^7.16.0", "@babel/types@^7.2.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.16.0.tgz#db3b313804f96aadd0b776c4823e127ad67289ba" - integrity sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg== - dependencies: - "@babel/helper-validator-identifier" "^7.15.7" - to-fast-properties "^2.0.0" - -"@babel/types@^7.18.6", "@babel/types@^7.18.7", "@babel/types@^7.18.8": - version "7.18.8" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.18.8.tgz#c5af199951bf41ba4a6a9a6d0d8ad722b30cd42f" - integrity sha512-qwpdsmraq0aJ3osLJRApsc2ouSJCdnMeZwB0DhbtHAtRpZNZCdlbRnHIgcRKzdE1g0iOGg644fzjOBcdOz9cPw== +"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.12.11", "@babel/types@^7.12.7", "@babel/types@^7.15.4", "@babel/types@^7.16.8", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.19.4", "@babel/types@^7.2.0", "@babel/types@^7.20.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.20.0.tgz#52c94cf8a7e24e89d2a194c25c35b17a64871479" + integrity sha512-Jlgt3H0TajCW164wkTOTzHkZb075tMQMULzrLUoUeKmO7eFL96GgDxf7/Axhc5CAuKE3KFyVW1p6ysKsi2oXAg== dependencies: - "@babel/helper-validator-identifier" "^7.18.6" + "@babel/helper-string-parser" "^7.19.4" + "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" "@base2/pretty-print-object@1.0.1": @@ -1403,68 +1192,81 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@changesets/apply-release-plan@^5.0.3": - version "5.0.3" - resolved "https://registry.yarnpkg.com/@changesets/apply-release-plan/-/apply-release-plan-5.0.3.tgz#3f516ef881fa1278cb9795ef282db57cfd6dd0e2" - integrity sha512-V15OPq/GyaRB3FA0hEV0V21OhsxXcPAOUeXFF9VKKPl9XkB+nDndvUcqUfr06OeeXczP8+1aCB9N+bazbfa0TQ== +"@builder.io/partytown@^0.5.2": + version "0.5.4" + resolved "https://registry.yarnpkg.com/@builder.io/partytown/-/partytown-0.5.4.tgz#1a89069978734e132fa4a59414ddb64e4b94fde7" + integrity sha512-qnikpQgi30AS01aFlNQV6l8/qdZIcP76mp90ti+u4rucXHsn4afSKivQXApqxvrQG9+Ibv45STyvHizvxef/7A== + +"@changesets/apply-release-plan@^6.1.1": + version "6.1.1" + resolved "https://registry.yarnpkg.com/@changesets/apply-release-plan/-/apply-release-plan-6.1.1.tgz#14ec261c11c9b90d110a83b8b96412ddb7303ddf" + integrity sha512-LaQiP/Wf0zMVR0HNrLQAjz3rsNsr0d/RlnP6Ef4oi8VafOwnY1EoWdK4kssuUJGgNgDyHpomS50dm8CU3D7k7g== dependencies: "@babel/runtime" "^7.10.4" - "@changesets/config" "^1.6.3" + "@changesets/config" "^2.2.0" "@changesets/get-version-range-type" "^0.3.2" - "@changesets/git" "^1.2.1" - "@changesets/types" "^4.0.2" + "@changesets/git" "^1.5.0" + "@changesets/types" "^5.2.0" "@manypkg/get-packages" "^1.1.3" detect-indent "^6.0.0" fs-extra "^7.0.1" lodash.startcase "^4.4.0" outdent "^0.5.0" - prettier "^1.19.1" + prettier "^2.7.1" resolve-from "^5.0.0" semver "^5.4.1" -"@changesets/assemble-release-plan@^5.0.4": - version "5.0.4" - resolved "https://registry.yarnpkg.com/@changesets/assemble-release-plan/-/assemble-release-plan-5.0.4.tgz#3de6f6d3928187399ca8dedbc8e23a54890c0000" - integrity sha512-kn0UecLXiif6DzB2EBEOrS54BWSo2nPC4111I4a42ut0Tpeu5z4dEOGmREMd2lMQjx9EE/q9VudkfFa12SFdwA== +"@changesets/assemble-release-plan@^5.2.2": + version "5.2.2" + resolved "https://registry.yarnpkg.com/@changesets/assemble-release-plan/-/assemble-release-plan-5.2.2.tgz#9824f14a7a6e411c7153f1ccc2a42bbe35688129" + integrity sha512-B1qxErQd85AeZgZFZw2bDKyOfdXHhG+X5S+W3Da2yCem8l/pRy4G/S7iOpEcMwg6lH8q2ZhgbZZwZ817D+aLuQ== dependencies: "@babel/runtime" "^7.10.4" "@changesets/errors" "^0.1.4" - "@changesets/get-dependents-graph" "^1.2.4" - "@changesets/types" "^4.0.2" + "@changesets/get-dependents-graph" "^1.3.4" + "@changesets/types" "^5.2.0" "@manypkg/get-packages" "^1.1.3" semver "^5.4.1" +"@changesets/changelog-git@^0.1.13": + version "0.1.13" + resolved "https://registry.yarnpkg.com/@changesets/changelog-git/-/changelog-git-0.1.13.tgz#182e130add456255d8ee2b4c8eaf88048944aaaf" + integrity sha512-zvJ50Q+EUALzeawAxax6nF2WIcSsC5PwbuLeWkckS8ulWnuPYx8Fn/Sjd3rF46OzeKA8t30loYYV6TIzp4DIdg== + dependencies: + "@changesets/types" "^5.2.0" + "@changesets/changelog-github@^0.4.1": - version "0.4.2" - resolved "https://registry.yarnpkg.com/@changesets/changelog-github/-/changelog-github-0.4.2.tgz#359eb4b7485eddc55855f8793811817d5124dfab" - integrity sha512-qq8lJcq91ki7UT0fIfIcn5Yy7GJj19TmkLmGZ24/wEfxcD/nHHoTNRoi6nPt+Htf7qEudKxXLzQLi41B7Mt2vg== + version "0.4.7" + resolved "https://registry.yarnpkg.com/@changesets/changelog-github/-/changelog-github-0.4.7.tgz#4da67472eaa0dc1ccff91fe8ecd9846ce818ec7b" + integrity sha512-UUG5sKwShs5ha1GFnayUpZNcDGWoY7F5XxhOEHS62sDPOtoHQZsG3j1nC5RxZ3M1URHA321cwVZHeXgu99Y3ew== dependencies: - "@changesets/get-github-info" "^0.5.0" - "@changesets/types" "^4.0.2" + "@changesets/get-github-info" "^0.5.1" + "@changesets/types" "^5.2.0" dotenv "^8.1.0" "@changesets/cli@^2.18.0": - version "2.19.0" - resolved "https://registry.yarnpkg.com/@changesets/cli/-/cli-2.19.0.tgz#fb1f20816ba6e505b78dbe10f698035df3258314" - integrity sha512-AqtWiarNSUD42pv7ldTAFMU7pa/39t78VDAWFy78RgUJQyFmXktOG8fzjMhksJ+G5+pWLVSXaLSj6cCbpeWivg== + version "2.25.1" + resolved "https://registry.yarnpkg.com/@changesets/cli/-/cli-2.25.1.tgz#78ae1a185e8dcbe5420fac44ed22fb03836de55e" + integrity sha512-e65ZJ7QKq7aERV/vAeuG0DTkkuEnTZK8eVNYqnd6wBsc9YTK+5iuuzp8aG0E80AngxeOaI4u77OIfzE9fv2T5Q== dependencies: "@babel/runtime" "^7.10.4" - "@changesets/apply-release-plan" "^5.0.3" - "@changesets/assemble-release-plan" "^5.0.4" - "@changesets/config" "^1.6.3" + "@changesets/apply-release-plan" "^6.1.1" + "@changesets/assemble-release-plan" "^5.2.2" + "@changesets/changelog-git" "^0.1.13" + "@changesets/config" "^2.2.0" "@changesets/errors" "^0.1.4" - "@changesets/get-dependents-graph" "^1.2.4" - "@changesets/get-release-plan" "^3.0.4" - "@changesets/git" "^1.2.1" + "@changesets/get-dependents-graph" "^1.3.4" + "@changesets/get-release-plan" "^3.0.15" + "@changesets/git" "^1.5.0" "@changesets/logger" "^0.0.5" - "@changesets/pre" "^1.0.9" - "@changesets/read" "^0.5.2" - "@changesets/types" "^4.0.2" - "@changesets/write" "^0.1.6" + "@changesets/pre" "^1.0.13" + "@changesets/read" "^0.5.8" + "@changesets/types" "^5.2.0" + "@changesets/write" "^0.2.1" "@manypkg/get-packages" "^1.1.3" "@types/is-ci" "^3.0.0" "@types/semver" "^6.0.0" - boxen "^1.3.0" + ansi-colors "^4.1.3" chalk "^2.1.0" enquirer "^2.3.0" external-editor "^3.1.0" @@ -1475,20 +1277,21 @@ outdent "^0.5.0" p-limit "^2.2.0" preferred-pm "^3.0.0" + resolve-from "^5.0.0" semver "^5.4.1" spawndamnit "^2.0.0" term-size "^2.1.0" - tty-table "^2.8.10" + tty-table "^4.1.5" -"@changesets/config@^1.6.3": - version "1.6.3" - resolved "https://registry.yarnpkg.com/@changesets/config/-/config-1.6.3.tgz#f33f040b2b01cebbb5aacf040ff0e78698e38350" - integrity sha512-J1PwxgAdvUZpvASFnzPQ1ixl20Pn42UmaqozqBlWENQDbCO/VlmianctCmwwBeR0RR/cx7oIC/ACbR1fy7mXTw== +"@changesets/config@^2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@changesets/config/-/config-2.2.0.tgz#382f6cd801fa56273942659114c8060378dfe066" + integrity sha512-GGaokp3nm5FEDk/Fv2PCRcQCOxGKKPRZ7prcMqxEr7VSsG75MnChQE8plaW1k6V8L2bJE+jZWiRm19LbnproOw== dependencies: "@changesets/errors" "^0.1.4" - "@changesets/get-dependents-graph" "^1.2.4" + "@changesets/get-dependents-graph" "^1.3.4" "@changesets/logger" "^0.0.5" - "@changesets/types" "^4.0.2" + "@changesets/types" "^5.2.0" "@manypkg/get-packages" "^1.1.3" fs-extra "^7.0.1" micromatch "^4.0.2" @@ -1500,36 +1303,36 @@ dependencies: extendable-error "^0.1.5" -"@changesets/get-dependents-graph@^1.2.4": - version "1.2.4" - resolved "https://registry.yarnpkg.com/@changesets/get-dependents-graph/-/get-dependents-graph-1.2.4.tgz#809226aa424ff5ec990696fc7c031f02b1380470" - integrity sha512-53lYhG9RFW5YIilMSo2TpZ3ocAkK3KENkiWhXYrbyXSt6SPOsIWW1wtialTJOqiuC7Lrdlazd5AHvGH7nlV4fg== +"@changesets/get-dependents-graph@^1.3.4": + version "1.3.4" + resolved "https://registry.yarnpkg.com/@changesets/get-dependents-graph/-/get-dependents-graph-1.3.4.tgz#d8bf537f45a7ff773da99143675f49e250996838" + integrity sha512-+C4AOrrFY146ydrgKOo5vTZfj7vetNu1tWshOID+UjPUU9afYGDXI8yLnAeib1ffeBXV3TuGVcyphKpJ3cKe+A== dependencies: - "@changesets/types" "^4.0.2" + "@changesets/types" "^5.2.0" "@manypkg/get-packages" "^1.1.3" chalk "^2.1.0" fs-extra "^7.0.1" semver "^5.4.1" -"@changesets/get-github-info@^0.5.0": - version "0.5.0" - resolved "https://registry.yarnpkg.com/@changesets/get-github-info/-/get-github-info-0.5.0.tgz#b91ceb2d82edef78ae1598ea9fc335a012250295" - integrity sha512-vm5VgHwrxkMkUjFyn3UVNKLbDp9YMHd3vMf1IyJoa/7B+6VpqmtAaXyDS0zBLfN5bhzVCHrRnj4GcZXXcqrFTw== +"@changesets/get-github-info@^0.5.1": + version "0.5.1" + resolved "https://registry.yarnpkg.com/@changesets/get-github-info/-/get-github-info-0.5.1.tgz#5a20328b26f301b2193717abb32e73651e8811b7" + integrity sha512-w2yl3AuG+hFuEEmT6j1zDlg7GQLM/J2UxTmk0uJBMdRqHni4zXGe/vUlPfLom5KfX3cRfHc0hzGvloDPjWFNZw== dependencies: dataloader "^1.4.0" node-fetch "^2.5.0" -"@changesets/get-release-plan@^3.0.4": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@changesets/get-release-plan/-/get-release-plan-3.0.4.tgz#d7b23b42f7f794ddb3632cc2f778042255df041f" - integrity sha512-XEMI1WlB2crtXHLrpF8qLteZDe6ZIvuj9J3Pc9EkCo1QbVonx74zOC65KFPqNJOTpcYrex6MzOueUn2Vp32gwA== +"@changesets/get-release-plan@^3.0.15": + version "3.0.15" + resolved "https://registry.yarnpkg.com/@changesets/get-release-plan/-/get-release-plan-3.0.15.tgz#55577b235b785125a462d5d2a2dffe4dbf94e590" + integrity sha512-W1tFwxE178/en+zSj/Nqbc3mvz88mcdqUMJhRzN1jDYqN3QI4ifVaRF9mcWUU+KI0gyYEtYR65tour690PqTcA== dependencies: "@babel/runtime" "^7.10.4" - "@changesets/assemble-release-plan" "^5.0.4" - "@changesets/config" "^1.6.3" - "@changesets/pre" "^1.0.9" - "@changesets/read" "^0.5.2" - "@changesets/types" "^4.0.2" + "@changesets/assemble-release-plan" "^5.2.2" + "@changesets/config" "^2.2.0" + "@changesets/pre" "^1.0.13" + "@changesets/read" "^0.5.8" + "@changesets/types" "^5.2.0" "@manypkg/get-packages" "^1.1.3" "@changesets/get-version-range-type@^0.3.2": @@ -1537,14 +1340,14 @@ resolved "https://registry.yarnpkg.com/@changesets/get-version-range-type/-/get-version-range-type-0.3.2.tgz#8131a99035edd11aa7a44c341cbb05e668618c67" integrity sha512-SVqwYs5pULYjYT4op21F2pVbcrca4qA/bAA3FmFXKMN7Y+HcO8sbZUTx3TAy2VXulP2FACd1aC7f2nTuqSPbqg== -"@changesets/git@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@changesets/git/-/git-1.2.1.tgz#c429d70ca616a4f03872f82e2ca6f7eef707a6af" - integrity sha512-Qkubed8zg4/YOXnR97ZOocKXncjLMc185jSKu3ah5TgCpwMcK1EMkGcmpf3U8EHtQbh9pRKAxlfGq376WPPyPA== +"@changesets/git@^1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@changesets/git/-/git-1.5.0.tgz#71bbcf11f3b346d56eeaf3d3201e6dc3e270ea5a" + integrity sha512-Xo8AT2G7rQJSwV87c8PwMm6BAc98BnufRMsML7m7Iw8Or18WFvFmxqG5aOL5PBvhgq9KrKvaeIBNIymracSuHg== dependencies: "@babel/runtime" "^7.10.4" "@changesets/errors" "^0.1.4" - "@changesets/types" "^4.0.2" + "@changesets/types" "^5.2.0" "@manypkg/get-packages" "^1.1.3" is-subdir "^1.1.1" spawndamnit "^2.0.0" @@ -1556,54 +1359,59 @@ dependencies: chalk "^2.1.0" -"@changesets/parse@^0.3.10": - version "0.3.10" - resolved "https://registry.yarnpkg.com/@changesets/parse/-/parse-0.3.10.tgz#1c42d00d89107a94d5c047a6d5a80011f7e228e0" - integrity sha512-Zqw4NozzYKsfULxeQaSXCEHeGfaxa/eDIf5F1NWi7sP5xtVTh9M3bnzQXgjQKqfUG2nlmx9BUtFwmpVML7Pu3Q== +"@changesets/parse@^0.3.15": + version "0.3.15" + resolved "https://registry.yarnpkg.com/@changesets/parse/-/parse-0.3.15.tgz#1bc74f8c43b0861d71f4fccf78950411004ba308" + integrity sha512-3eDVqVuBtp63i+BxEWHPFj2P1s3syk0PTrk2d94W9JD30iG+OER0Y6n65TeLlY8T2yB9Fvj6Ev5Gg0+cKe/ZUA== dependencies: - "@changesets/types" "^4.0.2" + "@changesets/types" "^5.2.0" js-yaml "^3.13.1" -"@changesets/pre@^1.0.9": - version "1.0.9" - resolved "https://registry.yarnpkg.com/@changesets/pre/-/pre-1.0.9.tgz#f1a0efea42733c25ef4a782377b2ac61023bd1b7" - integrity sha512-F3+qMun89KlynecBD15fEpwGT/KxbYb3WGeut6w1xhZb0u7V/jdcPy9b+kJ2xmBqFZLn1WteWIP96IjxS57H7A== +"@changesets/pre@^1.0.13": + version "1.0.13" + resolved "https://registry.yarnpkg.com/@changesets/pre/-/pre-1.0.13.tgz#49c3ae8bb444a1ce3e0fe4cb21f238318b6763e9" + integrity sha512-jrZc766+kGZHDukjKhpBXhBJjVQMied4Fu076y9guY1D3H622NOw8AQaLV3oQsDtKBTrT2AUFjt9Z2Y9Qx+GfA== dependencies: "@babel/runtime" "^7.10.4" "@changesets/errors" "^0.1.4" - "@changesets/types" "^4.0.2" + "@changesets/types" "^5.2.0" "@manypkg/get-packages" "^1.1.3" fs-extra "^7.0.1" -"@changesets/read@^0.5.2": - version "0.5.2" - resolved "https://registry.yarnpkg.com/@changesets/read/-/read-0.5.2.tgz#73c062882ba75615a3aa7c66d6ef393ba8a62fcf" - integrity sha512-spI5uMYsyZfuXbZmUAQhXitu09YZ6iwmEE1QJnJkAPFLkpt5uEgyG9EnP3HRkGSkmLy8c+3pYIR2bbhxbZIm6w== +"@changesets/read@^0.5.8": + version "0.5.8" + resolved "https://registry.yarnpkg.com/@changesets/read/-/read-0.5.8.tgz#84e24fd12e6759cef090088261c08b1dfe0f350e" + integrity sha512-eYaNfxemgX7f7ELC58e7yqQICW5FB7V+bd1lKt7g57mxUrTveYME+JPaBPpYx02nP53XI6CQp6YxnR9NfmFPKw== dependencies: "@babel/runtime" "^7.10.4" - "@changesets/git" "^1.2.1" + "@changesets/git" "^1.5.0" "@changesets/logger" "^0.0.5" - "@changesets/parse" "^0.3.10" - "@changesets/types" "^4.0.2" + "@changesets/parse" "^0.3.15" + "@changesets/types" "^5.2.0" chalk "^2.1.0" fs-extra "^7.0.1" p-filter "^2.1.0" -"@changesets/types@^4.0.1", "@changesets/types@^4.0.2": - version "4.0.2" - resolved "https://registry.yarnpkg.com/@changesets/types/-/types-4.0.2.tgz#d20e1e45bdc96a97cc509c655e708b53a9292465" - integrity sha512-OeDaB7D+WVy/ErymPzFm58IeGvz4DOl+oedyZETfnkfMezF/Uhrm1Ub6MHrO5LcAaQTW+ptDmr0fmaVyoTxgHw== +"@changesets/types@^4.0.1": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@changesets/types/-/types-4.1.0.tgz#fb8f7ca2324fd54954824e864f9a61a82cb78fe0" + integrity sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw== -"@changesets/write@^0.1.6": - version "0.1.6" - resolved "https://registry.yarnpkg.com/@changesets/write/-/write-0.1.6.tgz#798d882bada93f391902a854a17965f3b80a5201" - integrity sha512-JWE2gJs9eHhorxqembkf43fllKlCz+sp1TJKSheaWfhWILMHPdfa/xQG4+sMZkISo1qZ+IlJyiBLha6iGGjXyA== +"@changesets/types@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@changesets/types/-/types-5.2.0.tgz#c4927f5bf9668f778c12b4226cfd07a1f5b79c9b" + integrity sha512-km/66KOqJC+eicZXsm2oq8A8bVTSpkZJ60iPV/Nl5Z5c7p9kk8xxh6XGRTlnludHldxOOfudhnDN2qPxtHmXzA== + +"@changesets/write@^0.2.1": + version "0.2.1" + resolved "https://registry.yarnpkg.com/@changesets/write/-/write-0.2.1.tgz#c00d95851e2ca70385434a360a90ead9a1d07c74" + integrity sha512-KUd49nt2fnYdGixIqTi1yVE1nAoZYUMdtB3jBfp77IMqjZ65hrmZE5HdccDlTeClZN0420ffpnfET3zzeY8pdw== dependencies: "@babel/runtime" "^7.10.4" - "@changesets/types" "^4.0.2" + "@changesets/types" "^5.2.0" fs-extra "^7.0.1" human-id "^1.0.2" - prettier "^1.19.1" + prettier "^2.7.1" "@cnakazawa/watch@^1.0.3": version "1.0.4" @@ -1758,18 +1566,6 @@ dependencies: chalk "^4.0.0" -"@cspotcode/source-map-consumer@0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz#33bf4b7b39c178821606f669bbc447a6a629786b" - integrity sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg== - -"@cspotcode/source-map-support@0.7.0": - version "0.7.0" - resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz#4789840aa859e46d2f3173727ab707c66bf344f5" - integrity sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA== - dependencies: - "@cspotcode/source-map-consumer" "0.8.0" - "@cspotcode/source-map-support@^0.8.0": version "0.8.1" resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" @@ -1777,6 +1573,112 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" +"@csstools/postcss-cascade-layers@^1.1.0": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.1.1.tgz#8a997edf97d34071dd2e37ea6022447dd9e795ad" + integrity sha512-+KdYrpKC5TgomQr2DlZF4lDEpHcoxnj5IGddYYfBWJAKfj1JtuHUIqMa+E1pJJ+z3kvDViWMqyqPlG4Ja7amQA== + dependencies: + "@csstools/selector-specificity" "^2.0.2" + postcss-selector-parser "^6.0.10" + +"@csstools/postcss-color-function@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz#2bd36ab34f82d0497cfacdc9b18d34b5e6f64b6b" + integrity sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw== + dependencies: + "@csstools/postcss-progressive-custom-properties" "^1.1.0" + postcss-value-parser "^4.2.0" + +"@csstools/postcss-font-format-keywords@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz#677b34e9e88ae997a67283311657973150e8b16a" + integrity sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-hwb-function@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz#ab54a9fce0ac102c754854769962f2422ae8aa8b" + integrity sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-ic-unit@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz#28237d812a124d1a16a5acc5c3832b040b303e58" + integrity sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw== + dependencies: + "@csstools/postcss-progressive-custom-properties" "^1.1.0" + postcss-value-parser "^4.2.0" + +"@csstools/postcss-is-pseudo-class@^2.0.7": + version "2.0.7" + resolved "https://registry.yarnpkg.com/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz#846ae6c0d5a1eaa878fce352c544f9c295509cd1" + integrity sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA== + dependencies: + "@csstools/selector-specificity" "^2.0.0" + postcss-selector-parser "^6.0.10" + +"@csstools/postcss-nested-calc@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-nested-calc/-/postcss-nested-calc-1.0.0.tgz#d7e9d1d0d3d15cf5ac891b16028af2a1044d0c26" + integrity sha512-JCsQsw1wjYwv1bJmgjKSoZNvf7R6+wuHDAbi5f/7MbFhl2d/+v+TvBTU4BJH3G1X1H87dHl0mh6TfYogbT/dJQ== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-normalize-display-values@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz#15da54a36e867b3ac5163ee12c1d7f82d4d612c3" + integrity sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-oklab-function@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz#88cee0fbc8d6df27079ebd2fa016ee261eecf844" + integrity sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA== + dependencies: + "@csstools/postcss-progressive-custom-properties" "^1.1.0" + postcss-value-parser "^4.2.0" + +"@csstools/postcss-progressive-custom-properties@^1.1.0", "@csstools/postcss-progressive-custom-properties@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz#542292558384361776b45c85226b9a3a34f276fa" + integrity sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-stepped-value-functions@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz#f8772c3681cc2befed695e2b0b1d68e22f08c4f4" + integrity sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-text-decoration-shorthand@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-1.0.0.tgz#ea96cfbc87d921eca914d3ad29340d9bcc4c953f" + integrity sha512-c1XwKJ2eMIWrzQenN0XbcfzckOLLJiczqy+YvfGmzoVXd7pT9FfObiSEfzs84bpE/VqfpEuAZ9tCRbZkZxxbdw== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-trigonometric-functions@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz#94d3e4774c36d35dcdc88ce091336cb770d32756" + integrity sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-unset-value@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz#c99bb70e2cdc7312948d1eb41df2412330b81f77" + integrity sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g== + +"@csstools/selector-specificity@^2.0.0", "@csstools/selector-specificity@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz#1bfafe4b7ed0f3e4105837e056e0a89b108ebe36" + integrity sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg== + "@custom-elements-manifest/analyzer@^0.5.6": version "0.5.7" resolved "https://registry.yarnpkg.com/@custom-elements-manifest/analyzer/-/analyzer-0.5.7.tgz#8ae74ede984f9a8f8717f4d938cb542c72af8db8" @@ -1792,58 +1694,58 @@ typescript "~4.3.2" "@discoveryjs/json-ext@^0.5.3": - version "0.5.6" - resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz#d5e0706cf8c6acd8c6032f8d54070af261bbbb2f" - integrity sha512-ws57AidsDvREKrZKYffXddNkyaF14iHNHm8VQnZH6t99E8gczjNN0GpvcGny0imC80yQ0tHz1xVUKk/KFQSUyA== + 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.9.2": - version "11.9.2" - resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.9.2.tgz#723b6d394c89fb2ef782229d92ba95a740576e95" - integrity sha512-Pr/7HGH6H6yKgnVFNEj2MVlreu3ADqftqjqwUvDy/OJzKFgxKeTQ+eeUf20FOTuHVkDON2iNa25rAXVYtWJCjw== - dependencies: - "@babel/helper-module-imports" "^7.12.13" - "@babel/plugin-syntax-jsx" "^7.12.13" - "@babel/runtime" "^7.13.10" - "@emotion/hash" "^0.8.0" - "@emotion/memoize" "^0.7.5" - "@emotion/serialize" "^1.0.2" - babel-plugin-macros "^2.6.1" + 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.0.13" + stylis "4.1.3" -"@emotion/hash@^0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.8.0.tgz#bbbff68978fefdbe68ccb533bc8cbe1d1afb5413" - integrity sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow== +"@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.7.4", "@emotion/memoize@^0.7.5": - version "0.7.5" - resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.5.tgz#2c40f81449a4e554e9fc6396910ed4843ec2be50" - integrity sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ== +"@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/serialize@^1.0.2": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.0.4.tgz#ff31fd11bb07999611199c2229e152faadc21a3c" - integrity sha512-1JHamSpH8PIfFwAMryO2bNka+y8+KA5yga5Ocf2d7ZEiJjb7xlLW7aknBGZqJLajuLOvJ+72vN+IBSwPlXD1Pg== +"@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.8.0" - "@emotion/memoize" "^0.7.4" - "@emotion/unitless" "^0.7.5" - "@emotion/utils" "^1.0.0" + "@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/unitless@^0.7.5": - version "0.7.5" - resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" - integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== +"@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/utils@^1.0.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.1.0.tgz#86b0b297f3f1a0f2bdb08eeac9a2f49afd40d0cf" - integrity sha512-iRLa/Y4Rs5H/f2nimczYmS5kFJEbpiVvgN3XVfZ022IYhuNA1IRSHEizcof88LtCTXtl9S2Cxt32KgaXEu72JQ== +"@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== "@endemolshinegroup/cosmiconfig-typescript-loader@^3.0.2": version "3.0.2" @@ -1855,6 +1757,21 @@ ts-node "^9" tslib "^2" +"@esbuild/android-arm@0.15.12": + version "0.15.12" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.15.12.tgz#e548b10a5e55b9e10537a049ebf0bc72c453b769" + integrity sha512-IC7TqIqiyE0MmvAhWkl/8AEzpOtbhRNDo7aph47We1NbE5w2bt/Q+giAhe0YYeVpYnIhGMcuZY92qDK6dQauvA== + +"@esbuild/linux-loong64@0.14.54": + version "0.14.54" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.14.54.tgz#de2a4be678bd4d0d1ffbb86e6de779cde5999028" + integrity sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw== + +"@esbuild/linux-loong64@0.15.12": + version "0.15.12" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.15.12.tgz#475b33a2631a3d8ca8aa95ee127f9a61d95bf9c1" + integrity sha512-tZEowDjvU7O7I04GYvWQOS4yyP9E/7YlsB0jjw1Ycukgr2ycEzKyIk5tms5WnLBymaewc6VmRKnn5IJWgK4eFw== + "@eslint/eslintrc@^0.4.3": version "0.4.3" resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" @@ -1885,32 +1802,137 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@esm-bundle/chai@^4.3.4": - version "4.3.4" - resolved "https://registry.yarnpkg.com/@esm-bundle/chai/-/chai-4.3.4.tgz#74ed4a0794b3a9f9517ff235744ac6f4be0d34dc" - integrity sha512-6Tx35wWiNw7X0nLY9RMx8v3EL8SacCFW+eEZOE9Hc+XxmU5HFE2AFEg+GehUZpiyDGwVvPH75ckGlqC7coIPnA== +"@esm-bundle/chai@^4.3.4-fix.0": + version "4.3.4-fix.0" + resolved "https://registry.yarnpkg.com/@esm-bundle/chai/-/chai-4.3.4-fix.0.tgz#3084cff7eb46d741749f47f3a48dbbdcbaf30a92" + integrity sha512-26SKdM4uvDWlY8/OOOxSB1AqQWeBosCX3wRYUZO7enTAj03CtVxIiCimYVG2WpULcyV51qapK4qTovwkUr5Mlw== dependencies: "@types/chai" "^4.2.12" -"@gatsbyjs/reach-router@^1.3.6": - version "1.3.6" - resolved "https://registry.yarnpkg.com/@gatsbyjs/reach-router/-/reach-router-1.3.6.tgz#4e8225836959be247890b66f21a3198a0589e34d" - integrity sha512-RW9ZBir9kqtw4IWm+Z+DLWGOeoJxoaTvNVrnR5fV9zD8EmfAhbBN/hS6i6VnTMFZ7rdd6mnpx2/XtnMvYfsaVQ== +"@floating-ui/core@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.0.1.tgz#00e64d74e911602c8533957af0cce5af6b2e93c8" + integrity sha512-bO37brCPfteXQfFY0DyNDGB3+IMe4j150KFQcgJ5aBP295p9nBGeHEs/p0czrRbtlHq4Px/yoPXO/+dOCcF4uA== + +"@floating-ui/dom@^1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.0.3.tgz#b439c8a66436c2cae8d97e889f0b76cce757a6ec" + integrity sha512-6H1kwjkOZKabApNtXRiYHvMmYJToJ1DV7rQ3xc/WJpOABhQIOJJOdz2AOejj8X+gcybaFmBpisVTZxBZAM3V0w== + dependencies: + "@floating-ui/core" "^1.0.1" + +"@gatsbyjs/parcel-namer-relative-to-cwd@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@gatsbyjs/parcel-namer-relative-to-cwd/-/parcel-namer-relative-to-cwd-1.9.0.tgz#9263de16d93463974d6fe0cd960eadca184a7d9f" + integrity sha512-N/GUtMxnYgUdn7BeHFQ3iY4A13bN5a7Jfi+kT0fGbfTggMI3XDvIHWRoMfUDcRtUo2D/gL3sQq5gd1k8obye3A== + dependencies: + "@babel/runtime" "^7.18.0" + "@parcel/namer-default" "2.6.2" + "@parcel/plugin" "2.6.2" + gatsby-core-utils "^3.24.0" + +"@gatsbyjs/potrace@^2.3.0": + version "2.3.0" + resolved "https://registry.yarnpkg.com/@gatsbyjs/potrace/-/potrace-2.3.0.tgz#0ac22fb56a02ebc64ce55e4666c4b741cbf27377" + integrity sha512-72szhSY/4tPiPPOzq15CG6LW0s9FuWQ86gkLSUvBNoF0s+jsEdRaZmATYNjiY2Skg//EuyPLEqUQnXKXME0szg== + dependencies: + jimp-compact "^0.16.1-2" + +"@gatsbyjs/reach-router@^1.3.9": + version "1.3.9" + resolved "https://registry.yarnpkg.com/@gatsbyjs/reach-router/-/reach-router-1.3.9.tgz#305c3c4c5041f27e53fc33e344a08ee2c4b985af" + integrity sha512-/354IaUSM54xb7K/TxpLBJB94iEAJ3P82JD38T8bLnIDWF+uw8+W/82DKnQ7y24FJcKxtVmG43aiDLG88KSuYQ== dependencies: invariant "^2.2.3" prop-types "^15.6.1" react-lifecycles-compat "^3.0.4" "@gatsbyjs/webpack-hot-middleware@^2.25.2": - version "2.25.2" - resolved "https://registry.yarnpkg.com/@gatsbyjs/webpack-hot-middleware/-/webpack-hot-middleware-2.25.2.tgz#bad1a8bfacc2a0ff4f2c991f8aee488e2f38294a" - integrity sha512-IFxleSfFQlvEXho2sDRa0PM+diTI+6tlb38jeUo/Lsi+mDzyjPte5Cj4aWL6PR8FpKGMl+DYfq1jxNvjH2gqkA== + version "2.25.3" + resolved "https://registry.yarnpkg.com/@gatsbyjs/webpack-hot-middleware/-/webpack-hot-middleware-2.25.3.tgz#a00c5f526cbe178330b967f7ed6a487751ffd795" + integrity sha512-ul17OZ8Dlw+ATRbnuU+kwxuAlq9lKbYz/2uBS1FLCdgoPTF1H2heP7HbUbgfMZbfRQNcCG2rMscMnr32ritCDw== dependencies: - ansi-html "0.0.7" - html-entities "^2.1.0" - querystring "^0.2.0" + ansi-html-community "0.0.8" + html-entities "^2.3.3" strip-ansi "^6.0.0" +"@graphql-codegen/add@^3.1.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@graphql-codegen/add/-/add-3.2.1.tgz#f1109f36f194f88a6abcc51703abee43ebbb50a2" + integrity sha512-w82H/evh8SSGoD3K6K/Oh3kqSdbuU+TgHqMYmmHFxtH692v2xhN/cu1s/TotBQ7r4mO7OQutze7dde2tZEXGEQ== + dependencies: + "@graphql-codegen/plugin-helpers" "^2.6.2" + tslib "~2.4.0" + +"@graphql-codegen/core@^2.5.1": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@graphql-codegen/core/-/core-2.6.2.tgz#29c766d2e9e5a3deeeb4f1728c1f7b1aca054a22" + integrity sha512-58T5yf9nEfAhDwN1Vz1hImqpdJ/gGpCGUaroQ5tqskZPf7eZYYVkEXbtqRZZLx1MCCKwjWX4hMtTPpHhwKCkng== + dependencies: + "@graphql-codegen/plugin-helpers" "^2.6.2" + "@graphql-tools/schema" "^9.0.0" + "@graphql-tools/utils" "^8.8.0" + tslib "~2.4.0" + +"@graphql-codegen/plugin-helpers@^2.4.2", "@graphql-codegen/plugin-helpers@^2.6.2": + version "2.7.1" + resolved "https://registry.yarnpkg.com/@graphql-codegen/plugin-helpers/-/plugin-helpers-2.7.1.tgz#de999bdf8a1485f6f3c4c5f21cfb038e99d67e3e" + integrity sha512-wpEShhwbQp8pqXolnSCNaj0pU91LbuBvYHpYqm96TUqyeKQYAYRVmw3JIt0g8UQpKYhg8lYIDwWdcINOYqkGLg== + dependencies: + "@graphql-tools/utils" "^8.8.0" + change-case-all "1.0.14" + common-tags "1.8.2" + import-from "4.0.0" + lodash "~4.17.0" + tslib "~2.4.0" + +"@graphql-codegen/schema-ast@^2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@graphql-codegen/schema-ast/-/schema-ast-2.5.1.tgz#ce030ae6de5dacd745848009ba0ca18c9c30910c" + integrity sha512-tewa5DEKbglWn7kYyVBkh3J8YQ5ALqAMVmZwiVFIGOao5u66nd+e4HuFqp0u+Jpz4SJGGi0ap/oFrEvlqLjd2A== + dependencies: + "@graphql-codegen/plugin-helpers" "^2.6.2" + "@graphql-tools/utils" "^8.8.0" + tslib "~2.4.0" + +"@graphql-codegen/typescript-operations@^2.3.5": + version "2.5.5" + resolved "https://registry.yarnpkg.com/@graphql-codegen/typescript-operations/-/typescript-operations-2.5.5.tgz#c372404da8fe0197d2a68bab37457719efde971a" + integrity sha512-rH15UA34MRf6cITfvt2EkSEaC/8ULvgMg5kzun6895oucA8PFyAFJaQzcjk9UraeD3ddMu56OKhZGdxd0JWfKw== + dependencies: + "@graphql-codegen/plugin-helpers" "^2.6.2" + "@graphql-codegen/typescript" "^2.7.5" + "@graphql-codegen/visitor-plugin-common" "2.13.0" + auto-bind "~4.0.0" + tslib "~2.4.0" + +"@graphql-codegen/typescript@^2.4.8", "@graphql-codegen/typescript@^2.7.5": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@graphql-codegen/typescript/-/typescript-2.8.0.tgz#c4a20cd88f301bed094b53c982cf85bceda1b78c" + integrity sha512-atQ6NFfMmoknJi0QdVSozPugKcgeJB6t1/cVskbhVtX8tAEFFLjl6H23mpz3t35AH6aGWtvx2LCjUSxHI6P6xA== + dependencies: + "@graphql-codegen/plugin-helpers" "^2.6.2" + "@graphql-codegen/schema-ast" "^2.5.1" + "@graphql-codegen/visitor-plugin-common" "2.13.0" + auto-bind "~4.0.0" + tslib "~2.4.0" + +"@graphql-codegen/visitor-plugin-common@2.13.0": + version "2.13.0" + resolved "https://registry.yarnpkg.com/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-2.13.0.tgz#206d91d90a3cc3b1fc0c3a04e8015c22584e461f" + integrity sha512-8lKw4l8W6yKaqrxx025eB6+lRMWaBKedbKjC9UyLhXAnqTi3tgaRKOBo4zvl1+KzE6R41Ruov9UcGD7OjgmBrw== + dependencies: + "@graphql-codegen/plugin-helpers" "^2.6.2" + "@graphql-tools/optimize" "^1.3.0" + "@graphql-tools/relay-operation-optimizer" "^6.5.0" + "@graphql-tools/utils" "^8.8.0" + auto-bind "~4.0.0" + change-case-all "1.0.14" + dependency-graph "^0.11.0" + graphql-tag "^2.11.0" + parse-filepath "^1.0.2" + tslib "~2.4.0" + "@graphql-tools/batch-execute@8.5.7": version "8.5.7" resolved "https://registry.yarnpkg.com/@graphql-tools/batch-execute/-/batch-execute-8.5.7.tgz#83b3081f4da5e9a65a94189b42920ac2c044f6f2" @@ -1921,6 +1943,17 @@ tslib "^2.4.0" value-or-promise "1.0.11" +"@graphql-tools/code-file-loader@^7.2.14": + version "7.3.7" + resolved "https://registry.yarnpkg.com/@graphql-tools/code-file-loader/-/code-file-loader-7.3.7.tgz#28fd764f9e5d0914b24afbb21d0e3630bcac855a" + integrity sha512-mjlqrA09LpDd0NRLKATLDpubUe6Badt4trhUU5Nv0yRhPFTPCEOLxwuDBeihhEXrXFq4yboPshOh607ySeywGw== + dependencies: + "@graphql-tools/graphql-tag-pluck" "7.3.7" + "@graphql-tools/utils" "8.13.0" + globby "^11.0.3" + tslib "^2.4.0" + unixify "^1.0.0" + "@graphql-tools/delegate@9.0.9": version "9.0.9" resolved "https://registry.yarnpkg.com/@graphql-tools/delegate/-/delegate-9.0.9.tgz#8fa28ddd0888bbb35dd8a8313fb1a37155134ce6" @@ -1953,6 +1986,17 @@ tslib "^2.4.0" unixify "^1.0.0" +"@graphql-tools/graphql-tag-pluck@7.3.7": + version "7.3.7" + resolved "https://registry.yarnpkg.com/@graphql-tools/graphql-tag-pluck/-/graphql-tag-pluck-7.3.7.tgz#5f493d5d43c5adb2aa989bc031be6d672ccbdcd6" + integrity sha512-hyAYCJiauwgFYTuqzj6rgCTGJGiZiFhWqCyIJmQIyeFDhnL7MzhgqlBQElAgn1AfFkW7sBc2hMowIXG8rAK3Jg== + dependencies: + "@babel/parser" "^7.16.8" + "@babel/traverse" "^7.16.8" + "@babel/types" "^7.16.8" + "@graphql-tools/utils" "8.13.0" + tslib "^2.4.0" + "@graphql-tools/import@6.7.7": version "6.7.7" resolved "https://registry.yarnpkg.com/@graphql-tools/import/-/import-6.7.7.tgz#f000c1641c52a9130744713713a2ebc81e5bbb29" @@ -1972,7 +2016,7 @@ tslib "^2.4.0" unixify "^1.0.0" -"@graphql-tools/load@^7.5.5": +"@graphql-tools/load@^7.5.10", "@graphql-tools/load@^7.5.5": version "7.8.1" resolved "https://registry.yarnpkg.com/@graphql-tools/load/-/load-7.8.1.tgz#b8fc982e9e1d7b0f2491815cc00955467d2b488c" integrity sha512-ZOvidUgIPMQtvrkNBosYu+a54ASgKoEPKnoj+0xQtdJTCZWsnSyn/pinN83laHTwrGp9KNmFTS5Yc+KvPSCBdg== @@ -1990,7 +2034,23 @@ "@graphql-tools/utils" "8.13.0" tslib "^2.4.0" -"@graphql-tools/schema@9.0.5": +"@graphql-tools/optimize@^1.3.0": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@graphql-tools/optimize/-/optimize-1.3.1.tgz#29407991478dbbedc3e7deb8c44f46acb4e9278b" + integrity sha512-5j5CZSRGWVobt4bgRRg7zhjPiSimk+/zIuColih8E8DxuFOaJ+t0qu7eZS5KXWBkjcd4BPNuhUPpNlEmHPqVRQ== + dependencies: + tslib "^2.4.0" + +"@graphql-tools/relay-operation-optimizer@^6.5.0": + version "6.5.7" + resolved "https://registry.yarnpkg.com/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-6.5.7.tgz#c3c4286d76d565f4e0c01a7667925b2accb50ef7" + integrity sha512-IK0N/em48+UxOPUT11x69X1h9xZPmui7SwI/MqfA55aZOkdmVJmQ4QbUbdFJXh2s5VU6SefOW5T9XCi/A9pslg== + dependencies: + "@ardatan/relay-compiler" "12.0.0" + "@graphql-tools/utils" "8.13.0" + tslib "^2.4.0" + +"@graphql-tools/schema@9.0.5", "@graphql-tools/schema@^9.0.0": version "9.0.5" resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-9.0.5.tgz#5efc3c866a0344e5750372a72551a8bf945b247f" integrity sha512-JPxFumaPQp6pRnrofy7rWVNW57r/1RISNxBCGOudFmjfRE2PlO6b766pxhDnggm/yMR3yzR+mA/JHpOK+ij+EA== @@ -2000,15 +2060,6 @@ tslib "^2.4.0" value-or-promise "1.0.11" -"@graphql-tools/schema@^7.0.0": - version "7.1.5" - resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-7.1.5.tgz#07b24e52b182e736a6b77c829fc48b84d89aa711" - integrity sha512-uyn3HSNSckf4mvQSq0Q07CPaVZMNFCYEVxroApOaw802m9DcZPgf9XVPy/gda5GWj9AhbijfRYVTZQgHnJ4CXA== - dependencies: - "@graphql-tools/utils" "^7.1.2" - tslib "~2.2.0" - value-or-promise "1.0.6" - "@graphql-tools/url-loader@^7.9.7": version "7.16.5" resolved "https://registry.yarnpkg.com/@graphql-tools/url-loader/-/url-loader-7.16.5.tgz#e8ef455c271f195b23f6aec9354ca68ade4b0574" @@ -2029,22 +2080,13 @@ value-or-promise "^1.0.11" ws "^8.3.0" -"@graphql-tools/utils@8.13.0", "@graphql-tools/utils@^8.6.5": +"@graphql-tools/utils@8.13.0", "@graphql-tools/utils@^8.6.5", "@graphql-tools/utils@^8.8.0": version "8.13.0" resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-8.13.0.tgz#24aae25d5e684d9d8bcf99a56ba31ac46b4d0275" integrity sha512-cI4LdXElgVK2jFoq0DpANlvk4Di6kIapHsJI63RCepQ6xZe+mLI1mDrGdesG37s2BaABqV3RdTzeO/sPnTtyxQ== dependencies: tslib "^2.4.0" -"@graphql-tools/utils@^7.0.2", "@graphql-tools/utils@^7.1.2": - version "7.10.0" - resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-7.10.0.tgz#07a4cb5d1bec1ff1dc1d47a935919ee6abd38699" - integrity sha512-d334r6bo9mxdSqZW6zWboEnnOOFRrAPVQJ7LkU8/6grglrbcu6WhwCLzHb90E94JI3TD3ricC3YGbUqIi9Xg0w== - dependencies: - "@ardatan/aggregate-error" "0.0.6" - camel-case "4.1.2" - tslib "~2.2.0" - "@graphql-tools/wrap@9.2.4": version "9.2.4" resolved "https://registry.yarnpkg.com/@graphql-tools/wrap/-/wrap-9.2.4.tgz#ce141970173b3ba31baa095c351211e93f9d3805" @@ -2077,11 +2119,11 @@ integrity sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow== "@hapi/hoek@^9.0.0": - version "9.2.1" - resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.2.1.tgz#9551142a1980503752536b5050fd99f4a7f13b17" - integrity sha512-gfta+H8aziZsm8pZa0vj04KO6biEiisppNgA1kbJvFrrWu9Vm7eaUEy76DIxsuTaWvti5fkJVhllWc6ZTE+Mdw== + version "9.3.0" + resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" + integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== -"@hapi/joi@^15.0.0", "@hapi/joi@^15.1.1": +"@hapi/joi@^15.0.0": version "15.1.1" resolved "https://registry.yarnpkg.com/@hapi/joi/-/joi-15.1.1.tgz#c675b8a71296f02833f8d6d243b34c57b8ce19d7" integrity sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ== @@ -2149,7 +2191,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== @@ -2159,142 +2201,142 @@ resolved "https://registry.yarnpkg.com/@ithaka/focus-trap/-/focus-trap-2.0.1.tgz#d899a94a512c4fb491bfde4cb3484487fb816a8a" integrity sha512-xfMhNF4Wqp/l8Ha1ArXpGfXjjIudPNYZMys+G2QaRigLCPBW38Vp+Rkp08+idiLoXHAp6YwoYli5nZRYkNuRug== -"@jest/console@^27.4.2": - version "27.4.2" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.4.2.tgz#7a95612d38c007ddb528ee446fe5e5e785e685ce" - integrity sha512-xknHThRsPB/To1FUbi6pCe43y58qFC03zfb6R7fDb/FfC7k2R3i1l+izRBJf8DI46KhYGRaF14Eo9A3qbBoixg== +"@jest/console@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" + integrity sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^27.4.2" - jest-util "^27.4.2" + jest-message-util "^27.5.1" + jest-util "^27.5.1" slash "^3.0.0" -"@jest/core@^27.4.5": - version "27.4.5" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.4.5.tgz#cae2dc34259782f4866c6606c3b480cce920ed4c" - integrity sha512-3tm/Pevmi8bDsgvo73nX8p/WPng6KWlCyScW10FPEoN1HU4pwI83tJ3TsFvi1FfzsjwUlMNEPowgb/rPau/LTQ== +"@jest/core@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" + integrity sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ== dependencies: - "@jest/console" "^27.4.2" - "@jest/reporters" "^27.4.5" - "@jest/test-result" "^27.4.2" - "@jest/transform" "^27.4.5" - "@jest/types" "^27.4.2" + "@jest/console" "^27.5.1" + "@jest/reporters" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" emittery "^0.8.1" exit "^0.1.2" - graceful-fs "^4.2.4" - jest-changed-files "^27.4.2" - jest-config "^27.4.5" - jest-haste-map "^27.4.5" - jest-message-util "^27.4.2" - jest-regex-util "^27.4.0" - jest-resolve "^27.4.5" - jest-resolve-dependencies "^27.4.5" - jest-runner "^27.4.5" - jest-runtime "^27.4.5" - jest-snapshot "^27.4.5" - jest-util "^27.4.2" - jest-validate "^27.4.2" - jest-watcher "^27.4.2" + graceful-fs "^4.2.9" + jest-changed-files "^27.5.1" + jest-config "^27.5.1" + jest-haste-map "^27.5.1" + jest-message-util "^27.5.1" + jest-regex-util "^27.5.1" + jest-resolve "^27.5.1" + jest-resolve-dependencies "^27.5.1" + jest-runner "^27.5.1" + jest-runtime "^27.5.1" + jest-snapshot "^27.5.1" + jest-util "^27.5.1" + jest-validate "^27.5.1" + jest-watcher "^27.5.1" micromatch "^4.0.4" rimraf "^3.0.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^27.4.4": - version "27.4.4" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.4.4.tgz#66ebebc79673d84aad29d2bb70a8c51e6c29bb4d" - integrity sha512-q+niMx7cJgt/t/b6dzLOh4W8Ef/8VyKG7hxASK39jakijJzbFBGpptx3RXz13FFV7OishQ9lTbv+dQ5K3EhfDQ== +"@jest/environment@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" + integrity sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA== dependencies: - "@jest/fake-timers" "^27.4.2" - "@jest/types" "^27.4.2" + "@jest/fake-timers" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" - jest-mock "^27.4.2" + jest-mock "^27.5.1" -"@jest/fake-timers@^27.4.2": - version "27.4.2" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.4.2.tgz#d217f86c3ba2027bf29e0b731fd0cb761a72d093" - integrity sha512-f/Xpzn5YQk5adtqBgvw1V6bF8Nx3hY0OIRRpCvWcfPl0EAjdqWPdhH3t/3XpiWZqtjIEHDyMKP9ajpva1l4Zmg== +"@jest/fake-timers@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" + integrity sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" "@sinonjs/fake-timers" "^8.0.1" "@types/node" "*" - jest-message-util "^27.4.2" - jest-mock "^27.4.2" - jest-util "^27.4.2" + jest-message-util "^27.5.1" + jest-mock "^27.5.1" + jest-util "^27.5.1" -"@jest/globals@^27.4.4": - version "27.4.4" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.4.4.tgz#fe501a80c23ea2dab585c42be2a519bb5e38530d" - integrity sha512-bqpqQhW30BOreXM8bA8t8JbOQzsq/WnPTnBl+It3UxAD9J8yxEAaBEylHx1dtBapAr/UBk8GidXbzmqnee8tYQ== +"@jest/globals@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" + integrity sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q== dependencies: - "@jest/environment" "^27.4.4" - "@jest/types" "^27.4.2" - expect "^27.4.2" + "@jest/environment" "^27.5.1" + "@jest/types" "^27.5.1" + expect "^27.5.1" -"@jest/reporters@^27.4.5": - version "27.4.5" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.4.5.tgz#e229acca48d18ea39e805540c1c322b075ae63ad" - integrity sha512-3orsG4vi8zXuBqEoy2LbnC1kuvkg1KQUgqNxmxpQgIOQEPeV0onvZu+qDQnEoX8qTQErtqn/xzcnbpeTuOLSiA== +"@jest/reporters@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" + integrity sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^27.4.2" - "@jest/test-result" "^27.4.2" - "@jest/transform" "^27.4.5" - "@jest/types" "^27.4.2" + "@jest/console" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" glob "^7.1.2" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^4.0.3" + istanbul-lib-instrument "^5.1.0" istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" - istanbul-reports "^3.0.2" - jest-haste-map "^27.4.5" - jest-resolve "^27.4.5" - jest-util "^27.4.2" - jest-worker "^27.4.5" + istanbul-reports "^3.1.3" + jest-haste-map "^27.5.1" + jest-resolve "^27.5.1" + jest-util "^27.5.1" + jest-worker "^27.5.1" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" terminal-link "^2.0.0" v8-to-istanbul "^8.1.0" -"@jest/source-map@^27.4.0": - version "27.4.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.4.0.tgz#2f0385d0d884fb3e2554e8f71f8fa957af9a74b6" - integrity sha512-Ntjx9jzP26Bvhbm93z/AKcPRj/9wrkI88/gK60glXDx1q+IeI0rf7Lw2c89Ch6ofonB0On/iRDreQuQ6te9pgQ== +"@jest/source-map@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" + integrity sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg== dependencies: callsites "^3.0.0" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" source-map "^0.6.0" -"@jest/test-result@^27.4.2": - version "27.4.2" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.4.2.tgz#05fd4a5466ec502f3eae0b39dff2b93ea4d5d9ec" - integrity sha512-kr+bCrra9jfTgxHXHa2UwoQjxvQk3Am6QbpAiJ5x/50LW8llOYrxILkqY0lZRW/hu8FXesnudbql263+EW9iNA== +"@jest/test-result@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" + integrity sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag== dependencies: - "@jest/console" "^27.4.2" - "@jest/types" "^27.4.2" + "@jest/console" "^27.5.1" + "@jest/types" "^27.5.1" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^27.4.5": - version "27.4.5" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.4.5.tgz#1d7e026844d343b60d2ca7fd82c579a17b445d7d" - integrity sha512-n5woIn/1v+FT+9hniymHPARA9upYUmfi5Pw9ewVwXCDlK4F5/Gkees9v8vdjGdAIJ2MPHLHodiajLpZZanWzEQ== +"@jest/test-sequencer@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" + integrity sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ== dependencies: - "@jest/test-result" "^27.4.2" - graceful-fs "^4.2.4" - jest-haste-map "^27.4.5" - jest-runtime "^27.4.5" + "@jest/test-result" "^27.5.1" + graceful-fs "^4.2.9" + jest-haste-map "^27.5.1" + jest-runtime "^27.5.1" "@jest/transform@^26.6.2": version "26.6.2" @@ -2317,348 +2359,56 @@ source-map "^0.6.1" write-file-atomic "^3.0.0" -"@jest/transform@^27.4.5": - version "27.4.5" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.4.5.tgz#3dfe2e3680cd4aa27356172bf25617ab5b94f195" - integrity sha512-PuMet2UlZtlGzwc6L+aZmR3I7CEBpqadO03pU40l2RNY2fFJ191b9/ITB44LNOhVtsyykx0OZvj0PCyuLm7Eew== +"@jest/transform@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" + integrity sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^27.4.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 "^27.4.5" - jest-regex-util "^27.4.0" - jest-util "^27.4.2" - micromatch "^4.0.4" - pirates "^4.0.1" - slash "^3.0.0" - source-map "^0.6.1" - write-file-atomic "^3.0.0" - -"@jest/types@^25.5.0": - version "25.5.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-25.5.0.tgz#4d6a4793f7b9599fc3680877b856a97dbccf2a9d" - integrity sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^1.1.1" - "@types/yargs" "^15.0.0" - chalk "^3.0.0" - -"@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.4.2": - version "27.4.2" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.4.2.tgz#96536ebd34da6392c2b7c7737d693885b5dd44a5" - integrity sha512-j35yw0PMTPpZsUoOBiuHzr1zTYoad1cVIE0ajEjcrJONxxrko/IRGKkXx3os0Nsi4Hu3+5VmDbVfq5WhG/pWAg== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^16.0.0" + "@jest/types" "^27.5.1" + babel-plugin-istanbul "^6.1.1" chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.9" + jest-haste-map "^27.5.1" + jest-regex-util "^27.5.1" + jest-util "^27.5.1" + micromatch "^4.0.4" + pirates "^4.0.4" + slash "^3.0.0" + source-map "^0.6.1" + write-file-atomic "^3.0.0" -"@jimp/bmp@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/bmp/-/bmp-0.14.0.tgz#6df246026554f276f7b354047c6fff9f5b2b5182" - integrity sha512-5RkX6tSS7K3K3xNEb2ygPuvyL9whjanhoaB/WmmXlJS6ub4DjTqrapu8j4qnIWmO4YYtFeTbDTXV6v9P1yMA5A== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - bmp-js "^0.1.0" - -"@jimp/core@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/core/-/core-0.14.0.tgz#870c9ca25b40be353ebda1d2abb48723d9010055" - integrity sha512-S62FcKdtLtj3yWsGfJRdFXSutjvHg7aQNiFogMbwq19RP4XJWqS2nOphu7ScB8KrSlyy5nPF2hkWNhLRLyD82w== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - any-base "^1.1.0" - buffer "^5.2.0" - exif-parser "^0.1.12" - file-type "^9.0.0" - load-bmfont "^1.3.1" - mkdirp "^0.5.1" - phin "^2.9.1" - pixelmatch "^4.0.2" - tinycolor2 "^1.4.1" - -"@jimp/custom@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/custom/-/custom-0.14.0.tgz#1dbbf0094df7403f4e03bc984ed92e7458842f74" - integrity sha512-kQJMeH87+kWJdVw8F9GQhtsageqqxrvzg7yyOw3Tx/s7v5RToe8RnKyMM+kVtBJtNAG+Xyv/z01uYQ2jiZ3GwA== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/core" "^0.14.0" - -"@jimp/gif@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/gif/-/gif-0.14.0.tgz#db159f57c3cfd1566bbe8b124958791998614960" - integrity sha512-DHjoOSfCaCz72+oGGEh8qH0zE6pUBaBxPxxmpYJjkNyDZP7RkbBkZJScIYeQ7BmJxmGN4/dZn+MxamoQlr+UYg== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - gifwrap "^0.9.2" - omggif "^1.0.9" - -"@jimp/jpeg@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/jpeg/-/jpeg-0.14.0.tgz#8a687a6a653bbbae38c522edef8f84bb418d9461" - integrity sha512-561neGbr+87S/YVQYnZSTyjWTHBm9F6F1obYHiyU3wVmF+1CLbxY3FQzt4YolwyQHIBv36Bo0PY2KkkU8BEeeQ== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - jpeg-js "^0.4.0" - -"@jimp/plugin-blit@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-blit/-/plugin-blit-0.14.0.tgz#5eb374be1201313b2113899fb842232d8fcfd345" - integrity sha512-YoYOrnVHeX3InfgbJawAU601iTZMwEBZkyqcP1V/S33Qnz9uzH1Uj1NtC6fNgWzvX6I4XbCWwtr4RrGFb5CFrw== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-blur@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-blur/-/plugin-blur-0.14.0.tgz#fe07e4932d5a2f5d8c9831e245561553224bfc60" - integrity sha512-9WhZcofLrT0hgI7t0chf7iBQZib//0gJh9WcQMUt5+Q1Bk04dWs8vTgLNj61GBqZXgHSPzE4OpCrrLDBG8zlhQ== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-circle@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-circle/-/plugin-circle-0.14.0.tgz#82c0e904a34e90fa672fb9c286bc892e92088ddf" - integrity sha512-o5L+wf6QA44tvTum5HeLyLSc5eVfIUd5ZDVi5iRfO4o6GT/zux9AxuTSkKwnjhsG8bn1dDmywAOQGAx7BjrQVA== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-color@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-color/-/plugin-color-0.14.0.tgz#772bd2d80a88bc66ea1331d010207870f169a74b" - integrity sha512-JJz512SAILYV0M5LzBb9sbOm/XEj2fGElMiHAxb7aLI6jx+n0agxtHpfpV/AePTLm1vzzDxx6AJxXbKv355hBQ== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - tinycolor2 "^1.4.1" - -"@jimp/plugin-contain@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-contain/-/plugin-contain-0.14.0.tgz#c68115420d182e696f81bbe76fb5e704909b2b6a" - integrity sha512-RX2q233lGyaxiMY6kAgnm9ScmEkNSof0hdlaJAVDS1OgXphGAYAeSIAwzESZN4x3ORaWvkFefeVH9O9/698Evg== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-cover@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-cover/-/plugin-cover-0.14.0.tgz#4755322589c5885e44e14e31b86b542e907297ce" - integrity sha512-0P/5XhzWES4uMdvbi3beUgfvhn4YuQ/ny8ijs5kkYIw6K8mHcl820HahuGpwWMx56DJLHRl1hFhJwo9CeTRJtQ== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-crop@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-crop/-/plugin-crop-0.14.0.tgz#4cbd856ca84ffc37230fad2534906f2f75aa3057" - integrity sha512-Ojtih+XIe6/XSGtpWtbAXBozhCdsDMmy+THUJAGu2x7ZgKrMS0JotN+vN2YC3nwDpYkM+yOJImQeptSfZb2Sug== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-displace@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-displace/-/plugin-displace-0.14.0.tgz#b0e6a57d00cb1f893f541413fe9d737d23c3b70c" - integrity sha512-c75uQUzMgrHa8vegkgUvgRL/PRvD7paFbFJvzW0Ugs8Wl+CDMGIPYQ3j7IVaQkIS+cAxv+NJ3TIRBQyBrfVEOg== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-dither@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-dither/-/plugin-dither-0.14.0.tgz#9185ec4c38e02edc9e5831f5d709f6ba891e1b93" - integrity sha512-g8SJqFLyYexXQQsoh4dc1VP87TwyOgeTElBcxSXX2LaaMZezypmxQfLTzOFzZoK8m39NuaoH21Ou1Ftsq7LzVQ== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-fisheye@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-fisheye/-/plugin-fisheye-0.14.0.tgz#9f26346cf2fbc660cc2008cd7fd30a83b5029e78" - integrity sha512-BFfUZ64EikCaABhCA6mR3bsltWhPpS321jpeIQfJyrILdpFsZ/OccNwCgpW1XlbldDHIoNtXTDGn3E+vCE7vDg== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-flip@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-flip/-/plugin-flip-0.14.0.tgz#7966d6aa3b5fe1aa4d2d561ff12b8ef5ccb9b071" - integrity sha512-WtL1hj6ryqHhApih+9qZQYA6Ye8a4HAmdTzLbYdTMrrrSUgIzFdiZsD0WeDHpgS/+QMsWwF+NFmTZmxNWqKfXw== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-gaussian@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-gaussian/-/plugin-gaussian-0.14.0.tgz#452bc1971a4467ad9b984aa67f4c200bf941bb65" - integrity sha512-uaLwQ0XAQoydDlF9tlfc7iD9drYPriFe+jgYnWm8fbw5cN+eOIcnneEX9XCOOzwgLPkNCxGox6Kxjn8zY6GxtQ== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-invert@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-invert/-/plugin-invert-0.14.0.tgz#cd31a555860e9f821394936d15af161c09c42921" - integrity sha512-UaQW9X9vx8orQXYSjT5VcITkJPwDaHwrBbxxPoDG+F/Zgv4oV9fP+udDD6qmkgI9taU+44Fy+zm/J/gGcMWrdg== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-mask@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-mask/-/plugin-mask-0.14.0.tgz#52619643ac6222f85e6b27dee33c771ca3a6a4c9" - integrity sha512-tdiGM69OBaKtSPfYSQeflzFhEpoRZ+BvKfDEoivyTjauynbjpRiwB1CaiS8En1INTDwzLXTT0Be9SpI3LkJoEA== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-normalize@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-normalize/-/plugin-normalize-0.14.0.tgz#bf39e356b6d473f582ce95633ad49c9cdb82492b" - integrity sha512-AfY8sqlsbbdVwFGcyIPy5JH/7fnBzlmuweb+Qtx2vn29okq6+HelLjw2b+VT2btgGUmWWHGEHd86oRGSoWGyEQ== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-print@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-print/-/plugin-print-0.14.0.tgz#1c43c2a92a7adc05b464863882cb89ce486d63e6" - integrity sha512-MwP3sH+VS5AhhSTXk7pui+tEJFsxnTKFY3TraFJb8WFbA2Vo2qsRCZseEGwpTLhENB7p/JSsLvWoSSbpmxhFAQ== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - load-bmfont "^1.4.0" - -"@jimp/plugin-resize@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-resize/-/plugin-resize-0.14.0.tgz#ef7fc6c2e45f8bcab62456baf8fd3bc415b02b64" - integrity sha512-qFeMOyXE/Bk6QXN0GQo89+CB2dQcXqoxUcDb2Ah8wdYlKqpi53skABkgVy5pW3EpiprDnzNDboMltdvDslNgLQ== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-rotate@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-rotate/-/plugin-rotate-0.14.0.tgz#3632bc159bf1c3b9ec9f459d9c05d02a11781ee7" - integrity sha512-aGaicts44bvpTcq5Dtf93/8TZFu5pMo/61lWWnYmwJJU1RqtQlxbCLEQpMyRhKDNSfPbuP8nyGmaqXlM/82J0Q== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-scale@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-scale/-/plugin-scale-0.14.0.tgz#d30f0cd1365b8e68f43fa423300ae7f124e9bf10" - integrity sha512-ZcJk0hxY5ZKZDDwflqQNHEGRblgaR+piePZm7dPwPUOSeYEH31P0AwZ1ziceR74zd8N80M0TMft+e3Td6KGBHw== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-shadow@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-shadow/-/plugin-shadow-0.14.0.tgz#471fdb9f109ff2d9e20d533d45e1e18e0b48c749" - integrity sha512-p2igcEr/iGrLiTu0YePNHyby0WYAXM14c5cECZIVnq/UTOOIQ7xIcWZJ1lRbAEPxVVXPN1UibhZAbr3HAb5BjQ== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugin-threshold@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugin-threshold/-/plugin-threshold-0.14.0.tgz#ebd72721c7d1d518c5bb6e494e55d97ac3351d3b" - integrity sha512-N4BlDgm/FoOMV/DQM2rSpzsgqAzkP0DXkWZoqaQrlRxQBo4zizQLzhEL00T/YCCMKnddzgEhnByaocgaaa0fKw== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - -"@jimp/plugins@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/plugins/-/plugins-0.14.0.tgz#41dba85f15ab8dadb4162100eb54e5f27b93ee2c" - integrity sha512-vDO3XT/YQlFlFLq5TqNjQkISqjBHT8VMhpWhAfJVwuXIpilxz5Glu4IDLK6jp4IjPR6Yg2WO8TmRY/HI8vLrOw== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/plugin-blit" "^0.14.0" - "@jimp/plugin-blur" "^0.14.0" - "@jimp/plugin-circle" "^0.14.0" - "@jimp/plugin-color" "^0.14.0" - "@jimp/plugin-contain" "^0.14.0" - "@jimp/plugin-cover" "^0.14.0" - "@jimp/plugin-crop" "^0.14.0" - "@jimp/plugin-displace" "^0.14.0" - "@jimp/plugin-dither" "^0.14.0" - "@jimp/plugin-fisheye" "^0.14.0" - "@jimp/plugin-flip" "^0.14.0" - "@jimp/plugin-gaussian" "^0.14.0" - "@jimp/plugin-invert" "^0.14.0" - "@jimp/plugin-mask" "^0.14.0" - "@jimp/plugin-normalize" "^0.14.0" - "@jimp/plugin-print" "^0.14.0" - "@jimp/plugin-resize" "^0.14.0" - "@jimp/plugin-rotate" "^0.14.0" - "@jimp/plugin-scale" "^0.14.0" - "@jimp/plugin-shadow" "^0.14.0" - "@jimp/plugin-threshold" "^0.14.0" - timm "^1.6.1" - -"@jimp/png@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/png/-/png-0.14.0.tgz#0f2dddb5125c0795ca7e67c771204c5437fcda4b" - integrity sha512-0RV/mEIDOrPCcNfXSPmPBqqSZYwGADNRVUTyMt47RuZh7sugbYdv/uvKmQSiqRdR0L1sfbCBMWUEa5G/8MSbdA== +"@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: - "@babel/runtime" "^7.7.2" - "@jimp/utils" "^0.14.0" - pngjs "^3.3.3" + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" -"@jimp/tiff@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/tiff/-/tiff-0.14.0.tgz#a5b25bbe7c43fc3b07bad4e2ab90e0e164c1967f" - integrity sha512-zBYDTlutc7j88G/7FBCn3kmQwWr0rmm1e0FKB4C3uJ5oYfT8645lftUsvosKVUEfkdmOaMAnhrf4ekaHcb5gQw== +"@jest/types@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" + integrity sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw== dependencies: - "@babel/runtime" "^7.7.2" - utif "^2.0.1" + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^16.0.0" + chalk "^4.0.0" -"@jimp/types@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/types/-/types-0.14.0.tgz#ef681ff702883c5f105b5e4e30d49abf39ee9e34" - integrity sha512-hx3cXAW1KZm+b+XCrY3LXtdWy2U+hNtq0rPyJ7NuXCjU7lZR3vIkpz1DLJ3yDdS70hTi5QDXY3Cd9kd6DtloHQ== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/bmp" "^0.14.0" - "@jimp/gif" "^0.14.0" - "@jimp/jpeg" "^0.14.0" - "@jimp/png" "^0.14.0" - "@jimp/tiff" "^0.14.0" - timm "^1.6.1" - -"@jimp/utils@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@jimp/utils/-/utils-0.14.0.tgz#296254e63118554c62c31c19ac6b8c4bfe6490e5" - integrity sha512-MY5KFYUru0y74IsgM/9asDwb3ERxWxXEu3CRCZEvE7DtT86y1bR1XgtlSliMrptjz4qbivNGMQSvUBpEFJDp1A== +"@jridgewell/gen-mapping@^0.1.0": + version "0.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" + integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== dependencies: - "@babel/runtime" "^7.7.2" - regenerator-runtime "^0.13.3" + "@jridgewell/set-array" "^1.0.0" + "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": version "0.3.2" @@ -2674,7 +2424,7 @@ resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== -"@jridgewell/set-array@^1.0.1": +"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": version "1.1.2" resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== @@ -2700,7 +2450,7 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.14": +"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.13", "@jridgewell/trace-mapping@^0.3.14", "@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== @@ -2708,26 +2458,90 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" -"@jridgewell/trace-mapping@^0.3.9": - version "0.3.14" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz#b231a081d8f66796e475ad588a1ef473112701ed" - integrity sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ== +"@lezer/common@^0.15.0", "@lezer/common@^0.15.7": + version "0.15.12" + resolved "https://registry.yarnpkg.com/@lezer/common/-/common-0.15.12.tgz#2f21aec551dd5fd7d24eb069f90f54d5bc6ee5e9" + integrity sha512-edfwCxNLnzq5pBA/yaIhwJ3U3Kz8VAUOTRg0hhxaizaI1N+qxV7EXDv/kLCkLeq2RzSFvxexlaj5Mzfn2kY0Ig== + +"@lezer/lr@^0.15.4": + version "0.15.8" + resolved "https://registry.yarnpkg.com/@lezer/lr/-/lr-0.15.8.tgz#1564a911e62b0a0f75ca63794a6aa8c5dc63db21" + integrity sha512-bM6oE6VQZ6hIFxDNKk8bKPa14hqFrV07J/vHGOeiAbJReIaQXmkVb6xQu4MR+JBTLa5arGRyAAjJe1qaQt3Uvg== dependencies: - "@jridgewell/resolve-uri" "^3.0.3" - "@jridgewell/sourcemap-codec" "^1.4.10" + "@lezer/common" "^0.15.0" "@lit-labs/scoped-registry-mixin@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@lit-labs/scoped-registry-mixin/-/scoped-registry-mixin-1.0.0.tgz#00d640105618fcbc6fd654f2956b5faa44452124" - integrity sha512-hSk4fnkpbLmLsFLgIetJxmZVAjnn0u/82D6NUzi9cbHddUlTbjeLcQed0ABaT7n2C3w6RDacel3XM2Ib3nTegQ== + version "1.0.1" + resolved "https://registry.yarnpkg.com/@lit-labs/scoped-registry-mixin/-/scoped-registry-mixin-1.0.1.tgz#0ad266c029f1eb385711d2cd26252baadf145a5d" + integrity sha512-7aKnBKb5izcTjICO4VdeQLRYpZoB8FepJjG7TmE2oe0cU8cb4MUA4NFCjze+vbE+wP/55xv4dAMFOuJN9EG26w== dependencies: "@lit/reactive-element" "^1.0.0" lit "^2.0.0" -"@lit/reactive-element@^1.0.0": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@lit/reactive-element/-/reactive-element-1.0.2.tgz#daa7a7c7a6c63d735f0c9634de6b7dbd70a702ab" - integrity sha512-oz3d3MKjQ2tXynQgyaQaMpGTDNyNDeBdo6dXf1AbjTwhA1IRINHmA7kSaVYv9ttKweNkEoNqp9DqteDdgWzPEg== +"@lit/reactive-element@^1.0.0", "@lit/reactive-element@^1.3.0", "@lit/reactive-element@^1.4.0": + version "1.4.1" + resolved "https://registry.yarnpkg.com/@lit/reactive-element/-/reactive-element-1.4.1.tgz#3f587eec5708692135bc9e94cf396130604979f3" + integrity sha512-qDv4851VFSaBWzpS02cXHclo40jsbAjRXnebNXpm0uVg32kCneZPo9RYVQtrTNICtZ+1wAYHu1ZtxWSWMbKrBw== + +"@lmdb/lmdb-darwin-arm64@2.5.2": + version "2.5.2" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-2.5.2.tgz#bc66fa43286b5c082e8fee0eacc17995806b6fbe" + integrity sha512-+F8ioQIUN68B4UFiIBYu0QQvgb9FmlKw2ctQMSBfW2QBrZIxz9vD9jCGqTCPqZBRbPHAS/vG1zSXnKqnS2ch/A== + +"@lmdb/lmdb-darwin-arm64@2.5.3": + version "2.5.3" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-2.5.3.tgz#c423b068165df18da57a81dce5c95f98c6ab9265" + integrity sha512-RXwGZ/0eCqtCY8FLTM/koR60w+MXyvBUpToXiIyjOcBnC81tAlTUHrRUavCEWPI9zc9VgvpK3+cbumPyR8BSuA== + +"@lmdb/lmdb-darwin-x64@2.5.2": + version "2.5.2" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-2.5.2.tgz#89d8390041bce6bab24a82a20392be22faf54ffc" + integrity sha512-KvPH56KRLLx4KSfKBx0m1r7GGGUMXm0jrKmNE7plbHlesZMuPJICtn07HYgQhj1LNsK7Yqwuvnqh1QxhJnF1EA== + +"@lmdb/lmdb-darwin-x64@2.5.3": + version "2.5.3" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-2.5.3.tgz#dde76e65595b34a17289a63f770a8aee13a85a9b" + integrity sha512-337dNzh5yCdNCTk8kPfoU7jR3otibSlPDGW0vKZT97rKnQMb9tNdto3RtWoGPsQ8hKmlRZpojOJtmwjncq1MoA== + +"@lmdb/lmdb-linux-arm64@2.5.2": + version "2.5.2" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-2.5.2.tgz#14fe4c96c2bb1285f93797f45915fa35ee047268" + integrity sha512-aLl89VHL/wjhievEOlPocoefUyWdvzVrcQ/MHQYZm2JfV1jUsrbr/ZfkPPUFvZBf+VSE+Q0clWs9l29PCX1hTQ== + +"@lmdb/lmdb-linux-arm64@2.5.3": + version "2.5.3" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-2.5.3.tgz#d98f32383d37a058e6c51b7ffd665c2c2f91c285" + integrity sha512-VJw60Mdgb4n+L0fO1PqfB0C7TyEQolJAC8qpqvG3JoQwvyOv6LH7Ib/WE3wxEW9nuHmVz9jkK7lk5HfWWgoO1Q== + +"@lmdb/lmdb-linux-arm@2.5.2": + version "2.5.2" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-2.5.2.tgz#05bde4573ab10cf21827339fe687148f2590cfa1" + integrity sha512-5kQAP21hAkfW5Bl+e0P57dV4dGYnkNIpR7f/GAh6QHlgXx+vp/teVj4PGRZaKAvt0GX6++N6hF8NnGElLDuIDw== + +"@lmdb/lmdb-linux-arm@2.5.3": + version "2.5.3" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-2.5.3.tgz#6251143d7b470e126b0b0fc17ae64c6680e268b2" + integrity sha512-mU2HFJDGwECkoD9dHQEfeTG5mp8hNS2BCfwoiOpVPMeapjYpQz9Uw3FkUjRZ4dGHWKbin40oWHuL0bk2bCx+Sg== + +"@lmdb/lmdb-linux-x64@2.5.2": + version "2.5.2" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-2.5.2.tgz#d2f85afd857d2c33d2caa5b057944574edafcfee" + integrity sha512-xUdUfwDJLGjOUPH3BuPBt0NlIrR7f/QHKgu3GZIXswMMIihAekj2i97oI0iWG5Bok/b+OBjHPfa8IU9velnP/Q== + +"@lmdb/lmdb-linux-x64@2.5.3": + version "2.5.3" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-2.5.3.tgz#ef3a9793391ab4a68379e753943c9055fd0f5bf3" + integrity sha512-qaReO5aV8griBDsBr8uBF/faO3ieGjY1RY4p8JvTL6Mu1ylLrTVvOONqKFlNaCwrmUjWw5jnf7VafxDAeQHTow== + +"@lmdb/lmdb-win32-x64@2.5.2": + version "2.5.2" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-2.5.2.tgz#28f643fbc0bec30b07fbe95b137879b6b4d1c9c5" + integrity sha512-zrBczSbXKxEyK2ijtbRdICDygRqWSRPpZMN5dD1T8VMEW5RIhIbwFWw2phDRXuBQdVDpSjalCIUMWMV2h3JaZA== + +"@lmdb/lmdb-win32-x64@2.5.3": + version "2.5.3" + resolved "https://registry.yarnpkg.com/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-2.5.3.tgz#c72e8b6faae31d925d23a6db0379cc3fe0216fdd" + integrity sha512-cK+Elf3RjEzrm3SerAhrFWL5oQAsZSJ/LmjL1joIpTfEP1etJJ9CTRvdaV6XLYAxaEkfdhk/9hOvHLbR9yIhCA== "@manypkg/find-root@^1.1.0": version "1.1.0" @@ -2786,10 +2600,14 @@ resolved "https://registry.yarnpkg.com/@mdx-js/util/-/util-1.6.22.tgz#219dfd89ae5b97a8801f015323ffa4b62f45718b" integrity sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA== -"@mdx-js/util@^2.0.0-next.8": - version "2.0.0-next.8" - resolved "https://registry.yarnpkg.com/@mdx-js/util/-/util-2.0.0-next.8.tgz#66ecc27b78e07a3ea2eb1a8fc5a99dfa0ba96690" - integrity sha512-T0BcXmNzEunFkuxrO8BFw44htvTPuAoKbLvTG41otyZBDV1Rs+JMddcUuaP5vXpTWtgD3grhcrPEwyx88RUumQ== +"@mischnic/json-sourcemap@^0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@mischnic/json-sourcemap/-/json-sourcemap-0.1.0.tgz#38af657be4108140a548638267d02a2ea3336507" + integrity sha512-dQb3QnfNqmQNYA4nFSN/uLaByIic58gOXq4Y4XqLOWmOrw73KmJPt/HLyG0wvn1bnR6mBKs/Uwvkh+Hns1T0XA== + dependencies: + "@lezer/common" "^0.15.7" + "@lezer/lr" "^0.15.4" + json5 "^2.2.1" "@mrmlnc/readdir-enhanced@^2.2.1": version "2.2.1" @@ -2799,35 +2617,42 @@ call-me-maybe "^1.0.1" glob-to-regexp "^0.3.0" -"@msgpackr-extract/msgpackr-extract-darwin-arm64@2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-2.0.2.tgz#01e3669b8b2dc01f6353f2c87e1ec94faf52c587" - integrity sha512-FMX5i7a+ojIguHpWbzh5MCsCouJkwf4z4ejdUY/fsgB9Vkdak4ZnoIEskOyOUMMB4lctiZFGszFQJXUeFL8tRg== +"@msgpackr-extract/msgpackr-extract-darwin-arm64@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-2.1.2.tgz#9571b87be3a3f2c46de05585470bc4f3af2f6f00" + integrity sha512-TyVLn3S/+ikMDsh0gbKv2YydKClN8HaJDDpONlaZR+LVJmsxLFUgA+O7zu59h9+f9gX1aj/ahw9wqa6rosmrYQ== -"@msgpackr-extract/msgpackr-extract-darwin-x64@2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-2.0.2.tgz#5ca32f16e6f1b7854001a1a2345b61d4e26a0931" - integrity sha512-DznYtF3lHuZDSRaIOYeif4JgO0NtO2Xf8DsngAugMx/bUdTFbg86jDTmkVJBNmV+cxszz6OjGvinnS8AbJ342g== +"@msgpackr-extract/msgpackr-extract-darwin-x64@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-2.1.2.tgz#bfbc6936ede2955218f5621a675679a5fe8e6f4c" + integrity sha512-YPXtcVkhmVNoMGlqp81ZHW4dMxK09msWgnxtsDpSiZwTzUBG2N+No2bsr7WMtBKCVJMSD6mbAl7YhKUqkp/Few== -"@msgpackr-extract/msgpackr-extract-linux-arm64@2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-2.0.2.tgz#ff629f94379981bf476dffb1439a7c1d3dba2d72" - integrity sha512-b0jMEo566YdM2K+BurSed7bswjo3a6bcdw5ETqoIfSuxKuRLPfAiOjVbZyZBgx3J/TAM/QrvEQ/VN89A0ZAxSg== +"@msgpackr-extract/msgpackr-extract-linux-arm64@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-2.1.2.tgz#22555e28382af2922e7450634c8a2f240bb9eb82" + integrity sha512-vHZ2JiOWF2+DN9lzltGbhtQNzDo8fKFGrf37UJrgqxU0yvtERrzUugnfnX1wmVfFhSsF8OxrfqiNOUc5hko1Zg== -"@msgpackr-extract/msgpackr-extract-linux-arm@2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-2.0.2.tgz#5f6fd30d266c4a90cf989049c7f2e50e5d4fcd4c" - integrity sha512-Gy9+c3Wj+rUlD3YvCZTi92gs+cRX7ZQogtwq0IhRenloTTlsbpezNgk6OCkt59V4ATEWSic9rbU92H/l7XsRvA== +"@msgpackr-extract/msgpackr-extract-linux-arm@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-2.1.2.tgz#ffb6ae1beea7ac572b6be6bf2a8e8162ebdd8be7" + integrity sha512-42R4MAFeIeNn+L98qwxAt360bwzX2Kf0ZQkBBucJ2Ircza3asoY4CDbgiu9VWklq8gWJVSJSJBwDI+c/THiWkA== -"@msgpackr-extract/msgpackr-extract-linux-x64@2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-2.0.2.tgz#167faa553b9dbffac8b03bf27de9b6f846f0e1bc" - integrity sha512-zrBHaePwcv4cQXxzYgNj0+A8I1uVN97E7/3LmkRocYZ+rMwUsnPpp4RuTAHSRoKlTQV3nSdCQW4Qdt4MXw/iHw== +"@msgpackr-extract/msgpackr-extract-linux-x64@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-2.1.2.tgz#7caf62eebbfb1345de40f75e89666b3d4194755f" + integrity sha512-RjRoRxg7Q3kPAdUSC5EUUPlwfMkIVhmaRTIe+cqHbKrGZ4M6TyCA/b5qMaukQ/1CHWrqYY2FbKOAU8Hg0pQFzg== -"@msgpackr-extract/msgpackr-extract-win32-x64@2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-2.0.2.tgz#baea7764b1adf201ce4a792fe971fd7211dad2e4" - integrity sha512-fpnI00dt+yO1cKx9qBXelKhPBdEgvc8ZPav1+0r09j0woYQU2N79w/jcGawSY5UGlgQ3vjaJsFHnGbGvvqdLzg== +"@msgpackr-extract/msgpackr-extract-win32-x64@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-2.1.2.tgz#f2d8b9ddd8d191205ed26ce54aba3dfc5ae3e7c9" + integrity sha512-rIZVR48zA8hGkHIK7ED6+ZiXsjRCcAVBJbm8o89OKAMTmEAQ2QvoOxoiu3w2isAaWwzgtQIOFIqHwvZDyLKCvw== + +"@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1": + version "5.1.1-v1" + resolved "https://registry.yarnpkg.com/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz#dbf733a965ca47b1973177dc0bb6c889edcfb129" + integrity sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg== + dependencies: + eslint-scope "5.1.1" "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -2864,54 +2689,355 @@ "@types/chai" "^4.1.7" "@open-wc/dedupe-mixin@^1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@open-wc/dedupe-mixin/-/dedupe-mixin-1.3.0.tgz#0df5d438285fc3482838786ee81895318f0ff778" - integrity sha512-UfdK1MPnR6T7f3svzzYBfu3qBkkZ/KsPhcpc3JYhsUY4hbpwNF9wEQtD4Z+/mRqMTJrKg++YSxIxE0FBhY3RIw== + version "1.3.1" + resolved "https://registry.yarnpkg.com/@open-wc/dedupe-mixin/-/dedupe-mixin-1.3.1.tgz#5c1a1eeb0386b344290ebe3f1fca0c4869933dbf" + integrity sha512-ukowSvzpZQDUH0Y3znJTsY88HkiGk3Khc0WGpIPhap1xlerieYi27QBg6wx/nTurpWfU6XXXsx9ocxDYCdtw0Q== -"@open-wc/scoped-elements@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@open-wc/scoped-elements/-/scoped-elements-2.0.1.tgz#6b1c3535f809bd90710574db80093a81e3a1fc2d" - integrity sha512-JS6ozxUFwFX3+Er91v9yQzNIaFn7OnE0iESKTbFvkkKdNwvAPtp1fpckBKIvWk8Ae9ZcoI9DYZuT2DDbMPcadA== +"@open-wc/scoped-elements@^2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@open-wc/scoped-elements/-/scoped-elements-2.1.3.tgz#c4f06fa16091c6ebf2a69b3f40afc03821f42535" + integrity sha512-WoQD5T8Me9obek+iyjgrAMw9wxZZg4ytIteIN1i9LXW2KohezUp0LTOlWgBajWJo0/bpjUKiODX73cMYL2i3hw== dependencies: "@lit/reactive-element" "^1.0.0" "@open-wc/dedupe-mixin" "^1.3.0" - "@webcomponents/scoped-custom-element-registry" "^0.0.3" "@open-wc/semantic-dom-diff@^0.13.16": version "0.13.21" resolved "https://registry.yarnpkg.com/@open-wc/semantic-dom-diff/-/semantic-dom-diff-0.13.21.tgz#718b9ec5f9a98935fc775e577ad094ae8d8b7dea" integrity sha512-BONpjHcGX2zFa9mfnwBCLEmlDsOHzT+j6Qt1yfK3MzFXFtAykfzFjAgaxPetu0YbBlCfXuMlfxI4vlRGCGMvFg== -"@open-wc/semantic-dom-diff@^0.19.5": - version "0.19.5" - resolved "https://registry.yarnpkg.com/@open-wc/semantic-dom-diff/-/semantic-dom-diff-0.19.5.tgz#8d3d7f69140b9ba477a4adf8099c79e0efe18955" - integrity sha512-Wi0Fuj3dzqlWClU0y+J4k/nqTcH0uwgOWxZXPyeyG3DdvuyyjgiT4L4I/s6iVShWQvvEsyXnj7yVvixAo3CZvg== +"@open-wc/semantic-dom-diff@^0.19.7": + version "0.19.7" + resolved "https://registry.yarnpkg.com/@open-wc/semantic-dom-diff/-/semantic-dom-diff-0.19.7.tgz#92361f0d2dcb54a8d5cf11d5ea40b8e7ffa58eb4" + integrity sha512-ahwHb7arQXXnkIGCrOsM895FJQrU47VWZryCsSSzl5nB3tJKcJ8yjzQ3D/yqZn6v8atqOz61vaY05aNsqoz3oA== dependencies: - "@types/chai" "^4.2.11" - "@web/test-runner-commands" "^0.5.7" + "@types/chai" "^4.3.1" + "@web/test-runner-commands" "^0.6.1" -"@open-wc/testing-helpers@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@open-wc/testing-helpers/-/testing-helpers-2.0.2.tgz#ca1833bf76036d9bdc03547415e79b6d502c78f6" - integrity sha512-wJlvDmWo+fIbgykRP21YSP9I9Pf/fo2+dZGaWG77Hw0sIuyB+7sNUDJDkL6kMkyyRecPV6dVRmbLt6HuOwvZ1w== +"@open-wc/testing-helpers@^2.1.2": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@open-wc/testing-helpers/-/testing-helpers-2.1.3.tgz#85a133ac8637ed1d880d523b07650788eab4a128" + integrity sha512-hQujGaWncmWLx/974jq5yf2jydBNNTwnkISw2wLGiYgX34+3R6/ns301Oi9S3Il96Kzd8B7avdExp/gDgqcF5w== dependencies: - "@open-wc/scoped-elements" "^2.0.1" + "@open-wc/scoped-elements" "^2.1.3" lit "^2.0.0" + lit-html "^2.0.0" "@open-wc/testing@^3.0.1": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@open-wc/testing/-/testing-3.0.3.tgz#9d122933ef69e06cc9cb3b0d4e425b90117bb9e5" - integrity sha512-xJYckO8X9yfWc+ltPlDZjHGTh4ldNmnYsnxNriuUUEEhV5ASdsc+5WEsIS2+9m4lQELj89rNQ7YvhYhawDorhg== + version "3.1.6" + resolved "https://registry.yarnpkg.com/@open-wc/testing/-/testing-3.1.6.tgz#89f71710e5530d74f0c478b0a9239d68dcdb9f5e" + integrity sha512-MIf9cBtac4/UBE5a+R5cXiRhOGfzetsV+ZPFc188AfkPDPbmffHqjrRoCyk4B/qS6fLEulSBMLSaQ+6ze971gQ== dependencies: - "@esm-bundle/chai" "^4.3.4" + "@esm-bundle/chai" "^4.3.4-fix.0" "@open-wc/chai-dom-equals" "^0.12.36" - "@open-wc/semantic-dom-diff" "^0.19.5" - "@open-wc/testing-helpers" "^2.0.2" + "@open-wc/semantic-dom-diff" "^0.19.7" + "@open-wc/testing-helpers" "^2.1.2" "@types/chai" "^4.2.11" - "@types/chai-dom" "^0.0.9" + "@types/chai-dom" "^0.0.12" "@types/sinon-chai" "^3.2.3" chai-a11y-axe "^1.3.2" +"@parcel/bundler-default@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/bundler-default/-/bundler-default-2.6.2.tgz#bfa1be22af985ba2d6dbf1890a36ad4553f819d4" + integrity sha512-XIa3had/MIaTGgRFkHApXwytYs77k4geaNcmlb6nzmAABcYjW1CLYh83Zt0AbzLFsDT9ZcRY3u2UjhNf6efSaw== + dependencies: + "@parcel/diagnostic" "2.6.2" + "@parcel/hash" "2.6.2" + "@parcel/plugin" "2.6.2" + "@parcel/utils" "2.6.2" + nullthrows "^1.1.1" + +"@parcel/cache@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/cache/-/cache-2.6.2.tgz#66163c8f8ac4aac865c4b9eb2197b0d9e6f91a74" + integrity sha512-hhJ6AsEGybeQZd9c/GYqfcKTgZKQXu3Xih6TlnP3gdR3KZoJOnb40ovHD1yYg4COvfcXThKP1cVJ18J6rcv3IA== + dependencies: + "@parcel/fs" "2.6.2" + "@parcel/logger" "2.6.2" + "@parcel/utils" "2.6.2" + lmdb "2.5.2" + +"@parcel/codeframe@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/codeframe/-/codeframe-2.6.2.tgz#01a7ae97fdb66457e6704c87cc6031085e539e6e" + integrity sha512-oFlHr6HCaYYsB4SHkU+gn9DKtbzvv3/4NdwMX0/6NAKyYVI7inEsXyPGw2Bbd2ZCFatW9QJZUETF0etvh5AEfQ== + dependencies: + chalk "^4.1.0" + +"@parcel/compressor-raw@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/compressor-raw/-/compressor-raw-2.6.2.tgz#6fec2654c7767a2fef042a37246549d41ee8a586" + integrity sha512-P3c8jjV5HVs+fNDjhvq7PtHXNm687nit1iwTS5VAt+ScXKhKBhoIJ56q+9opcw0jnXVjAAgZqcRZ50oAJBGdKw== + dependencies: + "@parcel/plugin" "2.6.2" + +"@parcel/core@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/core/-/core-2.6.2.tgz#c46d26e2f47967d80f08484f20d31fee7b90e888" + integrity sha512-JlKS3Ux0ngmdooSBbzQLShHJdsapF9E7TGMo1hFaHRquZip/DaqzvysYrgMJlDuCoLArciq5ei7ZKzGeK9zexA== + dependencies: + "@mischnic/json-sourcemap" "^0.1.0" + "@parcel/cache" "2.6.2" + "@parcel/diagnostic" "2.6.2" + "@parcel/events" "2.6.2" + "@parcel/fs" "2.6.2" + "@parcel/graph" "2.6.2" + "@parcel/hash" "2.6.2" + "@parcel/logger" "2.6.2" + "@parcel/package-manager" "2.6.2" + "@parcel/plugin" "2.6.2" + "@parcel/source-map" "^2.0.0" + "@parcel/types" "2.6.2" + "@parcel/utils" "2.6.2" + "@parcel/workers" "2.6.2" + abortcontroller-polyfill "^1.1.9" + base-x "^3.0.8" + browserslist "^4.6.6" + clone "^2.1.1" + dotenv "^7.0.0" + dotenv-expand "^5.1.0" + json5 "^2.2.0" + msgpackr "^1.5.4" + nullthrows "^1.1.1" + semver "^5.7.1" + +"@parcel/diagnostic@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/diagnostic/-/diagnostic-2.6.2.tgz#da3fca0d82bc012f49288c963024edd089ca9f41" + integrity sha512-3ODSBkKVihENU763z1/1DhGAWFhYWRxOCOShC72KXp+GFnSgGiBsxclu8NBa/N948Rzp8lqQI8U1nLcKkh0O/w== + dependencies: + "@mischnic/json-sourcemap" "^0.1.0" + nullthrows "^1.1.1" + +"@parcel/events@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/events/-/events-2.6.2.tgz#97a1059d1eb93df8d3d426b6b150f829f70f543b" + integrity sha512-IaCjOeA5ercdFVi1EZOmUHhGfIysmCUgc2Th9hMugSFO0I3GzRsBcAdP6XPfWm+TV6sQ/qZRfdk/drUxoAupnw== + +"@parcel/fs-search@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/fs-search/-/fs-search-2.6.2.tgz#6343a5da4f0753c96c004d6951897f83160c4d45" + integrity sha512-4STid1zqtGnmGjHD/2TG2g/zPDiCTtE3IAS24QYH3eiUAz2uoKGgEqd2tZbZ2yI96jtCuIhC1bzVu8Hbykls7w== + dependencies: + detect-libc "^1.0.3" + +"@parcel/fs@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/fs/-/fs-2.6.2.tgz#c3f4ab9f88df6c1416af7c2a7a31b68ced862a16" + integrity sha512-mIhqdF3tjgeoIGqW7Nc/xfM2ClID7o8livwUe5lpQEP+ZaIBiMigXs6ckv3WToCACK+3uylrSD2A/HmlhrxMqQ== + dependencies: + "@parcel/fs-search" "2.6.2" + "@parcel/types" "2.6.2" + "@parcel/utils" "2.6.2" + "@parcel/watcher" "^2.0.0" + "@parcel/workers" "2.6.2" + +"@parcel/graph@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/graph/-/graph-2.6.2.tgz#fe777666c6fa09cb89b1570932459a4b5e90b6aa" + integrity sha512-DPH4G/RBFJWayIN2fnhDXqhUw75n7k15YsGzdDKiXuwwz4wMOjoL4cyrI6zOf1SIyh3guRmeTYJ4jjPzwrLYww== + dependencies: + "@parcel/utils" "2.6.2" + nullthrows "^1.1.1" + +"@parcel/hash@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/hash/-/hash-2.6.2.tgz#485e31323036abdf3648ba7f8816985296f358ba" + integrity sha512-tFB+cJU1Wqag6WyJgsmx3nx+xhmjcNZqtWh/MtK1lHNnZdDRk6bjr7SapnygBwruz+SmSt5bbdVThcpk2dRCcA== + dependencies: + detect-libc "^1.0.3" + xxhash-wasm "^0.4.2" + +"@parcel/logger@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/logger/-/logger-2.6.2.tgz#c99eed0e1ed13ac0c25f5e57355ab1bf5b3eda21" + integrity sha512-Sz5YGCj1DbEiX0/G8Uw97LLZ0uEK+qtWcRAkHNpJpeMiSqDiRNevxXltz42EcLo+oCh4d4wyiVzwi9mNwzhS/Q== + dependencies: + "@parcel/diagnostic" "2.6.2" + "@parcel/events" "2.6.2" + +"@parcel/markdown-ansi@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/markdown-ansi/-/markdown-ansi-2.6.2.tgz#7511f6d32688f8d150828cdd1162774c102070e3" + integrity sha512-N/h9J4eibhc+B+krzvPMzFUWL37GudBIZBa7XSLkcuH6MnYYfh6rrMvhIyyESwk6VkcZNVzAeZrGQqxEs0dHDQ== + dependencies: + chalk "^4.1.0" + +"@parcel/namer-default@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/namer-default/-/namer-default-2.6.2.tgz#8034fb23d2013ae00e5b73e9f887553bef498075" + integrity sha512-mp7bx/BQaIuohmZP0uE+gAmDBzzH0Yu8F4yCtE611lc6i0mou+nWRhzyKLNC/ieuI8DB3BFh2QQKeTxJn4W0qg== + dependencies: + "@parcel/diagnostic" "2.6.2" + "@parcel/plugin" "2.6.2" + nullthrows "^1.1.1" + +"@parcel/node-resolver-core@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/node-resolver-core/-/node-resolver-core-2.6.2.tgz#46381572e2829cd6b9424ea1cfd8c1330ab9ff4f" + integrity sha512-4b2L5QRYlTybvv3+TIRtwg4PPJXy+cRShCBa8eu1K0Fj297Afe8MOZrcVV+RIr2KPMIRXcIJoqDmOhyci/DynA== + dependencies: + "@parcel/diagnostic" "2.6.2" + "@parcel/utils" "2.6.2" + nullthrows "^1.1.1" + semver "^5.7.1" + +"@parcel/optimizer-terser@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/optimizer-terser/-/optimizer-terser-2.6.2.tgz#3361e2fd51bfdf6736f1e85afb9d6bed207cdb60" + integrity sha512-ZSEVQ3G3zOiVPeHvH+BrHegZybrQj9kWQAaAA92leSqbvf6UaX4xqXbGRg2OttNFtbGYBzIl28Zm4t2SLeUIuA== + dependencies: + "@parcel/diagnostic" "2.6.2" + "@parcel/plugin" "2.6.2" + "@parcel/source-map" "^2.0.0" + "@parcel/utils" "2.6.2" + nullthrows "^1.1.1" + terser "^5.2.0" + +"@parcel/package-manager@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/package-manager/-/package-manager-2.6.2.tgz#003e8326adf95f85b2a40bb5e5f24a735d58f114" + integrity sha512-xGMqTgnwTE3rgzYwUZMKxR8fzmP5iSYz/gj2H8FR3pEmwh/8xCMtNjTSth+hPVGuqgRZ6JxwpfdY/fXdZ61ViQ== + dependencies: + "@parcel/diagnostic" "2.6.2" + "@parcel/fs" "2.6.2" + "@parcel/logger" "2.6.2" + "@parcel/types" "2.6.2" + "@parcel/utils" "2.6.2" + "@parcel/workers" "2.6.2" + semver "^5.7.1" + +"@parcel/packager-js@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/packager-js/-/packager-js-2.6.2.tgz#16257b343480490adea619671b56d9cd02c8302a" + integrity sha512-fm5rKWtaExR0W+UEKWivXNPysRFxuBCdskdxDByb1J1JeGMvp7dJElbi8oXDAQM4MnM5EyG7cg47SlMZNTLm4A== + dependencies: + "@parcel/diagnostic" "2.6.2" + "@parcel/hash" "2.6.2" + "@parcel/plugin" "2.6.2" + "@parcel/source-map" "^2.0.0" + "@parcel/utils" "2.6.2" + globals "^13.2.0" + nullthrows "^1.1.1" + +"@parcel/packager-raw@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/packager-raw/-/packager-raw-2.6.2.tgz#67f136cc8b404edeb4092ea5f56d277e0e60d0c6" + integrity sha512-Rl3ZkMtMjb+LEvRowijDD8fibUAS6rWK0/vZQMk9cDNYCP2gCpZayLk0HZIGxneeTbosf/0sbngHq4VeRQOnQA== + dependencies: + "@parcel/plugin" "2.6.2" + +"@parcel/plugin@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/plugin/-/plugin-2.6.2.tgz#d4c8cc558e962e4dfb7154a7f0a023f6abad07ac" + integrity sha512-wbbWsM23Pr+8xtLSvf+UopXdVYlpKCCx6PuuZaZcKo+9IcDCWoGXD4M8Kkz14qBmkFn5uM00mULUqmVdSibB2w== + dependencies: + "@parcel/types" "2.6.2" + +"@parcel/reporter-dev-server@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/reporter-dev-server/-/reporter-dev-server-2.6.2.tgz#73e82c7bd6bbe47de61b2170ac9b7799c4e850fd" + integrity sha512-5QtL3ETMFL161jehlIK6rjBM+Pqk5cMhr60s9yLYqE1GY4M4gMj+Act+FXViyM6gmMA38cPxDvUsxTKBYXpFCw== + dependencies: + "@parcel/plugin" "2.6.2" + "@parcel/utils" "2.6.2" + +"@parcel/resolver-default@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/resolver-default/-/resolver-default-2.6.2.tgz#b417fb4f9713f5bdeceab737ae1dacb8322f2778" + integrity sha512-Lo5sWb5QkjWvdBr+TdmAF6Mszb/sMldBBatc1osQTkHXCy679VMH+lfyiWxHbwK+F1pmdMeBJpYcMxvrgT8EsA== + dependencies: + "@parcel/node-resolver-core" "2.6.2" + "@parcel/plugin" "2.6.2" + +"@parcel/runtime-js@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/runtime-js/-/runtime-js-2.6.2.tgz#cc46ec03d4fe2a4832cd7709431afba857bd37e0" + integrity sha512-0S3JFwgvs6FmEx2dHta9R0Sfu8vCnFAm4i7Y4efGHtAcTrF2CHjyiz4/hG+RQGJ70eoWW463Q+8qt6EKbkaOBQ== + dependencies: + "@parcel/plugin" "2.6.2" + "@parcel/utils" "2.6.2" + nullthrows "^1.1.1" + +"@parcel/source-map@^2.0.0": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@parcel/source-map/-/source-map-2.1.1.tgz#fb193b82dba6dd62cc7a76b326f57bb35000a782" + integrity sha512-Ejx1P/mj+kMjQb8/y5XxDUn4reGdr+WyKYloBljpppUy8gs42T+BNoEOuRYqDVdgPc6NxduzIDoJS9pOFfV5Ew== + dependencies: + detect-libc "^1.0.3" + +"@parcel/transformer-js@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/transformer-js/-/transformer-js-2.6.2.tgz#905285b5d6d8047d0420641dee257ee93bac69d8" + integrity sha512-uhXAMTjE/Q61amflV8qVpb73mj+mIdXIMH0cSks1/gDIAxcgIvWvrE14P4TvY6zJ1q1iRJRIRUN6cFSXqjjLSA== + dependencies: + "@parcel/diagnostic" "2.6.2" + "@parcel/plugin" "2.6.2" + "@parcel/source-map" "^2.0.0" + "@parcel/utils" "2.6.2" + "@parcel/workers" "2.6.2" + "@swc/helpers" "^0.4.2" + browserslist "^4.6.6" + detect-libc "^1.0.3" + nullthrows "^1.1.1" + regenerator-runtime "^0.13.7" + semver "^5.7.1" + +"@parcel/transformer-json@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/transformer-json/-/transformer-json-2.6.2.tgz#37a5c3f4571c81e1a5f2d0c77f266b56e3866ad5" + integrity sha512-QGcIIvbPF/u10ihYvQhxXqb2QMXWSzcBxJrOSIXIl74TUGrWX05D5LmjDA/rzm/n/kvRnBkFNP60R/smYb8x+Q== + dependencies: + "@parcel/plugin" "2.6.2" + json5 "^2.2.0" + +"@parcel/types@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/types/-/types-2.6.2.tgz#216313bcaf625e59a2bd525a00c3b1f6701b0d92" + integrity sha512-MV8BFpCIs2jMUvK2RHqzkoiuOQ//JIbrD1zocA2YRW3zuPL/iABvbAABJoXpoPCKikVWOoCWASgBfWQo26VvJQ== + dependencies: + "@parcel/cache" "2.6.2" + "@parcel/diagnostic" "2.6.2" + "@parcel/fs" "2.6.2" + "@parcel/package-manager" "2.6.2" + "@parcel/source-map" "^2.0.0" + "@parcel/workers" "2.6.2" + utility-types "^3.10.0" + +"@parcel/utils@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/utils/-/utils-2.6.2.tgz#18d68a56330be8db59c269163b77617043ba8e3a" + integrity sha512-Ug7hpRxjgbY5AopW55nY7MmGMVmwmN+ihfCmxJkBUoESTG/3iq8uME7GjyOgW5DkQc2K7q62i8y8N0wCJT1u4Q== + dependencies: + "@parcel/codeframe" "2.6.2" + "@parcel/diagnostic" "2.6.2" + "@parcel/hash" "2.6.2" + "@parcel/logger" "2.6.2" + "@parcel/markdown-ansi" "2.6.2" + "@parcel/source-map" "^2.0.0" + chalk "^4.1.0" + +"@parcel/watcher@^2.0.0": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@parcel/watcher/-/watcher-2.0.5.tgz#f913a54e1601b0aac972803829b0eece48de215b" + integrity sha512-x0hUbjv891omnkcHD7ZOhiyyUqUUR6MNjq89JhEI3BxppeKWAm6NPQsqqRrAkCJBogdT/o/My21sXtTI9rJIsw== + dependencies: + node-addon-api "^3.2.1" + node-gyp-build "^4.3.0" + +"@parcel/workers@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@parcel/workers/-/workers-2.6.2.tgz#2cae07db7a752295f11c2952b5026e426e38b19b" + integrity sha512-wBgUjJQm+lDd12fPRUmk09+ujTA9DgwPdqylSFK0OtI/yT6A+2kArUqjp8IwWo2tCJXoMzXBne2XQIWKqMiN4Q== + dependencies: + "@parcel/diagnostic" "2.6.2" + "@parcel/logger" "2.6.2" + "@parcel/types" "2.6.2" + "@parcel/utils" "2.6.2" + chrome-trace-event "^1.0.2" + nullthrows "^1.1.1" + "@peculiar/asn1-schema@^2.1.6": version "2.3.0" resolved "https://registry.yarnpkg.com/@peculiar/asn1-schema/-/asn1-schema-2.3.0.tgz#5368416eb336138770c692ffc2bab119ee3ae917" @@ -2939,26 +3065,14 @@ tslib "^2.4.0" webcrypto-core "^1.7.4" -"@pmmmwh/react-refresh-webpack-plugin@^0.4.3": - version "0.4.3" - resolved "https://registry.yarnpkg.com/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.4.3.tgz#1eec460596d200c0236bf195b078a5d1df89b766" - integrity sha512-br5Qwvh8D2OQqSXpd1g/xqXKnK0r+Jz6qVKBbWmpUcrbGOxUrf39V5oZ1876084CGn18uMdR5uvPqBv9UqtBjQ== - dependencies: - ansi-html "^0.0.7" - error-stack-parser "^2.0.6" - html-entities "^1.2.1" - native-url "^0.2.6" - schema-utils "^2.6.5" - source-map "^0.7.3" - -"@pmmmwh/react-refresh-webpack-plugin@^0.5.3": - version "0.5.4" - resolved "https://registry.yarnpkg.com/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.4.tgz#df0d0d855fc527db48aac93c218a0bf4ada41f99" - integrity sha512-zZbZeHQDnoTlt2AF+diQT0wsSXpvWiaIOZwBRdltNFhG1+I3ozyaw7U/nBiUwyJ0D+zwdXp0E3bWOl38Ag2BMw== +"@pmmmwh/react-refresh-webpack-plugin@^0.5.3", "@pmmmwh/react-refresh-webpack-plugin@^0.5.7": + version "0.5.8" + resolved "https://registry.yarnpkg.com/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.8.tgz#da3383761e2c0c440610819f3204769022a38d12" + integrity sha512-wxXRwf+IQ6zvHSJZ+5T2RQNEsq+kx4jKRXfFvdt3nBIUzJUAvXEFsUeoaohDe/Kr84MTjGwcuIUPNcstNJORsA== dependencies: ansi-html-community "^0.0.8" common-path-prefix "^3.0.0" - core-js-pure "^3.8.1" + core-js-pure "^3.23.3" error-stack-parser "^2.0.6" find-up "^5.0.0" html-entities "^2.1.0" @@ -2966,20 +3080,15 @@ schema-utils "^3.0.0" source-map "^0.7.3" -"@popperjs/core@^2.11.0": - version "2.11.0" - resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.0.tgz#6734f8ebc106a0860dff7f92bf90df193f0935d7" - integrity sha512-zrsUxjLOKAzdewIDRWy9nsV1GQsKBCWaGwsZQlCgr6/q+vjyZhFgqedLfFBuI9anTPEUT4APq9Mu0SZBTzIcGQ== - -"@rollup/plugin-node-resolve@^11.0.1": - version "11.2.1" - resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz#82aa59397a29cd4e13248b106e6a4a1880362a60" - integrity sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg== +"@rollup/plugin-node-resolve@^13.0.4": + version "13.3.0" + resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.3.0.tgz#da1c5c5ce8316cef96a2f823d111c1e4e498801c" + integrity sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw== dependencies: "@rollup/pluginutils" "^3.1.0" "@types/resolve" "1.17.1" - builtin-modules "^3.1.0" deepmerge "^4.2.2" + is-builtin-module "^3.1.0" is-module "^1.0.0" resolve "^1.19.0" @@ -2993,9 +3102,9 @@ picomatch "^2.2.2" "@sideway/address@^4.1.3": - version "4.1.3" - resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.3.tgz#d93cce5d45c5daec92ad76db492cc2ee3c64ab27" - integrity sha512-8ncEUtmnTsMmL7z1YPB47kPUq7LpKWJNFPsRzHiIajGC5uXlWGn+AmkYPcHNl8S4tcEGx+cnORnNYaw2wvL+LQ== + version "4.1.4" + resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" + integrity sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw== dependencies: "@hapi/hoek" "^9.0.0" @@ -3015,9 +3124,9 @@ integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== "@sindresorhus/is@^4.0.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.2.0.tgz#667bfc6186ae7c9e0b45a08960c551437176e1ca" - integrity sha512-VkE3KLBmJwcCaVARtQpfuKcKv8gcBmUubrfHGF84dXuuW6jgsRYxPtzcIhPyK9WAPpRt2/xY6zkD9MnRaJzSyw== + version "4.6.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f" + integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== "@sindresorhus/slugify@^1.1.2": version "1.1.2" @@ -3042,10 +3151,10 @@ dependencies: type-detect "4.0.8" -"@sinonjs/fake-timers@^7.0.4", "@sinonjs/fake-timers@^7.1.0": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz#2524eae70c4910edccf99b2f4e6efc5894aff7b5" - integrity sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg== +"@sinonjs/fake-timers@>=5": + version "9.1.2" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz#4eaab737fab77332ab132d396a3c0d364bd0ea8c" + integrity sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw== dependencies: "@sinonjs/commons" "^1.7.0" @@ -3057,55 +3166,55 @@ "@sinonjs/commons" "^1.7.0" "@sinonjs/samsam@^6.0.2": - version "6.0.2" - resolved "https://registry.yarnpkg.com/@sinonjs/samsam/-/samsam-6.0.2.tgz#a0117d823260f282c04bff5f8704bdc2ac6910bb" - integrity sha512-jxPRPp9n93ci7b8hMfJOFDPRLFYadN6FSpeROFTR4UNF4i5b+EK6m4QXPO46BDhFgRy1JuS87zAnFOzCUwMJcQ== + version "6.1.1" + resolved "https://registry.yarnpkg.com/@sinonjs/samsam/-/samsam-6.1.1.tgz#627f7f4cbdb56e6419fa2c1a3e4751ce4f6a00b1" + integrity sha512-cZ7rKJTLiE7u7Wi/v9Hc2fs3Ucc3jrWeMgPHbbTCeVAB2S0wOBbYlkJVeNSL04i7fdhT8wIbDq1zhC/PXTD2SA== dependencies: "@sinonjs/commons" "^1.6.0" lodash.get "^4.4.2" type-detect "^4.0.8" "@sinonjs/text-encoding@^0.7.1": - version "0.7.1" - resolved "https://registry.yarnpkg.com/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz#8da5c6530915653f3a1f38fd5f101d8c3f8079c5" - integrity sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ== + version "0.7.2" + resolved "https://registry.yarnpkg.com/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz#5981a8db18b56ba38ef0efb7d995b12aa7b51918" + integrity sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ== -"@size-limit/esbuild@7.0.5": - version "7.0.5" - resolved "https://registry.yarnpkg.com/@size-limit/esbuild/-/esbuild-7.0.5.tgz#1f02a0d41482a349bb66e8b050f2f4d904ad131a" - integrity sha512-ec/XfgTHcfXFflEDgs83gs3XMfB8sn4BISZM7CPHCS72tNkcjVwNRxrKWisb11JZ2kN4glBgCmsXZpoSaEGzXg== +"@size-limit/esbuild@7.0.8": + version "7.0.8" + resolved "https://registry.yarnpkg.com/@size-limit/esbuild/-/esbuild-7.0.8.tgz#1dff3b41ab2c2b5b07ec61a124ecb19aa68661d0" + integrity sha512-AzCrxJJThDvHrBNoolebYVgXu46c6HuS3fOxoXr3V0YWNM0qz81z5F3j7RruzboZnls8ZgME4WrH6GM5rB9gtA== dependencies: - esbuild "^0.14.8" - nanoid "^3.1.30" + esbuild "^0.14.18" + nanoid "^3.2.0" -"@size-limit/file@7.0.5": - version "7.0.5" - resolved "https://registry.yarnpkg.com/@size-limit/file/-/file-7.0.5.tgz#e8c8a610f2df408dba02a38dc283666db81948b0" - integrity sha512-DqyuUkmCSHwML6GVmeRr0v6Ih/P3pwmCu6RDWh2QxdDSec1ZnShmFUmcC6rLQDX7KW5aCjK3cs5FNd22Eaqapw== +"@size-limit/file@7.0.8": + version "7.0.8" + resolved "https://registry.yarnpkg.com/@size-limit/file/-/file-7.0.8.tgz#05c43fa01bf164c2fba24e13f1695bf7e861e277" + integrity sha512-1KeFQuMXIXAH/iELqIX7x+YNYDFvzIvmxcp9PrdwEoSNL0dXdaDIo9WE/yz8xvOmUcKaLfqbWkL75DM0k91WHQ== dependencies: semver "7.3.5" "@size-limit/preset-small-lib@^7.0.4": - version "7.0.5" - resolved "https://registry.yarnpkg.com/@size-limit/preset-small-lib/-/preset-small-lib-7.0.5.tgz#f55f66c5d77b5b8fb8f3d66893a3939aa33ae6ae" - integrity sha512-cWwXDCx9BEpHIjbpHlhpS0JBt+J1U5LCaHHyBhAxevOX7W0aX7nCJwPUmd5liGHq9ui5VyWOtV3lhxce96Qd8A== + version "7.0.8" + resolved "https://registry.yarnpkg.com/@size-limit/preset-small-lib/-/preset-small-lib-7.0.8.tgz#e787fd1c5cddd51ff02a7a5bef34cbd13e17c2bf" + integrity sha512-CT8nIYA/c2CSD+X4rAUgwqYccQMahJ6rBnaZxvi3YKFdkXIbuGNXHNjHsYaFksgwG9P4UjG/unyO5L73f3zQBw== dependencies: - "@size-limit/esbuild" "7.0.5" - "@size-limit/file" "7.0.5" + "@size-limit/esbuild" "7.0.8" + "@size-limit/file" "7.0.8" "@storybook/addon-a11y@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/addon-a11y/-/addon-a11y-6.5.9.tgz#191fb8ea9be4feee67fd11553b98ab56ecfc1295" - integrity sha512-jRiuJ2xlN8quVq2lOqpxqyuwAj8xLcgVBPy+Mf220u7AZmmbS/0sONyHKROfEBjJoHQAQYqn2vSAeuQZuTWyVA== - dependencies: - "@storybook/addons" "6.5.9" - "@storybook/api" "6.5.9" - "@storybook/channels" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/components" "6.5.9" - "@storybook/core-events" "6.5.9" + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/addon-a11y/-/addon-a11y-6.5.13.tgz#3934b12dc2f3bf7a1a1bc660aa7b84b856bc2b6c" + integrity sha512-+Tcl/4LWRh3ygLUZFGvkjT42CF/tJcP+kgsIho7i2MxpgZyD6+BUhL9srPZusjbR+uHcHXJ/yxw/vxFQ+UCTLA== + dependencies: + "@storybook/addons" "6.5.13" + "@storybook/api" "6.5.13" + "@storybook/channels" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/components" "6.5.13" + "@storybook/core-events" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.9" + "@storybook/theming" "6.5.13" axe-core "^4.2.0" core-js "^3.8.2" global "^4.4.0" @@ -3116,17 +3225,17 @@ util-deprecate "^1.0.2" "@storybook/addon-actions@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-6.5.9.tgz#d50d65631403e1a5b680961429d9c0d7bd383e68" - integrity sha512-wDYm3M1bN+zcYZV3Q24M03b/P8DDpvj1oSoY6VLlxDAi56h8qZB/voeIS2I6vWXOB79C5tbwljYNQO0GsufS0g== - dependencies: - "@storybook/addons" "6.5.9" - "@storybook/api" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/components" "6.5.9" - "@storybook/core-events" "6.5.9" + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-6.5.13.tgz#84535dda78c7fe15fc61f19a23ed1440952f3c76" + integrity sha512-3Tji0gIy95havhTpSc6CsFl5lNxGn4O5Y1U9fyji+GRkKqDFOrvVLYAHPtLOpYdEI5tF0bDo+akiqfDouY8+eA== + dependencies: + "@storybook/addons" "6.5.13" + "@storybook/api" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/components" "6.5.13" + "@storybook/core-events" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.9" + "@storybook/theming" "6.5.13" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" @@ -3141,17 +3250,17 @@ uuid-browser "^3.1.0" "@storybook/addon-backgrounds@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/addon-backgrounds/-/addon-backgrounds-6.5.9.tgz#a9579fc9d73f783a768c6c6ceb97193c5a1ee708" - integrity sha512-9k+GiY5aiANLOct34ar29jqgdi5ZpCqpZ86zPH0GsEC6ifH6nzP4trLU0vFUe260XDCvB4g8YaI7JZKPhozERg== - dependencies: - "@storybook/addons" "6.5.9" - "@storybook/api" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/components" "6.5.9" - "@storybook/core-events" "6.5.9" + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/addon-backgrounds/-/addon-backgrounds-6.5.13.tgz#37629db582501aa22bddf492a9f01d6614aaa993" + integrity sha512-b4JX7JMY7e50y1l6g71D+2XWV3GO0TO2z1ta8J6W4OQt8f44V7sSkRQaJUzXdLjQMrA+Anojuy1ZwPjVeLC6vg== + dependencies: + "@storybook/addons" "6.5.13" + "@storybook/api" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/components" "6.5.13" + "@storybook/core-events" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.9" + "@storybook/theming" "6.5.13" core-js "^3.8.2" global "^4.4.0" memoizerific "^1.11.3" @@ -3160,46 +3269,46 @@ util-deprecate "^1.0.2" "@storybook/addon-controls@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/addon-controls/-/addon-controls-6.5.9.tgz#8f6ef939c87b3dbad98f8bda7e124f0b34f668d2" - integrity sha512-VvjkgK32bGURKyWU2No6Q2B0RQZjLZk8D3neVNCnrWxwrl1G82StegxjRPn/UZm9+MZVPvTvI46nj1VdgOktnw== - dependencies: - "@storybook/addons" "6.5.9" - "@storybook/api" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/components" "6.5.9" - "@storybook/core-common" "6.5.9" + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/addon-controls/-/addon-controls-6.5.13.tgz#14c8f9379337768bf03f59d19f1a16f3c41418ab" + integrity sha512-lYq3uf2mlVevm0bi6ueL3H6TpUMRYW9s/pTNTVJT225l27kLdFR9wEKxAkCBrlKaTgDLJmzzDRsJE3NLZlR/5Q== + dependencies: + "@storybook/addons" "6.5.13" + "@storybook/api" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/components" "6.5.13" + "@storybook/core-common" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/node-logger" "6.5.9" - "@storybook/store" "6.5.9" - "@storybook/theming" "6.5.9" + "@storybook/node-logger" "6.5.13" + "@storybook/store" "6.5.13" + "@storybook/theming" "6.5.13" core-js "^3.8.2" lodash "^4.17.21" ts-dedent "^2.0.0" "@storybook/addon-docs@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-6.5.9.tgz#32b27fb298624afd738c1371a764d7ff4831fe6d" - integrity sha512-9lwOZyiOJFUgGd9ADVfcgpels5o0XOXqGMeVLuzT1160nopbZjNjo/3+YLJ0pyHRPpMJ4rmq2+vxRQR6PVRgPg== + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-6.5.13.tgz#fd82893946b0fa6f0657f16bf6a94637ab4b7532" + integrity sha512-RG/NjsheD9FixZ789RJlNyNccaR2Cuy7CtAwph4oUNi3aDFjtOI8Oe9L+FOT7qtVnZLw/YMjF+pZxoDqJNKLPw== 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.9" - "@storybook/api" "6.5.9" - "@storybook/components" "6.5.9" - "@storybook/core-common" "6.5.9" - "@storybook/core-events" "6.5.9" + "@storybook/addons" "6.5.13" + "@storybook/api" "6.5.13" + "@storybook/components" "6.5.13" + "@storybook/core-common" "6.5.13" + "@storybook/core-events" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/docs-tools" "6.5.9" + "@storybook/docs-tools" "6.5.13" "@storybook/mdx1-csf" "^0.0.1" - "@storybook/node-logger" "6.5.9" - "@storybook/postinstall" "6.5.9" - "@storybook/preview-web" "6.5.9" - "@storybook/source-loader" "6.5.9" - "@storybook/store" "6.5.9" - "@storybook/theming" "6.5.9" + "@storybook/node-logger" "6.5.13" + "@storybook/postinstall" "6.5.13" + "@storybook/preview-web" "6.5.13" + "@storybook/source-loader" "6.5.13" + "@storybook/store" "6.5.13" + "@storybook/theming" "6.5.13" babel-loader "^8.0.0" core-js "^3.8.2" fast-deep-equal "^3.1.3" @@ -3230,17 +3339,17 @@ style-loader "^1.3.0" "@storybook/addon-storysource@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/addon-storysource/-/addon-storysource-6.5.9.tgz#8e5fb76b9314a69831a3b5e08e8570407c39de75" - integrity sha512-7KLw03mE1JJSJQrqNDftoVVp2BBq8wltd0qo7WHkpRVfir9dMO3g7Wy6S6UPsrb9th47ZjonwBJEc28GwAq0yg== - dependencies: - "@storybook/addons" "6.5.9" - "@storybook/api" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/components" "6.5.9" - "@storybook/router" "6.5.9" - "@storybook/source-loader" "6.5.9" - "@storybook/theming" "6.5.9" + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/addon-storysource/-/addon-storysource-6.5.13.tgz#e773bf528ef4ba5b809c308b77b0e1551dccdafb" + integrity sha512-Gcru/fBuLZKlswHiD3JNjIWshtv7g0XtNpLOFg1B0lPVgISvBQ92k7SGdRV5HpHVkkzTcQ1yFH78h1RJY80MIQ== + dependencies: + "@storybook/addons" "6.5.13" + "@storybook/api" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/components" "6.5.13" + "@storybook/router" "6.5.13" + "@storybook/source-loader" "6.5.13" + "@storybook/theming" "6.5.13" core-js "^3.8.2" estraverse "^5.2.0" loader-utils "^2.0.0" @@ -3249,51 +3358,51 @@ regenerator-runtime "^0.13.7" "@storybook/addon-viewport@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-6.5.9.tgz#fc390ccebea56d2e874ed2fda085c09fe04dd240" - integrity sha512-thKS+iw6M7ueDQQ7M66STZ5rgtJKliAcIX6UCopo0Ffh4RaRYmX6MCjqtvBKk8joyXUvm9SpWQemJD9uBQrjgw== - dependencies: - "@storybook/addons" "6.5.9" - "@storybook/api" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/components" "6.5.9" - "@storybook/core-events" "6.5.9" - "@storybook/theming" "6.5.9" + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-6.5.13.tgz#97771ed2f4ca1bef83d25174ce07db8557cdf795" + integrity sha512-KSfeuCSIjncwWGnUu6cZBx8WNqYvm5gHyFvkSPKEu0+MJtgncbUy7pl53lrEEr6QmIq0GRXvS3A0XzV8RCnrSA== + dependencies: + "@storybook/addons" "6.5.13" + "@storybook/api" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/components" "6.5.13" + "@storybook/core-events" "6.5.13" + "@storybook/theming" "6.5.13" 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.9", "@storybook/addons@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-6.5.9.tgz#5a9d7395c579a9cbc44dfc122362fb3c95dfb9d5" - integrity sha512-adwdiXg+mntfPocLc1KXjZXyLgGk7Aac699Fwe+OUYPEC5tW347Rm/kFatcE556d42o5czcRiq3ZSIGWnm9ieQ== +"@storybook/addons@6.5.13", "@storybook/addons@^6.5.9": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-6.5.13.tgz#61ec5eab07879400d423d60bb397880d10ee5e73" + integrity sha512-18CqzNnrGMfeZtiKz+R/3rHtSNnfNwz6y6prIQIbWseK16jY8ELTfIFGviwO5V2OqpbHDQi5+xQQ63QAIb89YA== dependencies: - "@storybook/api" "6.5.9" - "@storybook/channels" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/core-events" "6.5.9" + "@storybook/api" "6.5.13" + "@storybook/channels" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/core-events" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.9" - "@storybook/theming" "6.5.9" + "@storybook/router" "6.5.13" + "@storybook/theming" "6.5.13" "@types/webpack-env" "^1.16.0" core-js "^3.8.2" global "^4.4.0" regenerator-runtime "^0.13.7" -"@storybook/api@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/api/-/api-6.5.9.tgz#303733214c9de0422d162f7c54ae05d088b89bf9" - integrity sha512-9ylztnty4Y+ALU/ehW3BML9czjCAFsWvrwuCi6UgcwNjswwjSX3VRLhfD1KT3pl16ho//95LgZ0LnSwROCcPOA== +"@storybook/api@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/api/-/api-6.5.13.tgz#8671e580721ff68d209fcde2975f967ae79b7d64" + integrity sha512-xVSmB7/IuFd6G7eiJjbI2MuS7SZunoUM6d+YCWpjiehfMeX47MXt1gZtOwFrgJC1ShZlefXFahq/dvxwtmWs+w== dependencies: - "@storybook/channels" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/core-events" "6.5.9" + "@storybook/channels" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/core-events" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.9" + "@storybook/router" "6.5.13" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.5.9" + "@storybook/theming" "6.5.13" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" @@ -3305,28 +3414,28 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/builder-webpack4@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/builder-webpack4/-/builder-webpack4-6.5.9.tgz#4b37e1fa23a25aa4bfeaba640e5d318fcd511f95" - integrity sha512-YOeA4++9uRZ8Hog1wC60yjaxBOiI1FRQNtax7b9E7g+kP8UlSCPCGcv4gls9hFmzbzTOPfQTWnToA9Oa6jzRVw== +"@storybook/builder-webpack4@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/builder-webpack4/-/builder-webpack4-6.5.13.tgz#35b22c49562d72934a0bc311657989f3b43be575" + integrity sha512-Agqy3IKPv3Nl8QqdS7PjtqLp+c0BD8+/3A2ki/YfKqVz+F+J34EpbZlh3uU053avm1EoNQHSmhZok3ZlWH6O7A== dependencies: "@babel/core" "^7.12.10" - "@storybook/addons" "6.5.9" - "@storybook/api" "6.5.9" - "@storybook/channel-postmessage" "6.5.9" - "@storybook/channels" "6.5.9" - "@storybook/client-api" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/components" "6.5.9" - "@storybook/core-common" "6.5.9" - "@storybook/core-events" "6.5.9" - "@storybook/node-logger" "6.5.9" - "@storybook/preview-web" "6.5.9" - "@storybook/router" "6.5.9" + "@storybook/addons" "6.5.13" + "@storybook/api" "6.5.13" + "@storybook/channel-postmessage" "6.5.13" + "@storybook/channels" "6.5.13" + "@storybook/client-api" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/components" "6.5.13" + "@storybook/core-common" "6.5.13" + "@storybook/core-events" "6.5.13" + "@storybook/node-logger" "6.5.13" + "@storybook/preview-web" "6.5.13" + "@storybook/router" "6.5.13" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.9" - "@storybook/theming" "6.5.9" - "@storybook/ui" "6.5.9" + "@storybook/store" "6.5.13" + "@storybook/theming" "6.5.13" + "@storybook/ui" "6.5.13" "@types/node" "^14.0.10 || ^16.0.0" "@types/webpack" "^4.41.26" autoprefixer "^9.8.6" @@ -3359,26 +3468,26 @@ webpack-virtual-modules "^0.2.2" "@storybook/builder-webpack5@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/builder-webpack5/-/builder-webpack5-6.5.9.tgz#30b4e08622daff104bcccd015d3ee7902f99dd99" - integrity sha512-NUVZ4Qci6HWPuoH8U/zQkdBO5soGgu7QYrGC/LWU0tRfmmZxkjr7IUU14ppDpGPYgx3r7jkaQI1J/E1YEmSCWQ== + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/builder-webpack5/-/builder-webpack5-6.5.13.tgz#b40a6fc0ff22b6e7c7e1a46a8fc3c24cf14833f8" + integrity sha512-juNH31ZljWbaoBD6Yx2/iQ4G66UBkwq+cFUqLzgVROKMXmYaT0AJYbfyY8CgGqcXkc+sqNA63yWaLWd8/K9vTg== dependencies: "@babel/core" "^7.12.10" - "@storybook/addons" "6.5.9" - "@storybook/api" "6.5.9" - "@storybook/channel-postmessage" "6.5.9" - "@storybook/channels" "6.5.9" - "@storybook/client-api" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/components" "6.5.9" - "@storybook/core-common" "6.5.9" - "@storybook/core-events" "6.5.9" - "@storybook/node-logger" "6.5.9" - "@storybook/preview-web" "6.5.9" - "@storybook/router" "6.5.9" + "@storybook/addons" "6.5.13" + "@storybook/api" "6.5.13" + "@storybook/channel-postmessage" "6.5.13" + "@storybook/channels" "6.5.13" + "@storybook/client-api" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/components" "6.5.13" + "@storybook/core-common" "6.5.13" + "@storybook/core-events" "6.5.13" + "@storybook/node-logger" "6.5.13" + "@storybook/preview-web" "6.5.13" + "@storybook/router" "6.5.13" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.9" - "@storybook/theming" "6.5.9" + "@storybook/store" "6.5.13" + "@storybook/theming" "6.5.13" "@types/node" "^14.0.10 || ^16.0.0" babel-loader "^8.0.0" babel-plugin-named-exports-order "^0.0.2" @@ -3402,51 +3511,51 @@ webpack-hot-middleware "^2.25.1" webpack-virtual-modules "^0.4.1" -"@storybook/channel-postmessage@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-6.5.9.tgz#9cf4530f0364cee0d5e58f92d6fb5ce98e10257b" - integrity sha512-pX/0R8UW7ezBhCrafRaL20OvMRcmESYvQQCDgjqSzJyHkcG51GOhsd6Ge93eJ6QvRMm9+w0Zs93N2VKjVtz0Qw== +"@storybook/channel-postmessage@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-6.5.13.tgz#cdb36cf4180bd75687c0c4ec75248044ac975828" + integrity sha512-R79MBs0mQ7TV8M/a6x/SiTRyvZBidDfMEEthG7Cyo9p35JYiKOhj2535zhW4qlVMESBu95pwKYBibTjASoStPw== dependencies: - "@storybook/channels" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/core-events" "6.5.9" + "@storybook/channels" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/core-events" "6.5.13" core-js "^3.8.2" global "^4.4.0" qs "^6.10.0" telejson "^6.0.8" -"@storybook/channel-websocket@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/channel-websocket/-/channel-websocket-6.5.9.tgz#6b7a0127fec58ee5be4f6aebcf460adc564f2f34" - integrity sha512-xtHvSNwuOhkgALwVshKWsoFhDmuvcosdYfxcfFGEiYKXIu46tRS5ZXmpmgEC/0JAVkVoFj5nL8bV7IY5np6oaA== +"@storybook/channel-websocket@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/channel-websocket/-/channel-websocket-6.5.13.tgz#b7a55149295a77004bb156a4ceefc44839f52bb3" + integrity sha512-kwh667H+tzCiNvs92GNwYOwVXdj9uHZyieRAN5rJtTBJ7XgLzGkpTEU50mWlbc0nDKhgE0qYvzyr5H393Iy5ug== dependencies: - "@storybook/channels" "6.5.9" - "@storybook/client-logger" "6.5.9" + "@storybook/channels" "6.5.13" + "@storybook/client-logger" "6.5.13" core-js "^3.8.2" global "^4.4.0" telejson "^6.0.8" -"@storybook/channels@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-6.5.9.tgz#abfab89a6587a2688e9926d4aafeb11c9d8b2e79" - integrity sha512-FvGA35nV38UPXWOl9ERapFTJaxwSTamQ339s2Ev7E9riyRG+GRkgTWzf5kECJgS1PAYKd/7m/RqKJT9BVv6A5g== +"@storybook/channels@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-6.5.13.tgz#f3f86b90a7832484ee3dcbc6845f5a47f62f028f" + integrity sha512-sGYSilE30bz0jG+HdHnkv0B4XkAv2hP+KRZr4xmnv+MOOQpRnZpJ5Z3HVU16s17cj/83NWihKj6BuKcEVzyilg== dependencies: core-js "^3.8.2" ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-api@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-6.5.9.tgz#3e4a8ec1d277fd81325c5d959c553161a85fa182" - integrity sha512-pc7JKJoWLesixUKvG2nV36HukUuYoGRyAgD3PpIV7qSBS4JixqZ3VAHFUtqV1UzfOSQTovLSl4a0rIRnpie6gA== +"@storybook/client-api@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-6.5.13.tgz#0bd89339c08898e0409c5a1dd719ed4807b400cb" + integrity sha512-uH1mAWbidPiuuTdMUVEiuaNOfrYXm+9QLSP1MMYTKULqEOZI5MSOGkEDqRfVWxbYv/iWBOPTQ+OM9TQ6ecYacg== dependencies: - "@storybook/addons" "6.5.9" - "@storybook/channel-postmessage" "6.5.9" - "@storybook/channels" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/core-events" "6.5.9" + "@storybook/addons" "6.5.13" + "@storybook/channel-postmessage" "6.5.13" + "@storybook/channels" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/core-events" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.9" + "@storybook/store" "6.5.13" "@types/qs" "^6.9.5" "@types/webpack-env" "^1.16.0" core-js "^3.8.2" @@ -3461,45 +3570,43 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-logger@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-6.5.9.tgz#dc1669abe8c45af1cc38f74c6f4b15ff33e63014" - integrity sha512-DOHL6p0uiDd3gV/Sb2FR+Vh6OiPrrf8BrA06uvXWsMRIIvEEvnparxv9EvPg7FlmUX0T3nq7d3juwjx4F8Wbcg== +"@storybook/client-logger@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-6.5.13.tgz#83f332dd9bb4ff1696d16b0cc24561df90905264" + integrity sha512-F2SMW3LWFGXLm2ENTwTitrLWJgmMXRf3CWQXdN2EbkNCIBHy5Zcbt+91K4OX8e2e5h9gjGfrdYbyYDYOoUCEfA== dependencies: core-js "^3.8.2" global "^4.4.0" -"@storybook/components@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/components/-/components-6.5.9.tgz#97e07ffe11ab76c01ccee380888991bd161f75b2" - integrity sha512-BhfX980O9zn/1J4FNMeDo8ZvL1m5Ml3T4HRpfYmEBnf8oW5b5BeF6S2K2cwFStZRjWqm1feUcwNpZxCBVMkQnQ== +"@storybook/components@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/components/-/components-6.5.13.tgz#a05fc969458760b348d640f26c2cad310ab35030" + integrity sha512-6Hhx70JK5pGfKCkqMU4yq/BBH+vRTmzj7tZKfPwba+f8VmTMoOr/2ysTQFRtXryiHB6Z15xBYgfq5x2pIwQzLQ== dependencies: - "@storybook/client-logger" "6.5.9" + "@storybook/client-logger" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.9" - "@types/react-syntax-highlighter" "11.0.5" + "@storybook/theming" "6.5.13" core-js "^3.8.2" memoizerific "^1.11.3" qs "^6.10.0" - react-syntax-highlighter "^15.4.5" regenerator-runtime "^0.13.7" util-deprecate "^1.0.2" -"@storybook/core-client@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-6.5.9.tgz#ea6035d1c90d2c68e860e3cf629979491856cd88" - integrity sha512-LY0QbhShowO+PQx3gao3wdVjpKMH1AaSLmuI95FrcjoMmSXGf96jVLKQp9mJRGeHIsAa93EQBYuCihZycM3Kbg== - dependencies: - "@storybook/addons" "6.5.9" - "@storybook/channel-postmessage" "6.5.9" - "@storybook/channel-websocket" "6.5.9" - "@storybook/client-api" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/core-events" "6.5.9" +"@storybook/core-client@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-6.5.13.tgz#5e2a155af5773c4211a0e1fcd72e0cefea52b7ae" + integrity sha512-YuELbRokTBdqjbx/R4/7O4rou9kvbBIOJjlUkor9hdLLuJ3P0yGianERGNkZFfvcfMBAxU0p52o7QvDldSR3kA== + dependencies: + "@storybook/addons" "6.5.13" + "@storybook/channel-postmessage" "6.5.13" + "@storybook/channel-websocket" "6.5.13" + "@storybook/client-api" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/core-events" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/preview-web" "6.5.9" - "@storybook/store" "6.5.9" - "@storybook/ui" "6.5.9" + "@storybook/preview-web" "6.5.13" + "@storybook/store" "6.5.13" + "@storybook/ui" "6.5.13" airbnb-js-shims "^2.2.1" ansi-to-html "^0.6.11" core-js "^3.8.2" @@ -3511,10 +3618,10 @@ unfetch "^4.2.0" util-deprecate "^1.0.2" -"@storybook/core-common@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-6.5.9.tgz#7ca8258ea2634b1d64695c1e4262f71cc7457989" - integrity sha512-NxOK0mrOCo0TWZ7Npc5HU66EKoRHlrtg18/ZixblLDWQMIqY9XCck8K1kJ8QYpYCHla+aHIsYUArFe2vhlEfZA== +"@storybook/core-common@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-6.5.13.tgz#941fe2aea3326c2d524d095870a4150b9f9b1845" + integrity sha512-+DVZrRsteE9pw0X5MNffkdBgejQnbnL+UOG3qXkE9xxUamQALnuqS/w1BzpHE9WmOHuf7RWMKflyQEW3OLKAJg== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-proposal-class-properties" "^7.12.1" @@ -3538,7 +3645,7 @@ "@babel/preset-react" "^7.12.10" "@babel/preset-typescript" "^7.12.7" "@babel/register" "^7.12.1" - "@storybook/node-logger" "6.5.9" + "@storybook/node-logger" "6.5.13" "@storybook/semver" "^7.3.2" "@types/node" "^14.0.10 || ^16.0.0" "@types/pretty-hrtime" "^1.0.0" @@ -3567,30 +3674,30 @@ util-deprecate "^1.0.2" webpack "4" -"@storybook/core-events@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-6.5.9.tgz#5b0783c7d22a586c0f5e927a61fe1b1223e19637" - integrity sha512-tXt7a3ZvJOCeEKpNa/B5rQM5VI7UJLlOh3IHOImWn4HqoBRrZvbourmac+PRZAtXpos0h3c6554Hjapj/Sny5Q== +"@storybook/core-events@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-6.5.13.tgz#a8c0cc92694f09981ca6501d5c5ef328db18db8a" + integrity sha512-kL745tPpRKejzHToA3/CoBNbI+NPRVk186vGxXBmk95OEg0TlwgQExP8BnqEtLlRZMbW08e4+6kilc1M1M4N5w== dependencies: core-js "^3.8.2" -"@storybook/core-server@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/core-server/-/core-server-6.5.9.tgz#749a881c1a81d7cf1a69f3782c06a7f0c39a505c" - integrity sha512-YeePGUrd5fQPvGzMhowh124KrcZURFpFXg1VB0Op3ESqCIsInoMZeObci4Gc+binMXC7vcv7aw3EwSLU37qJzQ== +"@storybook/core-server@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/core-server/-/core-server-6.5.13.tgz#5f0f13b73122f73b9d27962616815305da2a5b28" + integrity sha512-vs7tu3kAnFwuINio1p87WyqDNlFyZESmeh9s7vvrZVbe/xS/ElqDscr9DT5seW+jbtxufAaHsx+JUTver1dheQ== dependencies: "@discoveryjs/json-ext" "^0.5.3" - "@storybook/builder-webpack4" "6.5.9" - "@storybook/core-client" "6.5.9" - "@storybook/core-common" "6.5.9" - "@storybook/core-events" "6.5.9" + "@storybook/builder-webpack4" "6.5.13" + "@storybook/core-client" "6.5.13" + "@storybook/core-common" "6.5.13" + "@storybook/core-events" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/csf-tools" "6.5.9" - "@storybook/manager-webpack4" "6.5.9" - "@storybook/node-logger" "6.5.9" + "@storybook/csf-tools" "6.5.13" + "@storybook/manager-webpack4" "6.5.13" + "@storybook/node-logger" "6.5.13" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.9" - "@storybook/telemetry" "6.5.9" + "@storybook/store" "6.5.13" + "@storybook/telemetry" "6.5.13" "@types/node" "^14.0.10 || ^16.0.0" "@types/node-fetch" "^2.5.7" "@types/pretty-hrtime" "^1.0.0" @@ -3625,18 +3732,18 @@ ws "^8.2.3" x-default-browser "^0.4.0" -"@storybook/core@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/core/-/core-6.5.9.tgz#da4f237391d99aed1228323f24b335cafbdf3499" - integrity sha512-Mt3TTQnjQt2/pa60A+bqDsAOrYpohapdtt4DDZEbS8h0V6u11KyYYh3w7FCySlL+sPEyogj63l5Ec76Jah3l2w== +"@storybook/core@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/core/-/core-6.5.13.tgz#4c657c5d8d243f1187dad8763a275d555426957e" + integrity sha512-kw1lCgbsxzUimGww6t5rmuWJmFPe9kGGyzIqvj4RC4BBcEsP40LEu9XhSfvnb8vTOLIULFZeZpdRFfJs4TYbUw== dependencies: - "@storybook/core-client" "6.5.9" - "@storybook/core-server" "6.5.9" + "@storybook/core-client" "6.5.13" + "@storybook/core-server" "6.5.13" -"@storybook/csf-tools@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/csf-tools/-/csf-tools-6.5.9.tgz#8e01df2305b53e228229f0b45ada3720e6e42a1c" - integrity sha512-RAdhsO2XmEDyWy0qNQvdKMLeIZAuyfD+tYlUwBHRU6DbByDucvwgMOGy5dF97YNJFmyo93EUYJzXjUrJs3U1LQ== +"@storybook/csf-tools@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/csf-tools/-/csf-tools-6.5.13.tgz#cb5cd26083a594bf31b19a66a250ad94863822f6" + integrity sha512-63Ev+VmBqzwSwfUzbuXOLKBD5dMTK2zBYLQ9anTVw70FuTikwTsGIbPgb098K0vsxRCgxl7KM7NpivHqtZtdjw== dependencies: "@babel/core" "^7.12.10" "@babel/generator" "^7.12.11" @@ -3660,33 +3767,33 @@ dependencies: lodash "^4.17.15" -"@storybook/docs-tools@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/docs-tools/-/docs-tools-6.5.9.tgz#5ff304f881e972ce14923a5ffcfed3f052094889" - integrity sha512-UoTaXLvec8x+q+4oYIk/t8DBju9C3ZTGklqOxDIt+0kS3TFAqEgI3JhKXqQOXgN5zDcvLVSxi8dbVAeSxk2ktA== +"@storybook/docs-tools@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/docs-tools/-/docs-tools-6.5.13.tgz#00c7041ac7bc827d12731face909351a5af0cb3f" + integrity sha512-hB+hk+895ny4SW84j3X5iV55DHs3bCfTOp7cDdcZJdQrlm0wuDb4A6d4ffNC7ZLh9VkUjU6ST4VEV5Bb0Cptow== dependencies: "@babel/core" "^7.12.10" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.9" + "@storybook/store" "6.5.13" core-js "^3.8.2" doctrine "^3.0.0" lodash "^4.17.21" regenerator-runtime "^0.13.7" -"@storybook/manager-webpack4@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/manager-webpack4/-/manager-webpack4-6.5.9.tgz#c75d2cced4550c8a786f00b0e57b203d613e706c" - integrity sha512-49LZlHqWc7zj9tQfOOANixPYmLxqWTTZceA6DSXnKd9xDiO2Gl23Y+l/CSPXNZGDB8QFAwpimwqyKJj/NLH45A== +"@storybook/manager-webpack4@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/manager-webpack4/-/manager-webpack4-6.5.13.tgz#73350ac3e8a10494158df3c1ea01dd7f329bec8e" + integrity sha512-pURzS5W3XM0F7bCBWzpl7TRsuy+OXFwLXiWLaexuvo0POZe31Ueo2A1R4rx3MT5Iee8O9mYvG2XTmvK9MlLefQ== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-transform-template-literals" "^7.12.1" "@babel/preset-react" "^7.12.10" - "@storybook/addons" "6.5.9" - "@storybook/core-client" "6.5.9" - "@storybook/core-common" "6.5.9" - "@storybook/node-logger" "6.5.9" - "@storybook/theming" "6.5.9" - "@storybook/ui" "6.5.9" + "@storybook/addons" "6.5.13" + "@storybook/core-client" "6.5.13" + "@storybook/core-common" "6.5.13" + "@storybook/node-logger" "6.5.13" + "@storybook/theming" "6.5.13" + "@storybook/ui" "6.5.13" "@types/node" "^14.0.10 || ^16.0.0" "@types/webpack" "^4.41.26" babel-loader "^8.0.0" @@ -3715,19 +3822,19 @@ webpack-virtual-modules "^0.2.2" "@storybook/manager-webpack5@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/manager-webpack5/-/manager-webpack5-6.5.9.tgz#ce9dd6ea6298ab426b111f170c23deea7085ba08" - integrity sha512-J1GamphSsaZLNBEhn1awgxzOS8KfvzrHtVlAm2VHwW7j1E1DItROFJhGCgduYYuBiN9eqm+KIYrxcr6cRuoolQ== + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/manager-webpack5/-/manager-webpack5-6.5.13.tgz#3d88d4ec7dfce6413da944e94e28f3b7a1af4b51" + integrity sha512-lQEZacSfeRsbqfJE7TVk35Hm1vkr0I2i1pyYqM+4862gRbMh1nJQXbJ5GqZ+Fo/bf0ZfyFZ32jGDIJAFdlpkuQ== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-transform-template-literals" "^7.12.1" "@babel/preset-react" "^7.12.10" - "@storybook/addons" "6.5.9" - "@storybook/core-client" "6.5.9" - "@storybook/core-common" "6.5.9" - "@storybook/node-logger" "6.5.9" - "@storybook/theming" "6.5.9" - "@storybook/ui" "6.5.9" + "@storybook/addons" "6.5.13" + "@storybook/core-client" "6.5.13" + "@storybook/core-common" "6.5.13" + "@storybook/node-logger" "6.5.13" + "@storybook/theming" "6.5.13" + "@storybook/ui" "6.5.13" "@types/node" "^14.0.10 || ^16.0.0" babel-loader "^8.0.0" case-sensitive-paths-webpack-plugin "^2.3.0" @@ -3769,21 +3876,10 @@ prettier ">=2.2.1 <=2.3.0" ts-dedent "^2.0.0" -"@storybook/node-logger@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-6.5.9.tgz#129cfe0d0f79cab4f6a2ba194d39516680b1626f" - integrity sha512-nZZNZG2Wtwv6Trxi3FrnIqUmB55xO+X/WQGPT5iKlqNjdRIu/T72mE7addcp4rbuWCQfZUhcDDGpBOwKtBxaGg== - 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/node-logger@^6.1.14": - version "6.4.9" - resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-6.4.9.tgz#7c28f16f5c61feda8f45fa2c06000ebb87b57df7" - integrity sha512-giil8dA85poH+nslKHIS9tSxp4MP4ensOec7el6GwKiqzAQXITrm3b7gw61ETj39jAQeLIcQYGHLq1oqQo4/YQ== +"@storybook/node-logger@6.5.13", "@storybook/node-logger@^6.1.14": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-6.5.13.tgz#f4833ae220efe841747c4fead26419d6625af8d9" + integrity sha512-/r5aVZAqZRoy5FyNk/G4pj7yKJd3lJfPbAaOHVROv2IF7PJP/vtRaDkcfh0g2U6zwuDxGIqSn80j+qoEli9m5A== dependencies: "@types/npmlog" "^4.1.2" chalk "^4.1.0" @@ -3791,24 +3887,24 @@ npmlog "^5.0.1" pretty-hrtime "^1.0.3" -"@storybook/postinstall@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/postinstall/-/postinstall-6.5.9.tgz#a5a2565808e9d7bc310e78c279b09ce337fe3457" - integrity sha512-KQBupK+FMRrtSt8IL0MzCZ/w9qbd25Yxxp/+ajfWgZTRgsWgVFOqcDyMhS16eNbBp5qKIBCBDXfEF+/mK8HwQQ== +"@storybook/postinstall@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/postinstall/-/postinstall-6.5.13.tgz#b57b68682b853fd451061c06becd1eff18a75cf8" + integrity sha512-qmqP39FGIP5NdhXC5IpAs9cFoYx9fg1psoQKwb9snYb98eVQU31uHc1W2MBUh3lG4AjAm7pQaXJci7ti4jOh3g== dependencies: core-js "^3.8.2" -"@storybook/preview-web@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/preview-web/-/preview-web-6.5.9.tgz#557d919e6df50d66259521aa36ebf4055bbd236e" - integrity sha512-4eMrO2HJyZUYyL/j+gUaDvry6iGedshwT5MQqe7J9FaA+Q2pNARQRB1X53f410w7S4sObRmYIAIluWPYdWym9w== +"@storybook/preview-web@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/preview-web/-/preview-web-6.5.13.tgz#332cac4c95e3fd760c9eb8448dfa50fdb3b6255b" + integrity sha512-GNNYVzw4SmRua3dOc52Ye6Us4iQbq5GKQ56U3iwnzZM3TBdJB+Rft94Fn1/pypHujEHS8hl5Xgp9td6C1lLCow== dependencies: - "@storybook/addons" "6.5.9" - "@storybook/channel-postmessage" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/core-events" "6.5.9" + "@storybook/addons" "6.5.13" + "@storybook/channel-postmessage" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/core-events" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.9" + "@storybook/store" "6.5.13" ansi-to-html "^0.6.11" core-js "^3.8.2" global "^4.4.0" @@ -3834,23 +3930,23 @@ tslib "^2.0.0" "@storybook/react@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/react/-/react-6.5.9.tgz#687ec1f6b785822a392b7ac115b61800f69fb7cd" - integrity sha512-Rp+QaTQAzxJhwuzJXVd49mnIBLQRlF8llTxPT2YoGHdrGkku/zl/HblQ6H2yzEf15367VyzaAv/BpLsO9Jlfxg== + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/react/-/react-6.5.13.tgz#9b02c4515b6c6a13ce92f1bb4869c20c8ae05dfa" + integrity sha512-4gO8qihEkVZ8RNm9iQd7G2iZz4rRAHizJ6T5m58Sn21fxfyg9zAMzhgd0JzXuPXR8lTTj4AvRyPv1Qx7b43smg== 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.9" - "@storybook/client-logger" "6.5.9" - "@storybook/core" "6.5.9" - "@storybook/core-common" "6.5.9" + "@storybook/addons" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/core" "6.5.13" + "@storybook/core-common" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/docs-tools" "6.5.9" - "@storybook/node-logger" "6.5.9" + "@storybook/docs-tools" "6.5.13" + "@storybook/node-logger" "6.5.13" "@storybook/react-docgen-typescript-plugin" "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.9" + "@storybook/store" "6.5.13" "@types/estree" "^0.0.51" "@types/node" "^14.14.20 || ^16.0.0" "@types/webpack-env" "^1.16.0" @@ -3874,12 +3970,12 @@ util-deprecate "^1.0.2" webpack ">=4.43.0 <6.0.0" -"@storybook/router@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/router/-/router-6.5.9.tgz#4740248f8517425b2056273fb366ace8a17c65e8" - integrity sha512-G2Xp/2r8vU2O34eelE+G5VbEEVFDeHcCURrVJEROh6dq2asFJAPbzslVXSeCqgOTNLSpRDJ2NcN5BckkNqmqJg== +"@storybook/router@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/router/-/router-6.5.13.tgz#c8bfed96f2343b097d416cfc95194038365fce94" + integrity sha512-sf5aogfirH5ucD0d0hc2mKf2iyWsZsvXhr5kjxUQmgkcoflkGUWhc34sbSQVRQ1i8K5lkLIDH/q2s1Zr2SbzhQ== dependencies: - "@storybook/client-logger" "6.5.9" + "@storybook/client-logger" "6.5.13" core-js "^3.8.2" memoizerific "^1.11.3" qs "^6.10.0" @@ -3893,13 +3989,13 @@ core-js "^3.6.5" find-up "^4.1.0" -"@storybook/source-loader@6.5.9", "@storybook/source-loader@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/source-loader/-/source-loader-6.5.9.tgz#7b6f065c6a6108c4b4ca7e45bfd78707373d84ac" - integrity sha512-H03nFKaP6borfWMTTa9igBA+Jm2ph+FoVJImWC/X+LAmLSJYYSXuqSgmiZ/DZvbjxS4k8vccE2HXogne1IvaRA== +"@storybook/source-loader@6.5.13", "@storybook/source-loader@^6.5.9": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/source-loader/-/source-loader-6.5.13.tgz#40e6e42888b8c12b43a505ffa6c6f1f2cebb0b0d" + integrity sha512-tHuM8PfeB/0m+JigbaFp+Ld0euFH+fgOObH2W9rjEXy5vnwmaeex/JAdCprv4oL+LcDQEERqNULUUNIvbcTPAg== dependencies: - "@storybook/addons" "6.5.9" - "@storybook/client-logger" "6.5.9" + "@storybook/addons" "6.5.13" + "@storybook/client-logger" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" core-js "^3.8.2" estraverse "^5.2.0" @@ -3909,14 +4005,14 @@ prettier ">=2.2.1 <=2.3.0" regenerator-runtime "^0.13.7" -"@storybook/store@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/store/-/store-6.5.9.tgz#dc9963fc013636569082bd8f7200804866373735" - integrity sha512-80pcDTcCwK6wUA63aWOp13urI77jfipIVee9mpVvbNyfrNN8kGv1BS0z/JHDxuV6rC4g7LG1fb+BurR0yki7BA== +"@storybook/store@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/store/-/store-6.5.13.tgz#0281bdf0e24c880f85ea75ae47b6a84e8545b5f8" + integrity sha512-GG6lm+8fBX1tNUnX7x3raBOjYhhf14bPWLtYiPlxDTFEMs3sJte7zWKZq6NQ79MoBLL6jjzTeolBfDCBw6fiWQ== dependencies: - "@storybook/addons" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/core-events" "6.5.9" + "@storybook/addons" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/core-events" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" core-js "^3.8.2" fast-deep-equal "^3.1.3" @@ -3930,13 +4026,13 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/telemetry@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/telemetry/-/telemetry-6.5.9.tgz#8e1e0d4a89fc2387620045e5ea96c109d16a7247" - integrity sha512-JluoHCRhHAr4X0eUNVBSBi1JIBA92404Tu1TPdbN7x6gCZxHXXPTSUTAnspXp/21cTdMhY2x+kfZQ8fmlGK4MQ== +"@storybook/telemetry@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/telemetry/-/telemetry-6.5.13.tgz#a190001f679ce7899c72b53710765685281fe567" + integrity sha512-PFJEfGbunmfFWabD3rdCF8EHH+45578OHOkMPpXJjqXl94vPQxUH2XTVKQgEQJbYrgX0Vx9Z4tSkdMHuzYDbWQ== dependencies: - "@storybook/client-logger" "6.5.9" - "@storybook/core-common" "6.5.9" + "@storybook/client-logger" "6.5.13" + "@storybook/core-common" "6.5.13" chalk "^4.1.0" core-js "^3.8.2" detect-package-manager "^2.0.1" @@ -3948,30 +4044,30 @@ read-pkg-up "^7.0.1" regenerator-runtime "^0.13.7" -"@storybook/theming@6.5.9", "@storybook/theming@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-6.5.9.tgz#13f60a3a3cd73ceb5caf9f188e1627e79f1891aa" - integrity sha512-KM0AMP5jMQPAdaO8tlbFCYqx9uYM/hZXGSVUhznhLYu7bhNAIK7ZVmXxyE/z/khM++8eUHzRoZGiO/cwCkg9Xw== +"@storybook/theming@6.5.13", "@storybook/theming@^6.5.9": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-6.5.13.tgz#3f905eb9f72ddc28d096384290999057987f3083" + integrity sha512-oif5NGFAUQhizo50r+ctw2hZNLWV4dPHai+L/gFvbaSeRBeHSNkIcMoZ2FlrO566HdGZTDutYXcR+xus8rI28g== dependencies: - "@storybook/client-logger" "6.5.9" + "@storybook/client-logger" "6.5.13" core-js "^3.8.2" memoizerific "^1.11.3" regenerator-runtime "^0.13.7" -"@storybook/ui@6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-6.5.9.tgz#41e59279323cccc0d613974ec9782d797220c8a7" - integrity sha512-ryuPxJgtbb0gPXKGgGAUC+Z185xGAd1IvQ0jM5fJ0SisHXI8jteG3RaWhntOehi9qCg+64Vv6eH/cj9QYNHt1Q== - dependencies: - "@storybook/addons" "6.5.9" - "@storybook/api" "6.5.9" - "@storybook/channels" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/components" "6.5.9" - "@storybook/core-events" "6.5.9" - "@storybook/router" "6.5.9" +"@storybook/ui@6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-6.5.13.tgz#16b25fd839cdafc2b9989c548bc1ffb711b33dee" + integrity sha512-MklJuSg4Bc+MWjwhZVmZhJaucaeEBUMMa2V9oRWbIgZOdRHqdW72S2vCbaarDAYfBQdnfaoq1GkSQiw+EnWOzA== + dependencies: + "@storybook/addons" "6.5.13" + "@storybook/api" "6.5.13" + "@storybook/channels" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/components" "6.5.13" + "@storybook/core-events" "6.5.13" + "@storybook/router" "6.5.13" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.5.9" + "@storybook/theming" "6.5.13" core-js "^3.8.2" memoizerific "^1.11.3" qs "^6.10.0" @@ -3979,22 +4075,22 @@ resolve-from "^5.0.0" "@storybook/web-components@^6.5.9": - version "6.5.9" - resolved "https://registry.yarnpkg.com/@storybook/web-components/-/web-components-6.5.9.tgz#c767ad090edd07b027be5c058f700e1a12ef38a9" - integrity sha512-WfNsK98gX/sK15tW18WniveYfBdJP3sSfrTjg+4xiJq0wIQMdIHx+UUXtBxKdTUtdd4xO9+9kaDQO5/Ah1kxuw== + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/web-components/-/web-components-6.5.13.tgz#4556c1884798c773b56e83bb4ef58dff716d713b" + integrity sha512-udGRHkM3B6CA99mZJC/9k3Bf4BlaqJ8WjU3VYm0sCeYnwC0SF5YmAXExKwFzxBcKH0Vf/v1R4eMq/keEePnEag== dependencies: "@babel/plugin-syntax-dynamic-import" "^7.8.3" "@babel/plugin-syntax-import-meta" "^7.10.4" "@babel/preset-env" "^7.12.11" - "@storybook/addons" "6.5.9" - "@storybook/client-api" "6.5.9" - "@storybook/client-logger" "6.5.9" - "@storybook/core" "6.5.9" - "@storybook/core-common" "6.5.9" + "@storybook/addons" "6.5.13" + "@storybook/client-api" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/core" "6.5.13" + "@storybook/core-common" "6.5.13" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/docs-tools" "6.5.9" - "@storybook/preview-web" "6.5.9" - "@storybook/store" "6.5.9" + "@storybook/docs-tools" "6.5.13" + "@storybook/preview-web" "6.5.13" + "@storybook/store" "6.5.13" "@types/node" "^14.14.20 || ^16.0.0" "@types/webpack-env" "^1.16.0" babel-plugin-bundled-import-meta "^0.3.1" @@ -4006,6 +4102,13 @@ regenerator-runtime "^0.13.7" ts-dedent "^2.0.0" +"@swc/helpers@^0.4.2": + version "0.4.12" + resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.12.tgz#203243e78cff3c87c081c97ae548ab33e2503573" + integrity sha512-R6RmwS9Dld5lNvwKlPn62+piU+WDG1sMfsnfJioXCciyko/gZ0DQ4Mqglhq1iGU1nQ/RcGkAwfMH+elMSkJH3Q== + dependencies: + tslib "^2.4.0" + "@szmarczak/http-timer@^1.1.2": version "1.1.2" resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" @@ -4036,29 +4139,29 @@ integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== "@tsconfig/node10@^1.0.7": - version "1.0.8" - resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.8.tgz#c1e4e80d6f964fbecb3359c43bd48b40f7cadad9" - integrity sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg== + version "1.0.9" + resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2" + integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA== "@tsconfig/node12@^1.0.7": - version "1.0.9" - resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.9.tgz#62c1f6dee2ebd9aead80dc3afa56810e58e1a04c" - integrity sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw== + version "1.0.11" + resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d" + integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== "@tsconfig/node14@^1.0.0": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.1.tgz#95f2d167ffb9b8d2068b0b235302fafd4df711f2" - integrity sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg== + version "1.0.3" + resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1" + integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== "@tsconfig/node16@^1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.2.tgz#423c77877d0569db20e1fc80885ac4118314010e" - integrity sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA== + version "1.0.3" + resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e" + integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== -"@turist/fetch@^7.1.7": - version "7.1.7" - resolved "https://registry.yarnpkg.com/@turist/fetch/-/fetch-7.1.7.tgz#a2b1f7ec0265e6fe0946c51eef34bad9b9efc865" - integrity sha512-XP20kvfyMNlWdPVQXyuzA40LoCHbbJptikt7W+TlZ5sS+NNjk70xjXCtHBLEudp7li3JldXEFSIUzpW1a0WEhA== +"@turist/fetch@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@turist/fetch/-/fetch-7.2.0.tgz#57df869df1cd9b299588554eec4b8543effcc714" + integrity sha512-2x7EGw+6OJ29phunsbGvtxlNmSfcuPcyYudkMbi8gARCP9eJ1CtuMvnVUHL//O9Ixi9SJiug8wNt6lj86pN8XQ== dependencies: "@types/node-fetch" "2" @@ -4080,9 +4183,9 @@ integrity sha512-2TN6oiwtNjOezilFVl77zwdNPwQWaDBBCCWWxyo1ctiO3vAtd7H/aB/CBJdw9+kqq3+latD0SXoedIuHySSZWw== "@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": - version "7.1.17" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.17.tgz#f50ac9d20d64153b510578d84f9643f9a3afbe64" - integrity sha512-6zzkezS9QEIL8yCBvXWxPTJPNuMeECJVxSOhxNY/jfq9LxOTHivaYTqr37n9LknWWRTIkzqH2UilS5QFvfa90A== + version "7.1.19" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460" + integrity sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" @@ -4106,9 +4209,9 @@ "@babel/types" "^7.0.0" "@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": - version "7.14.2" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.14.2.tgz#ffcd470bbb3f8bf30481678fb5502278ca833a43" - integrity sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA== + version "7.18.2" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.2.tgz#235bf339d17185bdec25e024ca19cce257cc7309" + integrity sha512-FcFaxOr2V5KZCviw1TnutEMVUVsGt4D2hP1TAfXZAMKuHYW3xQhe3jTxNPWutgCJ3/X1c5yX8ZoGVEItxKbwBg== dependencies: "@babel/types" "^7.3.0" @@ -4137,17 +4240,17 @@ "@types/node" "*" "@types/responselike" "*" -"@types/chai-dom@^0.0.9": - version "0.0.9" - resolved "https://registry.yarnpkg.com/@types/chai-dom/-/chai-dom-0.0.9.tgz#77379354efec2568284ca355fff6a4f85f5a66f4" - integrity sha512-jj4F2NJog2/GBYsyJ8+NvhnWUBbPY4MUAKLdPJE6+568rw12GGXvj0ycUuP5nndVrnJgozmJAoMTvxvjJATXWw== +"@types/chai-dom@^0.0.12": + version "0.0.12" + resolved "https://registry.yarnpkg.com/@types/chai-dom/-/chai-dom-0.0.12.tgz#fdd7a52bed4dd235ed1c94d3d2d31d4e7db1d03a" + integrity sha512-4rE7sDw713cV61TYzQbMrPjC4DjNk3x4vk9nAVRNXcSD4p0/5lEEfm0OgoCz5eNuWUXNKA0YiKiH/JDTuKivkA== dependencies: "@types/chai" "*" -"@types/chai@*", "@types/chai@^4.1.7", "@types/chai@^4.2.11", "@types/chai@^4.2.12": - version "4.3.0" - resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.0.tgz#23509ebc1fa32f1b4d50d6a66c4032d5b8eaabdc" - integrity sha512-/ceqdqeRraGolFTcfoXNiqjyQhZzbINDngeoAq9GoHa8PPK1yNzTaxWjA6BFWp5Ua9JpXEMSS4s5i9tS0hOJtw== +"@types/chai@*", "@types/chai@^4.1.7", "@types/chai@^4.2.11", "@types/chai@^4.2.12", "@types/chai@^4.3.1": + version "4.3.3" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.3.tgz#3c90752792660c4b562ad73b3fbd68bf3bc7ae07" + integrity sha512-hC7OMnszpxhZPduX+m+nrx+uFoLkWOMiR4oa/AZF3MuSETYTZmFfJAHqZEM8MVlvfG7BEUcgvtwoCTxBp6hm3g== "@types/co-body@^6.1.0": version "6.1.0" @@ -4185,9 +4288,9 @@ "@types/node" "*" "@types/content-disposition@*": - version "0.5.4" - resolved "https://registry.yarnpkg.com/@types/content-disposition/-/content-disposition-0.5.4.tgz#de48cf01c79c9f1560bcfd8ae43217ab028657f8" - integrity sha512-0mPF08jn9zYI0n0Q/Pnz7C4kThdSt+6LD4amsrYDDpgBfrVWa3TcCOxKX1zkGgYniGagRv8heN2cbh+CAn+uuQ== + version "0.5.5" + resolved "https://registry.yarnpkg.com/@types/content-disposition/-/content-disposition-0.5.5.tgz#650820e95de346e1f84e30667d168c8fd25aa6e3" + integrity sha512-v6LCdKfK6BwcqMo+wYW05rLS12S0ZO0Fl4w1h4aaZMD7bqT3gVUns6FvLJKGZHQmYn3SX55JWGpziwJRwVgutA== "@types/convert-source-map@^1.5.1": version "1.5.2" @@ -4225,22 +4328,22 @@ integrity sha512-orGL5LXERPYsLov6CWs3Fh6203+dXzJkR7OnddIr2514Hsecwc8xRpzCapshBbKFImCsvS/mk6+FWiN5LyZJAQ== "@types/eslint-scope@^3.7.3": - version "3.7.3" - resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.3.tgz#125b88504b61e3c8bc6f870882003253005c3224" - integrity sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g== + 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.2.1" - resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.2.1.tgz#13f3d69bac93c2ae008019c28783868d0a1d6605" - integrity sha512-UP9rzNn/XyGwb5RQ2fok+DzcIRIYwc16qTXse5+Smsy8MOIccCChT15KAwnsgQx4PzJkaMq4myFyZ4CL5TjhIQ== + version "8.4.9" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.4.9.tgz#f7371980148697f4b582b086630319b55324b5aa" + integrity sha512-jFCSo4wJzlHQLCpceUhUnXdrPuCNOjGFMQ8Eg6JXxlz3QaCKOb7eGi2cephQdM4XTYsNej69P9JDJ1zqNIbncQ== dependencies: "@types/estree" "*" "@types/json-schema" "*" -"@types/eslint@^7.28.2": +"@types/eslint@^7.29.0": version "7.29.0" resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-7.29.0.tgz#e56ddc8e542815272720bb0b4ccc2aff9c3e1c78" integrity sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng== @@ -4249,9 +4352,9 @@ "@types/json-schema" "*" "@types/estree@*": - version "0.0.50" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.50.tgz#1e0caa9364d3fccd2931c3ed96fdbeaa5d4cca83" - integrity sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw== + 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.39": version "0.0.39" @@ -4264,18 +4367,18 @@ integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== "@types/express-serve-static-core@^4.17.18": - version "4.17.27" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.27.tgz#7a776191e47295d2a05962ecbb3a4ce97e38b401" - integrity sha512-e/sVallzUTPdyOTiqi8O8pMdBBphscvI6E4JYaKlja4Lm+zh7UFSSdW5VMkRbhDtmrONqOUHOXRguPsDckzxNA== + version "4.17.31" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz#a1139efeab4e7323834bb0226e62ac019f474b2f" + integrity sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q== dependencies: "@types/node" "*" "@types/qs" "*" "@types/range-parser" "*" "@types/express@*": - version "4.17.13" - resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.13.tgz#a76e2995728999bab51a33fabce1d705a3709034" - integrity sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA== + version "4.17.14" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.14.tgz#143ea0557249bc1b3b54f15db4c81c3d4eb3569c" + integrity sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg== dependencies: "@types/body-parser" "*" "@types/express-serve-static-core" "^4.17.18" @@ -4287,10 +4390,10 @@ resolved "https://registry.yarnpkg.com/@types/get-port/-/get-port-3.2.0.tgz#f9e0a11443cc21336470185eae3dfba4495d29bc" integrity sha512-TiNg8R1kjDde5Pub9F9vCwZA/BNW9HeXP5b9j7Qucqncy/McfPZ6xze/EyBdXS5FhMIGN6Fx3vg75l5KHy3V1Q== -"@types/glob@*", "@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== +"@types/glob@*": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@types/glob/-/glob-8.0.0.tgz#321607e9cbaec54f687a0792b2d1d370739455d2" + integrity sha512-l6NQsDDyQUVeoTynNpC9uRvCUint/gSUXQA2euwmTuWGvPY5LSDUu6tkCtJB2SvGQlJQzLaKqcGZP4//7EDveA== dependencies: "@types/minimatch" "*" "@types/node" "*" @@ -4303,6 +4406,14 @@ "@types/minimatch" "*" "@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.5" resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" @@ -4333,14 +4444,14 @@ integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ== "@types/http-errors@*": - version "1.8.1" - resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-1.8.1.tgz#e81ad28a60bee0328c6d2384e029aec626f1ae67" - integrity sha512-e+2rjEwK6KDaNOm5Aa9wNGgyS9oSZU/4pfSMMPYNOfjvFI0WVXm29+ITRFr6aKDvvKo7uU1jV68MW4ScsfDi7Q== + version "2.0.0" + resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.0.tgz#c1f34eee7f9fd5ddee366d15e2fc39b93c31532a" + integrity sha512-6mkB8Gx7Of1yjqqh1nLH22ATNol5+mIXVFaQCOQY+R3JxB6/soiqKAxBgdSE6R/1IWu69rR4cJ/027TxLEs/Vg== "@types/http-proxy@^1.17.7": - version "1.17.8" - resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.8.tgz#968c66903e7e42b483608030ee85800f22d03f55" - integrity sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA== + version "1.17.9" + resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.9.tgz#7f0e7931343761efde1e2bf48c40f02f3f75705a" + integrity sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw== dependencies: "@types/node" "*" @@ -4368,14 +4479,6 @@ dependencies: "@types/istanbul-lib-coverage" "*" -"@types/istanbul-reports@^1.1.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz#e875cc689e47bce549ec81f3df5e6f6f11cfaeb2" - integrity sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw== - dependencies: - "@types/istanbul-lib-coverage" "*" - "@types/istanbul-lib-report" "*" - "@types/istanbul-reports@^3.0.0": version "3.0.1" resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" @@ -4391,20 +4494,15 @@ jest-diff "^26.0.0" pretty-format "^26.0.0" -"@types/json-patch@0.0.30": - version "0.0.30" - resolved "https://registry.yarnpkg.com/@types/json-patch/-/json-patch-0.0.30.tgz#7c562173216c50529e70126ceb8e7a533f865e9b" - integrity sha512-MhCUjojzDhVLnZnxwPwa+rETFRDQ0ffjxYdrqOP6TBO2O0/Z64PV5tNeYApo4bc4y4frbWOrRwv/eEkXlI13Rw== - "@types/json-schema@*", "@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": - version "7.0.9" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" - integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== + 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== "@types/json5@^0.0.29": version "0.0.29" resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" - integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= + integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== "@types/keygrip@*": version "1.0.2" @@ -4412,11 +4510,11 @@ integrity sha512-GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw== "@types/keyv@*": - version "3.1.3" - resolved "https://registry.yarnpkg.com/@types/keyv/-/keyv-3.1.3.tgz#1c9aae32872ec1f20dcdaee89a9f3ba88f465e41" - integrity sha512-FXCJgyyN3ivVgRoml4h94G/p3kY+u/B86La+QptcqJaWtBWtmc6TtkNfS40n9bIvyLteHh7zXOtgbobORKPbDg== + version "4.2.0" + resolved "https://registry.yarnpkg.com/@types/keyv/-/keyv-4.2.0.tgz#65b97868ab757906f2dbb653590d7167ad023fa0" + integrity sha512-xoBtGl5R9jeKUhc8ZqeYaRDx04qqJ10yhhXYGmJ4Jr8qKpvMsDQQrNUvF/wUJ4klOtmJeJM+p2Xo3zp9uaC3tw== dependencies: - "@types/node" "*" + keyv "*" "@types/koa-compose@*": version "3.2.5" @@ -4426,9 +4524,9 @@ "@types/koa" "*" "@types/koa@*", "@types/koa@^2.11.6": - version "2.13.4" - resolved "https://registry.yarnpkg.com/@types/koa/-/koa-2.13.4.tgz#10620b3f24a8027ef5cbae88b393d1b31205726b" - integrity sha512-dfHYMfU+z/vKtQB7NUrthdAEiSvnLebvBjwHtfFmpZmB7em2N3WVQdHgnFq+xvyVgxW5jKDmjWfLD3lw4g4uTw== + version "2.13.5" + resolved "https://registry.yarnpkg.com/@types/koa/-/koa-2.13.5.tgz#64b3ca4d54e08c0062e89ec666c9f45443b21a61" + integrity sha512-HSUOdzKz3by4fnqagwthW/1w/yJspTgppyyalPVbgZf8jQWvdIXcVW5h2DGtw4zYntOaeRGx49r1hxoPWrD4aA== dependencies: "@types/accepts" "*" "@types/content-disposition" "*" @@ -4440,9 +4538,9 @@ "@types/node" "*" "@types/lodash@^4.14.167", "@types/lodash@^4.14.92": - version "4.14.182" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.182.tgz#05301a4d5e62963227eaafe0ce04dd77c54ea5c2" - integrity sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q== + version "4.14.186" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.186.tgz#862e5514dd7bd66ada6c70ee5fce844b06c8ee97" + integrity sha512-eHcVlLXP0c2FlMPm56ITode2AgLMSa6aJ05JTTbYbI+7EMkCEE5qk2E41d5g2lCVTqRe0GnnRFurmlCsDODrPw== "@types/mdast@^3.0.0": version "3.0.10" @@ -4458,12 +4556,17 @@ dependencies: "@types/react" "*" -"@types/mime@^1": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" - integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== +"@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@*", "@types/minimatch@^3.0.3": +"@types/minimatch@*": + version "5.1.2" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" + integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA== + +"@types/minimatch@^3.0.3": version "3.0.5" resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== @@ -4486,32 +4589,32 @@ integrity sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw== "@types/node-fetch@2", "@types/node-fetch@^2.5.7": - version "2.5.12" - resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.5.12.tgz#8a6f779b1d4e60b7a57fb6fd48d84fb545b9cc66" - integrity sha512-MKgC4dlq4kKNa/mYrwpKfzQMB5X3ee5U6fSprkKpToBqBmX4nFZL9cW5jl6sWn+xpRJ7ypWh2yyqqr8UUCstSw== + 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@>=10.0.0": - version "17.0.40" - resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.40.tgz#76ee88ae03650de8064a6cf75b8d95f9f4a16090" - integrity sha512-UXdBxNGqTMtm7hCwh9HtncFVLrXoqA3oJW30j6XWp5BH/wu3mVeaxo7cq5benFdBw34HB3XDT2TRPI7rXZ+mDg== + version "18.11.7" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.7.tgz#8ccef136f240770c1379d50100796a6952f01f94" + integrity sha512-LhFTglglr63mNXUSRYD8A+ZAIu5sFqNJ4Y2fPuY7UlrySJH87rRRlhtVmMHplmfk5WkoJGmDjE9oiTfyX94CpQ== "@types/node@^12.7.1": - version "12.20.39" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.39.tgz#ef3cb119eaba80e9f1012c78b9384a7489a18bf6" - integrity sha512-U7PMwkDmc3bnL0e4U8oA0POpi1vfsYDc+DEUS2+rPxm9NlLcW1dBa5JcRhO633PoPUcCSWMNXrMsqhmAVEo+IQ== + version "12.20.55" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" + integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== "@types/node@^14.0.10 || ^16.0.0", "@types/node@^14.14.20 || ^16.0.0": - version "16.11.17" - resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.17.tgz#ae146499772e33fc6382e1880bc567e41a528586" - integrity sha512-C1vTZME8cFo8uxY2ui41xcynEotVkczIVI5AjLmy5pkpBv/FtG+jhtOlfcPysI8VRVwoOMv6NJm44LGnoMSWkw== + version "16.18.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.2.tgz#77878acc68c5f6241454008beedd39513bd8e851" + integrity sha512-KIGQJyya+opDCFvDSZMNNS899ov5jlNdtN7PypgHWeb8e+5vWISdwTRo/ClsNVlmDihzOGqFyNBDamUs7TQQCA== "@types/node@^14.14.6": - version "14.18.3" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.3.tgz#b3682cfd9d5542b025df13233d073cb4347f63f3" - integrity sha512-GtTH2crF4MtOIrrAa+jgTV9JX/PfoUCYr6MiZw7O/dkZu5b6gm5dc1nAL0jwGo4ortSBBtGyeVaxdC8X6V+pLg== + version "14.18.33" + resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.33.tgz#8c29a0036771569662e4635790ffa9e057db379b" + integrity sha512-qelS/Ra6sacc4loe/3MSjXNL1dNQ/GjxNHVzuChwMfmk7HuycRLVQN2qNY3XahK+fZc5E2szqQSKUyAF0E+2bg== "@types/node@^8.5.7": version "8.10.66" @@ -4544,9 +4647,9 @@ integrity sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g== "@types/prettier@^2.1.5": - version "2.4.2" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.2.tgz#4c62fae93eb479660c3bd93f9d24d561597a8281" - integrity sha512-ekoj4qOQYp7CvjX8ZDBgN86w3MqQhLE1hczEJbEIjgFEumDy+na/4AJAbLXfgEWFNB2pKadM5rPFtuSGMWK7xA== + version "2.7.1" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.1.tgz#dfd20e2dc35f027cdd6c1908e80a5ddc7499670e" + integrity sha512-ri0UmynRRvZiiUJdiz38MmIblKK+oH30MztdBVR95dv/Ubw6neWSb8u1XpRb72L4qsZOhz+L+z9JD40SJmfWow== "@types/pretty-hrtime@^1.0.0": version "1.0.1" @@ -4554,14 +4657,9 @@ integrity sha512-VjID5MJb1eGKthz2qUerWT8+R4b9N+CHvGCzg9fn4kWZgaF9AhdYikQio3R7wV8YY1NsQKPaCwKz1Yff+aHNUQ== "@types/prop-types@*": - version "15.7.4" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.4.tgz#fcf7205c25dff795ee79af1e30da2c9790808f11" - integrity sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ== - -"@types/q@^1.5.1": - version "1.5.5" - resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.5.tgz#75a2a8e7d8ab4b230414505d92335d1dcb53a6df" - integrity sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ== + 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@*", "@types/qs@^6.9.5": version "6.9.7" @@ -4573,19 +4671,19 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== -"@types/reach__router@^1.3.9": - version "1.3.10" - resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.3.10.tgz#141d500213a452d9d9d71d5ad96c4104094f55a3" - integrity sha512-iHAFGaVOrWi00/q7oBybggGsz5TOmwOW4M1H9sT7i9lly4qFC8XOgsdf6jUsoaOz2sknFHALEtZqCoDbokdJ2Q== +"@types/reach__router@^1.3.10": + version "1.3.11" + resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.3.11.tgz#528af5d73f76b42cf7de5664cdd1b728dee78e31" + integrity sha512-j23ChnIEiW8aAP4KT8OVyTXOFr+Ri65BDnwzmfHFO9WHypXYevHFjeil1Cj7YH3emfCE924BwAmgW4hOv7Wg3g== dependencies: "@types/react" "*" "@types/react-dom@^17.0.0": - version "17.0.11" - resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.11.tgz#e1eadc3c5e86bdb5f7684e00274ae228e7bcc466" - integrity sha512-f96K3k+24RaLGVu/Y2Ng3e1EbZ8/cVJvypZWd7cy0ofCBaf2lcM46xNhycMZ2xGwbBjRql7hOlZ+e2WlJ5MH3Q== + version "17.0.18" + resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.18.tgz#8f7af38f5d9b42f79162eea7492e5a1caff70dc2" + integrity sha512-rLVtIfbwyur2iFKykP2w0pl/1unw26b5td16d5xMgp7/yjTHomkyxPYChFoCr/FtEX1lN9wY6lFj1qvKdS5kDw== dependencies: - "@types/react" "*" + "@types/react" "^17" "@types/react-helmet@^6.1.0": version "6.1.5" @@ -4594,17 +4692,19 @@ dependencies: "@types/react" "*" -"@types/react-syntax-highlighter@11.0.5": - version "11.0.5" - resolved "https://registry.yarnpkg.com/@types/react-syntax-highlighter/-/react-syntax-highlighter-11.0.5.tgz#0d546261b4021e1f9d85b50401c0a42acb106087" - integrity sha512-VIOi9i2Oj5XsmWWoB72p3KlZoEbdRAcechJa8Ztebw7bDl2YmR+odxIqhtJGp1q2EozHs02US+gzxJ9nuf56qg== +"@types/react@*": + version "18.0.24" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.24.tgz#2f79ed5b27f08d05107aab45c17919754cc44c20" + integrity sha512-wRJWT6ouziGUy+9uX0aW4YOJxAY0bG6/AOk5AW5QSvZqI7dk6VBIbXvcVgIw/W5Jrl24f77df98GEKTJGOLx7Q== dependencies: - "@types/react" "*" + "@types/prop-types" "*" + "@types/scheduler" "*" + csstype "^3.0.2" -"@types/react@*", "@types/react@^17.0.1": - version "17.0.38" - resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.38.tgz#f24249fefd89357d5fa71f739a686b8d7c7202bd" - integrity sha512-SI92X1IA+FMnP3qM5m4QReluXzhcmovhZnLNm3pyeQlooi02qI7sLiepEYqT678uNiyc25XfCqxREFpy3W7YhQ== +"@types/react@^17", "@types/react@^17.0.1": + version "17.0.52" + resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.52.tgz#10d8b907b5c563ac014a541f289ae8eaa9bf2e9b" + integrity sha512-vwk8QqVODi0VaZZpDXQCmEmiOuyjEFPY7Ttaw5vjM112LOq37yz1CDJGrRJwA1fYEq4Iitd5rnjd1yWAc/bT+A== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -4648,27 +4748,39 @@ integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== "@types/serve-static@*": - version "1.13.10" - resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.10.tgz#f5e0ce8797d2d7cc5ebeda48a52c96c4fa47a8d9" - integrity sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ== + 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/sharp@^0.30.5": + version "0.30.5" + resolved "https://registry.yarnpkg.com/@types/sharp/-/sharp-0.30.5.tgz#d75d91f7acf5260525aeae229845046dcff6d17a" + integrity sha512-EhO29617AIBqxoVtpd1qdBanWpspk/kD2B6qTFRJ31Q23Rdf+DNU1xlHSwtqvwq1vgOqBwq1i38SX+HGCymIQg== dependencies: - "@types/mime" "^1" "@types/node" "*" "@types/sinon-chai@^3.2.3": - version "3.2.7" - resolved "https://registry.yarnpkg.com/@types/sinon-chai/-/sinon-chai-3.2.7.tgz#5d4c7b08802e017c02ef2f3fc886f055f182faa5" - integrity sha512-vpW7l+fY6C/E+i7HnPTpoKfspNI6OBumaD6XNJk8UYXW+UTPmLlge8+dUCQsxkp730Xgjzpq0g9w+briOOWUQA== + version "3.2.8" + resolved "https://registry.yarnpkg.com/@types/sinon-chai/-/sinon-chai-3.2.8.tgz#5871d09ab50d671d8e6dd72e9073f8e738ac61dc" + integrity sha512-d4ImIQbT/rKMG8+AXpmcan5T2/PNeSjrYhvkwet6z0p8kzYtfgA32xzOBlbU0yqJfq+/0Ml805iFoODO0LP5/g== dependencies: "@types/chai" "*" "@types/sinon" "*" "@types/sinon@*": - version "10.0.6" - resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-10.0.6.tgz#bc3faff5154e6ecb69b797d311b7cf0c1b523a1d" - integrity sha512-6EF+wzMWvBNeGrfP3Nx60hhx+FfwSg1JJBLAAP/IdIUq0EYkqCYf70VT3PhuhPX9eLD+Dp+lNdpb/ZeHG8Yezg== + version "10.0.13" + resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-10.0.13.tgz#60a7a87a70d9372d0b7b38cc03e825f46981fb83" + integrity sha512-UVjDqJblVNQYvVNUsj0PuYYw0ELRmgt1Nt5Vk0pT5f16ROGfcKJY8o1HVuMOJOpD727RrGB9EGvoaTQE5tgxZQ== dependencies: - "@sinonjs/fake-timers" "^7.1.0" + "@types/sinonjs__fake-timers" "*" + +"@types/sinonjs__fake-timers@*": + version "8.1.2" + resolved "https://registry.yarnpkg.com/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.2.tgz#bf2e02a3dbd4aecaf95942ecd99b7402e03fad5e" + integrity sha512-9GcLXF0/v3t80caGs5p2rRfkB+a8VBGLJZVih6CNFkx8IZ994wiKKLSRs9nuFwk1HevWs/1mnUmkApGrSGsShA== "@types/source-list-map@*": version "0.1.2" @@ -4696,9 +4808,9 @@ integrity sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg== "@types/uglify-js@*": - version "3.13.1" - resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.13.1.tgz#5e889e9e81e94245c75b6450600e1c5ea2878aea" - integrity sha512-O3MmRAk6ZuAKa9CHgg0Pr0+lUOqoMLpc9AS4R8ano2auvsg7IE8syF3Xh/NPr26TWklxYcqoEEFdzLLs1fV9PQ== + 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" @@ -4724,9 +4836,9 @@ "@types/vfile-message" "*" "@types/webpack-env@^1.16.0": - version "1.16.3" - resolved "https://registry.yarnpkg.com/@types/webpack-env/-/webpack-env-1.16.3.tgz#b776327a73e561b71e7881d0cd6d34a1424db86a" - integrity sha512-9gtOPPkfyNoEqCQgx4qJKkuNm/x0R2hKR7fdl7zvTJyHnIisuE/LfvXOsYWL0o3qq6uiBnKZNNNzi3l0y/X+xw== + 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" @@ -4738,9 +4850,9 @@ source-map "^0.7.3" "@types/webpack@^4.41.26": - version "4.41.32" - resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.32.tgz#a7bab03b72904070162b2f169415492209e94212" - integrity sha512-cb+0ioil/7oz5//7tZUSwbrSAN/NWHrQylz5cW8G0dWTcF/g+/dSdMlKVZspBYuMAN1+WnwHrkxiRrLcwd0Heg== + 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" @@ -4764,9 +4876,9 @@ "@types/node" "*" "@types/yargs-parser@*": - version "20.2.1" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.1.tgz#3b9ce2489919d9e4fea439b76916abc34b2df129" - integrity sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw== + 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.14" @@ -4783,9 +4895,9 @@ "@types/yargs-parser" "*" "@types/yauzl@^2.9.1": - version "2.9.2" - resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.9.2.tgz#c48e5d56aff1444409e39fa164b0b4d4552a7b7a" - integrity sha512-8uALY5LTvSuHgloDVUvWP3pIauILm+8/0pDMokuDYIoNsOkSwd5AiHBTSEJjKTDcZr5z8UpgOWZkxBF4iJftoA== + version "2.10.0" + resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.10.0.tgz#b3248295276cf8c6f153ebe6a9aba0c988cb2599" + integrity sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw== dependencies: "@types/node" "*" @@ -4834,17 +4946,7 @@ eslint-scope "^5.1.1" eslint-utils "^3.0.0" -"@typescript-eslint/parser@^4.33.0": - version "4.33.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.33.0.tgz#dfe797570d9694e560528d18eecad86c8c744899" - integrity sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA== - dependencies: - "@typescript-eslint/scope-manager" "4.33.0" - "@typescript-eslint/types" "4.33.0" - "@typescript-eslint/typescript-estree" "4.33.0" - debug "^4.3.1" - -"@typescript-eslint/parser@^5.41.0": +"@typescript-eslint/parser@^4.33.0", "@typescript-eslint/parser@^5.41.0": version "5.41.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.41.0.tgz#0414a6405007e463dc527b459af1f19430382d67" integrity sha512-HQVfix4+RL5YRWZboMD1pUfFN8MpRH4laziWkkAzyO1fvNOY/uinZcvo3QiFJVS/siNHupV8E5+xSwQZrl6PZA== @@ -4947,9 +5049,11 @@ eslint-visitor-keys "^3.3.0" "@vercel/webpack-asset-relocator-loader@^1.7.0": - version "1.7.0" - resolved "https://registry.yarnpkg.com/@vercel/webpack-asset-relocator-loader/-/webpack-asset-relocator-loader-1.7.0.tgz#d3b707e0aba3111719f941dacb2408eff3c27319" - integrity sha512-1Dy3BdOliDwxA7VZSIg55E1d/us2KvsCQOZV25fgufG//CsnZBGiSAL7qewTQf7YVHH0A9PHgzwMmKIZ8aFYVw== + version "1.7.3" + resolved "https://registry.yarnpkg.com/@vercel/webpack-asset-relocator-loader/-/webpack-asset-relocator-loader-1.7.3.tgz#e65ca1fd9feb045039788f9b4710e5acc84b01b0" + integrity sha512-vizrI18v8Lcb1PmNNUBz7yxPxxXoOeuaVEjTG9MjvDrphjiSxFZrRJ5tIghk+qdLFRCXI5HBCshgobftbmrC5g== + dependencies: + resolve "^1.10.0" "@web/browser-logs@^0.2.1", "@web/browser-logs@^0.2.2": version "0.2.5" @@ -4965,17 +5069,17 @@ dependencies: semver "^7.3.4" -"@web/dev-server-core@^0.3.16", "@web/dev-server-core@^0.3.17": - version "0.3.17" - resolved "https://registry.yarnpkg.com/@web/dev-server-core/-/dev-server-core-0.3.17.tgz#95e87681b63644a955e29e13ffc6b48fd2c51264" - integrity sha512-vN1dwQ8yDHGiAvCeUo9xFfjo+pFl8TW+pON7k9kfhbegrrB8CKhJDUxmHbZsyQUmjf/iX57/LhuWj1xGhRL8AA== +"@web/dev-server-core@^0.3.18", "@web/dev-server-core@^0.3.19": + version "0.3.19" + resolved "https://registry.yarnpkg.com/@web/dev-server-core/-/dev-server-core-0.3.19.tgz#b61f9a0b92351371347a758b30ba19e683c72e94" + integrity sha512-Q/Xt4RMVebLWvALofz1C0KvP8qHbzU1EmdIA2Y1WMPJwiFJFhPxdr75p9YxK32P2t0hGs6aqqS5zE0HW9wYzYA== dependencies: "@types/koa" "^2.11.6" "@types/ws" "^7.4.0" "@web/parse5-utils" "^1.2.0" chokidar "^3.4.3" clone "^2.1.2" - es-module-lexer "^0.9.0" + es-module-lexer "^1.0.0" get-stream "^6.0.0" is-stream "^2.0.0" isbinaryfile "^4.0.6" @@ -4989,28 +5093,28 @@ picomatch "^2.2.2" ws "^7.4.2" -"@web/dev-server-rollup@^0.3.13": - version "0.3.13" - resolved "https://registry.yarnpkg.com/@web/dev-server-rollup/-/dev-server-rollup-0.3.13.tgz#097307fd229f25755b46fc6abef8cf727d8647e6" - integrity sha512-QaxEtsdL6+fktIa1ZL8VEtq4U7WB7ikKEnxkbhUpFknB+WSvwx6DUrvyBDuPckunpczCnljXBFPugu+2W6N8Fg== +"@web/dev-server-rollup@^0.3.19": + version "0.3.19" + resolved "https://registry.yarnpkg.com/@web/dev-server-rollup/-/dev-server-rollup-0.3.19.tgz#188f3a37bcc38f4dc1b208663b14ab2d17321a57" + integrity sha512-IwiwI+fyX0YuvAOldStlYJ+Zm/JfSCk9OSGIs7+fWbOYysEHwkEVvBwoPowaclSZA44Tobvqt+6ej9udbbZ/WQ== dependencies: - "@rollup/plugin-node-resolve" "^11.0.1" - "@web/dev-server-core" "^0.3.16" + "@rollup/plugin-node-resolve" "^13.0.4" + "@web/dev-server-core" "^0.3.19" nanocolors "^0.2.1" parse5 "^6.0.1" - rollup "^2.58.0" + rollup "^2.67.0" whatwg-url "^11.0.0" -"@web/dev-server@^0.1.24": - version "0.1.28" - resolved "https://registry.yarnpkg.com/@web/dev-server/-/dev-server-0.1.28.tgz#fcd8a074e71554594361930803dbd0a1380d6d29" - integrity sha512-964NqgatvFWX7LM8QGlB1XpcJoUQRXZPiEn3XKgDIUSNS6JNCjGfQQ+TfxBlT5KBHYJakDYbTk+sdEeRi2gaLw== +"@web/dev-server@^0.1.35": + version "0.1.35" + resolved "https://registry.yarnpkg.com/@web/dev-server/-/dev-server-0.1.35.tgz#d845822d7c3c7749adf03f7abac4a69e2a4490cc" + integrity sha512-E7TSTSFdGPzhkiE3kIVt8i49gsiAYpJIZHzs1vJmVfdt8U4rsmhE+5roezxZo0hkEw4mNsqj9zCc4Dzqy/IFHg== dependencies: "@babel/code-frame" "^7.12.11" "@types/command-line-args" "^5.0.0" "@web/config-loader" "^0.1.3" - "@web/dev-server-core" "^0.3.17" - "@web/dev-server-rollup" "^0.3.13" + "@web/dev-server-core" "^0.3.19" + "@web/dev-server-rollup" "^0.3.19" camelcase "^6.2.0" command-line-args "^5.1.1" command-line-usage "^6.1.1" @@ -5019,7 +5123,7 @@ ip "^1.1.5" nanocolors "^0.2.1" open "^8.0.2" - portfinder "^1.0.28" + portfinder "^1.0.32" "@web/parse5-utils@^1.2.0": version "1.3.0" @@ -5029,36 +5133,28 @@ "@types/parse5" "^6.0.1" parse5 "^6.0.1" -"@web/test-runner-chrome@^0.10.5": - version "0.10.5" - resolved "https://registry.yarnpkg.com/@web/test-runner-chrome/-/test-runner-chrome-0.10.5.tgz#66b4390a78149bfc5b696cba6b26deac665a1703" - integrity sha512-1dF7bEMe6Jb42z5VFreis4rafe0DLBq4PUjqkYbXlHCFbwnc3zWJFgU73ns8lIt9HCo/ADIWUFuPXrqmWoFBFQ== +"@web/test-runner-chrome@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@web/test-runner-chrome/-/test-runner-chrome-0.11.0.tgz#41efe67cd09d9a0e5392fadc35f2fb44edf32f3d" + integrity sha512-3Eq8C1XEGmfq7iwUvXy0xXfI/fbJNIq2ImDKTVdnwT4+5uTt1i8UFZxZ0PLdkWrhXVtiWI6zcZK/2VBzsGyHBA== dependencies: "@web/test-runner-core" "^0.10.20" - "@web/test-runner-coverage-v8" "^0.4.8" + "@web/test-runner-coverage-v8" "^0.5.0" chrome-launcher "^0.15.0" - puppeteer-core "^11.0.0" - -"@web/test-runner-commands@^0.5.10", "@web/test-runner-commands@^0.5.7": - version "0.5.13" - resolved "https://registry.yarnpkg.com/@web/test-runner-commands/-/test-runner-commands-0.5.13.tgz#57ea472c00ee2ada99eb9bb5a0371200922707c2" - integrity sha512-FXnpUU89ALbRlh9mgBd7CbSn5uzNtr8gvnQZPOvGLDAJ7twGvZdUJEAisPygYx2BLPSFl3/Mre8pH8zshJb8UQ== - dependencies: - "@web/test-runner-core" "^0.10.20" - mkdirp "^1.0.4" + puppeteer-core "^13.1.3" -"@web/test-runner-commands@^0.6.0": - version "0.6.0" - resolved "https://registry.yarnpkg.com/@web/test-runner-commands/-/test-runner-commands-0.6.0.tgz#aa1e2729582d506e5c4bc85c11179359be65d74b" - integrity sha512-jSYBYRnYceGoiXEmfhOyu9UrDcQ6rXH5q99Km+9+lGAb4XjeY9H0y1+uz27QzD58Rja78LIOLtcRMC8t7S0b9w== +"@web/test-runner-commands@^0.6.1", "@web/test-runner-commands@^0.6.3", "@web/test-runner-commands@^0.6.5": + version "0.6.5" + resolved "https://registry.yarnpkg.com/@web/test-runner-commands/-/test-runner-commands-0.6.5.tgz#69a2a06b52fd9d329f9cf1e172cd8fb1d5ffc521" + integrity sha512-W+wLg10jEAJY9N6tNWqG1daKmAzxGmTbO/H9fFfcgOgdxdn+hHiR4r2/x1iylKbFLujHUQlnjNQeu2d6eDPFqg== dependencies: - "@web/test-runner-core" "^0.10.20" + "@web/test-runner-core" "^0.10.27" mkdirp "^1.0.4" -"@web/test-runner-core@^0.10.20", "@web/test-runner-core@^0.10.22": - version "0.10.22" - resolved "https://registry.yarnpkg.com/@web/test-runner-core/-/test-runner-core-0.10.22.tgz#34bb67d12a79b01dc79c816f3d76f3419ef50eaf" - integrity sha512-0jzJIl/PTZa6PCG/noHAFZT2DTcp+OYGmYOnZ2wcHAO3KwtJKnBVSuxgdOzFdmfvoO7TYAXo5AH+MvTZXMWsZw== +"@web/test-runner-core@^0.10.20", "@web/test-runner-core@^0.10.27": + version "0.10.27" + resolved "https://registry.yarnpkg.com/@web/test-runner-core/-/test-runner-core-0.10.27.tgz#8d1430f2364fb36b3ac15b9b43034fae9d94e177" + integrity sha512-ClV/hSxs4wDm/ANFfQOdRRFb/c0sYywC1QfUXG/nS4vTp3nnt7x7mjydtMGGLmvK9f6Zkubkc1aa+7ryfmVwNA== dependencies: "@babel/code-frame" "^7.12.11" "@types/babel__code-frame" "^7.0.2" @@ -5068,7 +5164,7 @@ "@types/istanbul-lib-coverage" "^2.0.3" "@types/istanbul-reports" "^3.0.0" "@web/browser-logs" "^0.2.1" - "@web/dev-server-core" "^0.3.16" + "@web/dev-server-core" "^0.3.18" chokidar "^3.4.3" cli-cursor "^3.1.0" co-body "^6.1.0" @@ -5087,15 +5183,15 @@ picomatch "^2.2.2" source-map "^0.7.3" -"@web/test-runner-coverage-v8@^0.4.8": - version "0.4.8" - resolved "https://registry.yarnpkg.com/@web/test-runner-coverage-v8/-/test-runner-coverage-v8-0.4.8.tgz#d4ff9ebd9c48312d09a7391abbfdfc47f21e9d0d" - integrity sha512-Ib0AscR8Xf9E/V7rf3XOVQTe4vKIbwSTupxV1xGgzj3x4RKUuMUg9FLz9EigZ5iN0mOzZKDllyRS523hbdhDtA== +"@web/test-runner-coverage-v8@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@web/test-runner-coverage-v8/-/test-runner-coverage-v8-0.5.0.tgz#d1b033fd4baddaf5636a41cd017e321a338727a6" + integrity sha512-4eZs5K4JG7zqWEhVSO8utlscjbVScV7K6JVwoWWcObFTGAaBMbDVzwGRimyNSzvmfTdIO/Arze4CeUUfCl4iLQ== dependencies: "@web/test-runner-core" "^0.10.20" istanbul-lib-coverage "^3.0.0" picomatch "^2.2.2" - v8-to-istanbul "^8.0.0" + v8-to-istanbul "^9.0.1" "@web/test-runner-mocha@^0.7.5": version "0.7.5" @@ -5105,26 +5201,26 @@ "@types/mocha" "^8.2.0" "@web/test-runner-core" "^0.10.20" -"@web/test-runner-playwright@^0.8.8": - version "0.8.8" - resolved "https://registry.yarnpkg.com/@web/test-runner-playwright/-/test-runner-playwright-0.8.8.tgz#c06de60c0283611f5f0ef478779a7605a35e0895" - integrity sha512-bhb0QVldfDoPJqOj5mm1hpE6FReyddc/iIuAkVf/kbJvgggTCT2bWGxUvXJlGzf+4epmDhU+hSTfEoLL9R2vGw== +"@web/test-runner-playwright@^0.9.0": + version "0.9.0" + resolved "https://registry.yarnpkg.com/@web/test-runner-playwright/-/test-runner-playwright-0.9.0.tgz#c13b71ecfe763ae5d15dff586a35a9840c238b1f" + integrity sha512-RhWkz1CY3KThHoX89yZ/gz9wDSPujxd2wMWNxqhov4y/XDI+0TS44TWKBfWXnuvlQFZPi8JFT7KibCo3pb/Mcg== dependencies: "@web/test-runner-core" "^0.10.20" - "@web/test-runner-coverage-v8" "^0.4.8" - playwright "^1.14.0" + "@web/test-runner-coverage-v8" "^0.5.0" + playwright "^1.22.2" -"@web/test-runner@^0.13.16": - version "0.13.23" - resolved "https://registry.yarnpkg.com/@web/test-runner/-/test-runner-0.13.23.tgz#9a8a4f5208de1c108b50eea8bea8b236e311958b" - integrity sha512-LgoYVdC/ghl+U6Bg0CoMd+a1J41L2A4zjeVqB9uLSf0iJtjv4TOXFM7TarQKqzQfKULs3tcT4sw1BVU4SZAIwA== +"@web/test-runner@^0.15.0": + version "0.15.0" + resolved "https://registry.yarnpkg.com/@web/test-runner/-/test-runner-0.15.0.tgz#789d4599228b6e991bfeb14db4dfffb50b7ffb4a" + integrity sha512-8gliiQPRY4oDeq90i53mb5LiilCIzfW6SRGkmZ3K62c1DpOdZsCIgt7GH2OsFF8mB9rb4olK7qQ0gdmRgm27jw== dependencies: "@web/browser-logs" "^0.2.2" "@web/config-loader" "^0.1.3" - "@web/dev-server" "^0.1.24" - "@web/test-runner-chrome" "^0.10.5" - "@web/test-runner-commands" "^0.6.0" - "@web/test-runner-core" "^0.10.22" + "@web/dev-server" "^0.1.35" + "@web/test-runner-chrome" "^0.11.0" + "@web/test-runner-commands" "^0.6.3" + "@web/test-runner-core" "^0.10.27" "@web/test-runner-mocha" "^0.7.5" camelcase "^6.2.0" command-line-args "^5.1.1" @@ -5133,7 +5229,7 @@ diff "^5.0.0" globby "^11.0.1" nanocolors "^0.2.1" - portfinder "^1.0.28" + portfinder "^1.0.32" source-map "^0.7.3" "@webassemblyjs/ast@1.11.1": @@ -5300,9 +5396,9 @@ a-sync-waterfall@^1.0.0: integrity sha512-RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA== abab@^2.0.3, abab@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" - integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== + version "2.0.6" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" + integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== abort-controller@^3.0.0: version "3.0.0" @@ -5311,13 +5407,18 @@ abort-controller@^3.0.0: dependencies: event-target-shim "^5.0.0" -accepts@^1.3.5, accepts@^1.3.7, accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7: - version "1.3.7" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" - integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== +abortcontroller-polyfill@^1.1.9: + version "1.7.5" + resolved "https://registry.yarnpkg.com/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.5.tgz#6738495f4e901fbb57b6c0611d0c75f76c485bed" + integrity sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ== + +accepts@^1.3.5, accepts@^1.3.7, accepts@~1.3.4, 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.24" - negotiator "0.6.2" + mime-types "~2.1.34" + negotiator "0.6.3" acorn-globals@^6.0.0: version "6.0.0" @@ -5337,36 +5438,48 @@ acorn-jsx@^5.3.1, acorn-jsx@^5.3.2: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== +acorn-loose@^8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/acorn-loose/-/acorn-loose-8.3.0.tgz#0cd62461d21dce4f069785f8d3de136d5525029a" + integrity sha512-75lAs9H19ldmW+fAbyqHdjgdCrz0pWGXKmnqFoh8PyVd1L2RIb4RzYrSjmopeqv3E1G3/Pimu6GgLlrGbrkF7w== + dependencies: + acorn "^8.5.0" + acorn-walk@^7.1.1, 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.1.1: +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@^6.2.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.1.1, acorn@^7.4.0, 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.2.4, acorn@^8.4.1, acorn@^8.5.0: - version "8.7.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.1.tgz#0197122c843d1bf6d0a5e83220a788f278f63c30" - integrity sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A== - -acorn@^8.7.1, acorn@^8.8.0: +acorn@^8.2.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.1, acorn@^8.8.0: version "8.8.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73" integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== -address@1.1.2, address@^1.0.1: +address@1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA== +address@^1.0.1, address@^1.1.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/address/-/address-1.2.1.tgz#25bb61095b7522d65b357baa11bc05492d4c8acd" + integrity sha512-B+6bi5D34+fDYENiH5qOlA0cV2rAGKuWZ9LeyUUehbXy8e0VS9e498yO0Jeeh+iM+6KbfudHTFjXw2MmJD4QRA== + adjust-sourcemap-loader@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/adjust-sourcemap-loader/-/adjust-sourcemap-loader-3.0.0.tgz#5ae12fb5b7b1c585e80bbb5a63ec163a1a45e61e" @@ -5442,7 +5555,7 @@ ajv@^6.10.0, 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.0.0, ajv@^8.8.0: +ajv@^8.0.0, ajv@^8.0.1, ajv@^8.8.0: version "8.11.0" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.11.0.tgz#977e91dd96ca669f54a11e23e378e33b884a565f" integrity sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg== @@ -5452,48 +5565,26 @@ ajv@^8.0.0, ajv@^8.8.0: require-from-string "^2.0.2" uri-js "^4.2.2" -ajv@^8.0.1: - version "8.8.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.8.2.tgz#01b4fef2007a28bf75f0b7fc009f62679de4abbb" - integrity sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - all-contributors-cli@^6.20.0: - version "6.20.0" - resolved "https://registry.yarnpkg.com/all-contributors-cli/-/all-contributors-cli-6.20.0.tgz#9bc98dda38cb29cfe8afc8a78c004e14af25d2f6" - integrity sha512-trEQlL1s1u8FSWSwY2w9uL4GCG7Fo9HIW5rm5LtlE0SQHSolfXQBzJib07Qes5j52/t72wjuE6sEKkuRrwiuuQ== + version "6.24.0" + resolved "https://registry.yarnpkg.com/all-contributors-cli/-/all-contributors-cli-6.24.0.tgz#25c480c5c6e921532873114c2d6487816e6c22e0" + integrity sha512-7oSKr2PnqxsOotuSwciltcFTS1eVRdjR0cn99hbElfff7gRQBShVhsf/XBprY41sLcgqTk0l0MKgKv6QNgZdMg== dependencies: "@babel/runtime" "^7.7.6" - async "^3.0.1" + async "^3.1.0" chalk "^4.0.0" didyoumean "^1.2.1" - inquirer "^7.0.4" - json-fixer "^1.5.1" + inquirer "^7.3.3" + json-fixer "^1.6.8" lodash "^4.11.2" node-fetch "^2.6.0" pify "^5.0.0" yargs "^15.0.1" -alphanum-sort@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= - anser@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/anser/-/anser-2.1.0.tgz#a7309c9f29886f19af56cb30c79fc60ea483944e" - integrity sha512-zqC6MjuKg2ASofHsYE4orC7uGZQVbfJT1NiDDAzPtwc8XkWsAOSPAfqGFB/SG/PLybgeZ+LjVXvwfAWAEPXzuQ== - -ansi-align@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f" - integrity sha1-w2rsy6VjuJzrVW82kPCx2eNUf38= - dependencies: - string-width "^2.0.0" + version "2.1.1" + resolved "https://registry.yarnpkg.com/anser/-/anser-2.1.1.tgz#8afae28d345424c82de89cc0e4d1348eb0c5af7c" + integrity sha512-nqLm4HxOTpeLOxcmB3QWmV5TcDFhW9y/fyQ+hivtDFcK4OQ+pQ5fzPnXHM1Mfcm0VkLtvVi1TCPr++Qy0Q/3EQ== ansi-align@^3.0.0: version "3.0.1" @@ -5502,10 +5593,10 @@ ansi-align@^3.0.0: dependencies: string-width "^4.1.0" -ansi-colors@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== +ansi-colors@^4.1.1, ansi-colors@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" + integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== ansi-escapes@^3.1.0: version "3.2.0" @@ -5524,19 +5615,14 @@ 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-html@0.0.7, ansi-html@^0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= - ansi-red@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ansi-red/-/ansi-red-0.1.1.tgz#8c638f9d1080800a353c9c28c8a81ca4705d946c" - integrity sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw= + integrity sha512-ewaIr5y+9CUTGFwZfpECUbFlGcC0GCw1oqR9RI6h1gQCd9Aj2GxSckCnPsVJnmfMZbwFYE+leZGASgkWl06Jow== dependencies: ansi-wrap "0.1.0" -ansi-regex@^2.0.0, ansi-regex@^3.0.0, ansi-regex@^4.1.0, ansi-regex@^5.0.0, ansi-regex@^5.0.1, ansi-regex@^6.0.1: +ansi-regex@^2.0.0, ansi-regex@^4.1.0, ansi-regex@^5.0.0, ansi-regex@^5.0.1, ansi-regex@^6.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== @@ -5561,9 +5647,9 @@ ansi-styles@^5.0.0: integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== ansi-styles@^6.0.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.1.0.tgz#87313c102b8118abd57371afab34618bf7350ed3" - integrity sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ== + version "6.2.1" + 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" @@ -5575,12 +5661,7 @@ ansi-to-html@^0.6.11: ansi-wrap@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" - integrity sha1-qCJQ3bABXponyoLoLqYDu/pF768= - -any-base@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/any-base/-/any-base-1.1.0.tgz#ae101a62bc08a597b4c9ab5b7089d456630549fe" - integrity sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg== + integrity sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw== anymatch@^2.0.0: version "2.0.0" @@ -5601,30 +5682,25 @@ anymatch@^3.0.0, anymatch@^3.0.3, anymatch@~3.1.2: 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 sha1-OBh+wt6nV3//Az/8sSFyaS/24Rg= + integrity sha512-jlpIfsOoNoafl92Sz//64uQHGSyMrD2vYG5d8o2a4qGvyNCvXur7bzIsWtAC/6flI2RYAp3kv8rsfBtaLm7w0g== append-buffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/append-buffer/-/append-buffer-1.0.2.tgz#d8220cf466081525efea50614f3de6514dfa58f1" - integrity sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE= + integrity sha512-WLbYiXzD3y/ATLZFufV/rZvWdZOs+Z/+5v1rBZ463Jn398pa6kcde27cvozYnBoxXblGZTFfoPpsaEw0orU5BA== dependencies: buffer-equal "^1.0.0" append-field@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/append-field/-/append-field-1.0.0.tgz#1e3440e915f0b1203d23748e78edd7b9b5b43e56" - integrity sha1-HjRA6RXwsSA9I3SOeO3XubW0PlY= + integrity sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw== application-config-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/application-config-path/-/application-config-path-0.1.0.tgz#193c5f0a86541a4c66fba1e2dc38583362ea5e8f" integrity sha512-lljTpVvFteShrHuKRvweZfa9o/Nc34Y8r5/1Lqh/yyKaspRT2J3fkEiSSk1YLG8ZSVyU7yHysRy9zcDDS2aH1Q== -aproba@^1.0.3: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - "aproba@^1.0.3 || ^2.0.0": version "2.0.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" @@ -5643,14 +5719,6 @@ are-we-there-yet@^2.0.0: delegates "^1.0.0" readable-stream "^3.6.0" -are-we-there-yet@~1.1.2: - version "1.1.7" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" - integrity sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - arg@^4.1.0: version "4.1.3" resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" @@ -5679,12 +5747,12 @@ aria-query@^4.2.2: arity-n@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/arity-n/-/arity-n-1.0.4.tgz#d9e76b11733e08569c0847ae7b39b2860b30b745" - integrity sha1-2edrEXM+CFacCEeuezmyhgswt0U= + integrity sha512-fExL2kFDC1Q2DUOx3whE/9KoN66IzkY4b4zUHUBFM1ojEYjZZYDcUW3bek/ufGionX9giIKDC5redH2IlGqcQQ== arr-diff@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== arr-flatten@^1.1.0: version "1.1.0" @@ -5694,22 +5762,22 @@ arr-flatten@^1.1.0: arr-union@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== array-back@^3.0.1, array-back@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/array-back/-/array-back-3.1.0.tgz#b8859d7a508871c9a7b2cf42f99428f65e96bfb0" integrity sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q== -array-back@^4.0.1: +array-back@^4.0.1, array-back@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/array-back/-/array-back-4.0.2.tgz#8004e999a6274586beeb27342168652fdb89fa1e" integrity sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg== array-back@^6.1.2: - version "6.2.0" - resolved "https://registry.yarnpkg.com/array-back/-/array-back-6.2.0.tgz#83cc80fbef5a46269b1f6ecc82011cfc19cf1c1e" - integrity sha512-mixVv03GOOn/ubHE4STQ+uevX42ETdk0JoMVEjNkSOCT7WgERh7C8/+NyhWYNpE3BN69pxFyJIBcF7CxWz/+4A== + version "6.2.2" + resolved "https://registry.yarnpkg.com/array-back/-/array-back-6.2.2.tgz#f567d99e9af88a6d3d2f9dfcc21db6f9ba9fd157" + integrity sha512-gUAZ7HPyb4SJczXAMUXMGAvI976JoK3qEx9v1FTmeYuJj0IBiaKttG1ydtGKdkfqWkIkouke7nG8ufGy77+Cvw== array-differ@^3.0.0: version "3.0.0" @@ -5719,26 +5787,26 @@ array-differ@^3.0.0: 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 sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= + 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 sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= + 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 sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= + integrity sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng== -array-includes@^3.0.3, array-includes@^3.1.3, array-includes@^3.1.4: - version "3.1.4" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9" - integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw== +array-includes@^3.0.3, array-includes@^3.1.4, array-includes@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.5.tgz#2c320010db8d31031fd2a5f6b3bbd4b1aad31bdb" + integrity sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.1" + define-properties "^1.1.4" + es-abstract "^1.19.5" get-intrinsic "^1.1.1" is-string "^1.0.7" @@ -5750,7 +5818,7 @@ array-iterate@^1.0.0: array-union@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= + integrity sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng== dependencies: array-uniq "^1.0.1" @@ -5767,30 +5835,32 @@ array-union@^3.0.1: array-uniq@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= + 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 sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= + integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== -array.prototype.flat@^1.2.1, array.prototype.flat@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz#07e0975d84bbc7c48cd1879d609e682598d33e13" - integrity sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg== +array.prototype.flat@^1.2.1, array.prototype.flat@^1.2.3, array.prototype.flat@^1.2.5: + version "1.3.0" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz#0b0c1567bf57b38b56b4c97b8aa72ab45e4adc7b" + integrity sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw== dependencies: call-bind "^1.0.2" define-properties "^1.1.3" - es-abstract "^1.19.0" + es-abstract "^1.19.2" + es-shim-unscopables "^1.0.0" -array.prototype.flatmap@^1.2.1, array.prototype.flatmap@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz#908dc82d8a406930fdf38598d51e7411d18d4446" - integrity sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA== +array.prototype.flatmap@^1.2.1, array.prototype.flatmap@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz#a7e8ed4225f4788a70cd910abcf0791e76a5534f" + integrity sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg== dependencies: - call-bind "^1.0.0" + call-bind "^1.0.2" define-properties "^1.1.3" - es-abstract "^1.19.0" + es-abstract "^1.19.2" + es-shim-unscopables "^1.0.0" array.prototype.map@^1.0.4: version "1.0.4" @@ -5803,20 +5873,31 @@ array.prototype.map@^1.0.4: es-array-method-boxes-properly "^1.0.0" is-string "^1.0.7" +array.prototype.reduce@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.4.tgz#8167e80089f78bff70a99e20bd4201d4663b0a6f" + integrity sha512-WnM+AjG/DvLRLo4DDl+r+SvCzYtD2Jd9oeBYMcEaI7t3fFrHY9M53/wdLcTvmZNQ70IU6Htj0emFkZ5TS+lrdw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.2" + es-array-method-boxes-properly "^1.0.0" + is-string "^1.0.7" + arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= + 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== -asap@^2.0.3: +asap@^2.0.3, asap@~2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= + integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== asn1js@^3.0.1, asn1js@^3.0.5: version "3.0.5" @@ -5830,12 +5911,12 @@ asn1js@^3.0.1, asn1js@^3.0.5: assign-symbols@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== ast-types-flow@^0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" - integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0= + integrity sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag== ast-types@^0.14.2: version "0.14.2" @@ -5852,36 +5933,31 @@ astral-regex@^2.0.0: async-cache@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/async-cache/-/async-cache-1.1.0.tgz#4a9a5a89d065ec5d8e5254bd9ee96ba76c532b5a" - integrity sha1-SppaidBl7F2OUlS9nulrp2xTK1o= + integrity sha512-YDQc4vBn5NFhY6g6HhVshyi3Fy9+SQ5ePnE7JLDJn1DoL+i7ER+vMwtTNOYk9leZkYMnOwpBCWqyLDPw8Aig8g== dependencies: lru-cache "^4.0.0" -async-retry-ng@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/async-retry-ng/-/async-retry-ng-2.0.1.tgz#f5285ec1c52654a2ba6a505d0c18b1eadfaebd41" - integrity sha512-iitlc2murdQ3/A5Re3CcplQBEf7vOmFrFQ6RFn3+/+zZUyIHYkZnnEziMSa6YIb2Bs2EJEPZWReTxjHqvQbDbw== - async@1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= + integrity sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w== -async@^2.6.2: - version "2.6.3" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" - integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== +async@^2.6.4: + version "2.6.4" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.4.tgz#706b7ff6084664cd7eae713f6f965433b5504221" + integrity sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA== dependencies: lodash "^4.17.14" -async@^3.0.1, async@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/async/-/async-3.2.2.tgz#2eb7671034bb2194d45d30e31e24ec7e7f9670cd" - integrity sha512-H0E+qZaDEfx/FY4t7iLRv1W2fFI6+pyCeTw1uN20AQPiwqwM6ojPxHxdLv4z8hi2DtnW9BOckSspLucW7pIE5g== +async@^3.1.0, async@^3.2.4: + 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 sha1-x57Zf380y48robyXkLzDZkdLS3k= + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== at-least-node@^1.0.0: version "1.0.0" @@ -5893,24 +5969,29 @@ atob@^2.1.2: resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== +auto-bind@~4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/auto-bind/-/auto-bind-4.0.0.tgz#e3589fc6c2da8f7ca43ba9f84fa52a744fc997fb" + integrity sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ== + autolinker@~0.28.0: version "0.28.1" resolved "https://registry.yarnpkg.com/autolinker/-/autolinker-0.28.1.tgz#0652b491881879f0775dace0cdca3233942a4e47" - integrity sha1-BlK0kYgYefB3XazgzcoyM5QqTkc= + integrity sha512-zQAFO1Dlsn69eXaO6+7YZc+v84aquQKbwpzCE3L0stj56ERn9hutFxPopViLjo9G+rWwjozRhgS5KJ25Xy19cQ== dependencies: gulp-header "^1.7.1" -autoprefixer@^10.4.0: - version "10.4.0" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.0.tgz#c3577eb32a1079a440ec253e404eaf1eb21388c8" - integrity sha512-7FdJ1ONtwzV1G43GDD0kpVMn/qbiNqyOPMFTX5nRffI+7vgWoFEc6DcXOxHJxrWNDXrZh18eDsZjvZGUljSRGA== +autoprefixer@^10.4.0, autoprefixer@^10.4.11: + version "10.4.13" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.13.tgz#b5136b59930209a321e9fa3dca2e7c4d223e83a8" + integrity sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg== dependencies: - browserslist "^4.17.5" - caniuse-lite "^1.0.30001272" - fraction.js "^4.1.1" + browserslist "^4.21.4" + caniuse-lite "^1.0.30001426" + fraction.js "^4.2.0" normalize-range "^0.1.2" picocolors "^1.0.0" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" autoprefixer@^9.8.6: version "9.8.8" @@ -5925,12 +6006,12 @@ autoprefixer@^9.8.6: postcss "^7.0.32" postcss-value-parser "^4.1.0" -axe-core@^4.2.0, axe-core@^4.3.3, axe-core@^4.3.5: - version "4.3.5" - resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.3.5.tgz#78d6911ba317a8262bfee292aeafcc1e04b49cc5" - integrity sha512-WKTW1+xAzhMS5dJsxWkliixlO/PqC4VhmO9T4juNYcaTg9jzWiJsou6m5pxWYGfigWbwzJWeFY6z47a+4neRXA== +axe-core@^4.2.0, axe-core@^4.3.3, axe-core@^4.4.3: + version "4.5.0" + resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.5.0.tgz#6efe2ecdba205fcc9d7ddb3d48c2cf630f70eb5e" + integrity sha512-4+rr8eQ7+XXS5nZrKcMO/AikHL0hVqy+lHWAnE3xdHl+aguag8SOQ6eEqLexwLNWgXIMfunGuD3ON1/6Kyet0A== -axios@^0.21.1, axios@^0.21.4: +axios@^0.21.1: version "0.21.4" resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== @@ -5949,18 +6030,18 @@ babel-extract-comments@^1.0.0: dependencies: babylon "^6.18.0" -babel-jest@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.4.5.tgz#d38bd0be8ea71d8b97853a5fc9f76deeb095c709" - integrity sha512-3uuUTjXbgtODmSv/DXO9nZfD52IyC2OYTFaXGRzL0kpykzroaquCrD5+lZNafTvZlnNqZHt5pb0M08qVBZnsnA== +babel-jest@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" + integrity sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg== dependencies: - "@jest/transform" "^27.4.5" - "@jest/types" "^27.4.2" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" "@types/babel__core" "^7.1.14" - babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^27.4.0" + babel-plugin-istanbul "^6.1.1" + babel-preset-jest "^27.5.1" chalk "^4.0.0" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" slash "^3.0.0" babel-jsx-utils@^1.1.0: @@ -5969,12 +6050,12 @@ babel-jsx-utils@^1.1.0: integrity sha512-Mh1j/rw4xM9T3YICkw22aBQ78FhsHdsmlb9NEk4uVAFBOg+Ez9ZgXXHugoBPCZui3XLomk/7/JBBH4daJqTkQQ== babel-loader@^8.0.0, babel-loader@^8.2.3: - version "8.2.3" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.3.tgz#8986b40f1a64cacfcb4b8429320085ef68b1342d" - integrity sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw== + version "8.2.5" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.5.tgz#d45f585e654d5a5d90f5350a779d7647c5ed512e" + integrity sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ== dependencies: find-cache-dir "^3.3.1" - loader-utils "^1.4.0" + loader-utils "^2.0.0" make-dir "^3.1.0" schema-utils "^2.6.5" @@ -5986,7 +6067,7 @@ babel-plugin-add-module-exports@^1.0.4: 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 sha1-M51M3be2X9YtHfnbn+BN4TQSK9U= + integrity sha512-LY3+Y0XVDYcShHHorshrDbt4KFWL4bSeniCtl4SYZbask+Syngk1uMPCeN9+nSiZo6zX5s0RTq/J9Pnaaf/KHw== babel-plugin-apply-mdx-type-prop@1.6.22: version "1.6.22" @@ -6018,7 +6099,7 @@ babel-plugin-extract-import-names@1.6.22: dependencies: "@babel/helper-plugin-utils" "7.10.4" -babel-plugin-istanbul@^6.0.0: +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== @@ -6029,10 +6110,10 @@ babel-plugin-istanbul@^6.0.0: istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.4.0.tgz#d7831fc0f93573788d80dee7e682482da4c730d6" - integrity sha512-Jcu7qS4OX5kTWBc45Hz7BMmgXuJqRnhatqpUhnzGC3OBYpOmf2tv6jFNwZpwM7wU7MUuv2r9IPS/ZlYOuburVw== +babel-plugin-jest-hoist@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" + integrity sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" @@ -6050,16 +6131,7 @@ babel-plugin-lodash@^3.3.4: lodash "^4.17.10" require-package-name "^2.0.1" -babel-plugin-macros@^2.6.1, babel-plugin-macros@^2.8.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138" - integrity sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg== - dependencies: - "@babel/runtime" "^7.7.2" - cosmiconfig "^6.0.0" - resolve "^1.12.0" - -babel-plugin-macros@^3.0.1: +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== @@ -6073,13 +6145,13 @@ babel-plugin-named-exports-order@^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.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.0.tgz#407082d0d355ba565af24126fb6cb8e9115251fd" - integrity sha512-wMDoBJ6uG4u4PNFh72Ty6t3EgfA91puCuAwKIazbQlci+ENb/UU9A3xG5lutjUIiXCIn1CY5L15r9LimiJyrSA== +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.13.11" - "@babel/helper-define-polyfill-provider" "^0.3.0" + "@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: @@ -6090,20 +6162,20 @@ babel-plugin-polyfill-corejs3@^0.1.0: "@babel/helper-define-polyfill-provider" "^0.1.5" core-js-compat "^3.8.1" -babel-plugin-polyfill-corejs3@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.4.0.tgz#0b571f4cf3d67f911512f5c04842a7b8e8263087" - integrity sha512-YxFreYwUfglYKdLUGvIF2nJEsGwj+RhWSX/ije3D2vQPOXuyMLMtg/cCGMDpOA7Nd+MwlNdnGODbd2EwUZPlsw== +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.0" - core-js-compat "^3.18.0" + "@babel/helper-define-polyfill-provider" "^0.3.3" + core-js-compat "^3.25.1" -babel-plugin-polyfill-regenerator@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.0.tgz#9ebbcd7186e1a33e21c5e20cae4e7983949533be" - integrity sha512-dhAPTDLGoMW5/84wkgwiLRwMnio2i1fUe53EuvtKMv0pn2p3S8OCoV1xAzfJPl0KOX7IB89s2ib85vbYiea3jg== +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.0" + "@babel/helper-define-polyfill-provider" "^0.3.3" babel-plugin-react-docgen@^4.2.1: version "4.2.1" @@ -6114,23 +6186,29 @@ babel-plugin-react-docgen@^4.2.1: lodash "^4.17.15" react-docgen "^5.0.0" -babel-plugin-remove-graphql-queries@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/babel-plugin-remove-graphql-queries/-/babel-plugin-remove-graphql-queries-4.4.0.tgz#6f301477a4b617253b877455fb54a9eb9c58f026" - integrity sha512-wxDR1WrpLbF0qyXvNBsGKYLJk+Z7nG8+UM+bEeyxi7YepwVjgfm4CFQgbSytQbk0X+qGRCqpmq4VZVIxVTyGYQ== +babel-plugin-remove-graphql-queries@^4.24.0: + version "4.24.0" + resolved "https://registry.yarnpkg.com/babel-plugin-remove-graphql-queries/-/babel-plugin-remove-graphql-queries-4.24.0.tgz#1db00d6e657620debcfb5df553397a4e8ba68f14" + integrity sha512-B/0Y/JfG+9O9vxZDtievpRymGIWrYtNQ+f0ZVmMcfk8/yclaKvEvefo/DGUXWF7yAH5V8HeEnXeGtQKtfCwE1Q== dependencies: "@babel/runtime" "^7.15.4" - gatsby-core-utils "^3.4.0" + "@babel/types" "^7.15.4" + gatsby-core-utils "^3.24.0" babel-plugin-syntax-object-rest-spread@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - integrity sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= + integrity sha512-C4Aq+GaAj83pRQ0EFgTvw5YO6T3Qz2KGrNRwIj9mSoNHVvdZY4KO2uA6HNtNXCw993iSZnckY1aLW8nOi8i4+w== + +babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: + version "7.0.0-beta.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" + integrity sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ== babel-plugin-transform-object-rest-spread@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" - integrity sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY= + integrity sha512-ocgA9VJvyxwt+qJB0ncxV8kb/CjfTcECUY4tQ5VT7nP6Aohzobm8CDFaQ5FHdvZQzLmf0sgDxB8iRXZXxwZcyA== dependencies: babel-plugin-syntax-object-rest-spread "^6.8.0" babel-runtime "^6.26.0" @@ -6158,10 +6236,43 @@ babel-preset-current-node-syntax@^1.0.0: "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-top-level-await" "^7.8.3" -babel-preset-gatsby@^2.2.0, babel-preset-gatsby@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/babel-preset-gatsby/-/babel-preset-gatsby-2.4.0.tgz#5e6c57165c25705299ac79e0b79103c23f3d2024" - integrity sha512-kgSs6zyG6Uba5RxRu8QgzhKMCOLpDJ5XDCAINaZZpn0jNKHx+FyCEjtIjWTMREOn4lPInv6G8+NcrHw6zn6y+g== +babel-preset-fbjs@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-3.4.0.tgz#38a14e5a7a3b285a3f3a86552d650dca5cf6111c" + integrity sha512-9ywCsCvo1ojrw0b+XYk7aFvTH6D9064t0RIL1rtMf3nsa02Xw41MS7sZw216Im35xj/UY0PDBQsa1brUDDF1Ow== + dependencies: + "@babel/plugin-proposal-class-properties" "^7.0.0" + "@babel/plugin-proposal-object-rest-spread" "^7.0.0" + "@babel/plugin-syntax-class-properties" "^7.0.0" + "@babel/plugin-syntax-flow" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.0.0" + "@babel/plugin-transform-arrow-functions" "^7.0.0" + "@babel/plugin-transform-block-scoped-functions" "^7.0.0" + "@babel/plugin-transform-block-scoping" "^7.0.0" + "@babel/plugin-transform-classes" "^7.0.0" + "@babel/plugin-transform-computed-properties" "^7.0.0" + "@babel/plugin-transform-destructuring" "^7.0.0" + "@babel/plugin-transform-flow-strip-types" "^7.0.0" + "@babel/plugin-transform-for-of" "^7.0.0" + "@babel/plugin-transform-function-name" "^7.0.0" + "@babel/plugin-transform-literals" "^7.0.0" + "@babel/plugin-transform-member-expression-literals" "^7.0.0" + "@babel/plugin-transform-modules-commonjs" "^7.0.0" + "@babel/plugin-transform-object-super" "^7.0.0" + "@babel/plugin-transform-parameters" "^7.0.0" + "@babel/plugin-transform-property-literals" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.0.0" + "@babel/plugin-transform-react-jsx" "^7.0.0" + "@babel/plugin-transform-shorthand-properties" "^7.0.0" + "@babel/plugin-transform-spread" "^7.0.0" + "@babel/plugin-transform-template-literals" "^7.0.0" + babel-plugin-syntax-trailing-function-commas "^7.0.0-beta.0" + +babel-preset-gatsby@^2.2.0, babel-preset-gatsby@^2.24.0: + version "2.24.0" + resolved "https://registry.yarnpkg.com/babel-preset-gatsby/-/babel-preset-gatsby-2.24.0.tgz#fca7b629e335d98a7feb19f85d73e39356abbb3f" + integrity sha512-EFPclGESPH2grzmN3bX6UoDi+3fgk+zLR5lDPGGaOgrUOEdxETMYdnz9VA37mjI2W/a+x/xCeE7qJRnNCJtn4g== dependencies: "@babel/plugin-proposal-class-properties" "^7.14.0" "@babel/plugin-proposal-nullish-coalescing-operator" "^7.14.5" @@ -6174,23 +6285,23 @@ babel-preset-gatsby@^2.2.0, babel-preset-gatsby@^2.4.0: "@babel/preset-react" "^7.14.0" "@babel/runtime" "^7.15.4" babel-plugin-dynamic-import-node "^2.3.3" - babel-plugin-macros "^2.8.0" + babel-plugin-macros "^3.1.0" babel-plugin-transform-react-remove-prop-types "^0.4.24" - gatsby-core-utils "^3.4.0" - gatsby-legacy-polyfills "^2.4.0" + gatsby-core-utils "^3.24.0" + gatsby-legacy-polyfills "^2.24.0" -babel-preset-jest@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.4.0.tgz#70d0e676a282ccb200fbabd7f415db5fdf393bca" - integrity sha512-NK4jGYpnBvNxcGo7/ZpZJr51jCGT+3bwwpVIDY2oNfTxJJldRtB4VAcYdgp1loDE50ODuTu+yBjpMAswv5tlpg== +babel-preset-jest@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" + integrity sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag== dependencies: - babel-plugin-jest-hoist "^27.4.0" + babel-plugin-jest-hoist "^27.5.1" babel-preset-current-node-syntax "^1.0.0" babel-runtime@^6.22.0, babel-runtime@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= + integrity sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g== dependencies: core-js "^2.4.0" regenerator-runtime "^0.11.0" @@ -6203,7 +6314,7 @@ babylon@^6.18.0: backo2@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" - integrity sha1-MasayLEpNjRj41s+u2n038+6eUc= + integrity sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA== bail@^1.0.0: version "1.0.5" @@ -6220,10 +6331,17 @@ balanced-match@^2.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-2.0.0.tgz#dc70f920d78db8b858535795867bf48f820633d9" integrity sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA== +base-x@^3.0.8: + version "3.0.9" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320" + integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ== + dependencies: + safe-buffer "^5.0.1" + base64-arraybuffer@0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz#9818c79e059b1355f97e0428a017c838e90ba812" - integrity sha1-mBjHngWbE1X5fgQooBfIOOkLqBI= + integrity sha512-a1eIFi4R9ySrbiMuyTGx5e92uRH5tQY6kArNcFaKBUleIoLjdjBg7Zxm3Mqm3Kmkf27HLR/1fnxX9q8GQ7Iavg== base64-js@^1.3.1: version "1.5.1" @@ -6251,7 +6369,7 @@ base@^0.11.1: batch-processor@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/batch-processor/-/batch-processor-1.0.0.tgz#75c95c32b748e0850d10c2b168f6bdbe9891ace8" - integrity sha1-dclcMrdI4IUNEMKxaPa9vpiRrOg= + integrity sha512-xoLQD8gmmR32MeuBHgH0Tzd5PuSZx71ZsbhVxOCRbgktZEPe4SQy7s9Z50uPp0F/f7iw2XmkHN2xkgbMfckMDA== better-opn@^2.1.1: version "2.1.1" @@ -6267,20 +6385,6 @@ better-path-resolve@1.0.0: dependencies: is-windows "^1.0.0" -better-queue-memory@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/better-queue-memory/-/better-queue-memory-1.0.4.tgz#f390d6b30bb3b36aaf2ce52b37a483e8a7a81a22" - integrity sha512-SWg5wFIShYffEmJpI6LgbL8/3Dqhku7xI1oEiy6FroP9DbcZlG0ZDjxvPdP9t7hTGW40IpIcC6zVoGT1oxjOuA== - -better-queue@^3.8.10: - version "3.8.10" - resolved "https://registry.yarnpkg.com/better-queue/-/better-queue-3.8.10.tgz#1c93b9ec4cb3d1b72eb91d0efcb84fc80e8c6835" - integrity sha512-e3gwNZgDCnNWl0An0Tz6sUjKDV9m6aB+K9Xg//vYeo8+KiH8pWhLFxkawcXhm6FpM//GfD9IQv/kmvWCAVVpKA== - dependencies: - better-queue-memory "^1.0.1" - node-eta "^0.9.0" - uuid "^3.0.0" - big-integer@^1.6.7: version "1.6.51" resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.51.tgz#0df92a5d9880560d3ff2d5fd20245c889d130686" @@ -6305,49 +6409,33 @@ bl@^4.0.0, bl@^4.0.3: inherits "^2.0.4" readable-stream "^3.4.0" -bluebird@^3.0.5, bluebird@^3.3.5, bluebird@^3.7.2: +bluebird@^3.0.5, bluebird@^3.7.2: version "3.7.2" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== -bmp-js@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/bmp-js/-/bmp-js-0.1.0.tgz#e05a63f796a6c1ff25f4771ec7adadc148c07233" - integrity sha1-4Fpj95amwf8l9Hcex62twUjAcjM= - -body-parser@1.19.1, body-parser@^1.19.0: - version "1.19.1" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.1.tgz#1499abbaa9274af3ecc9f6f10396c995943e31d4" - integrity sha512-8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA== +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.1" + bytes "3.1.2" content-type "~1.0.4" debug "2.6.9" - depd "~1.1.2" - http-errors "1.8.1" + depd "2.0.0" + destroy "1.2.0" + http-errors "2.0.0" iconv-lite "0.4.24" - on-finished "~2.3.0" - qs "6.9.6" - raw-body "2.4.2" + 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, boolbase@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= - -boxen@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.3.0.tgz#55c6c39a8ba58d9c61ad22cd877532deb665a20b" - integrity sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw== - dependencies: - ansi-align "^2.0.0" - camelcase "^4.0.0" - chalk "^2.0.1" - cli-boxes "^1.0.0" - string-width "^2.0.0" - term-size "^1.2.0" - widest-line "^2.0.0" + integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== boxen@^4.2.0: version "4.2.0" @@ -6380,7 +6468,7 @@ boxen@^5.0.0, boxen@^5.1.2: bplist-parser@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/bplist-parser/-/bplist-parser-0.1.1.tgz#d60d5dcc20cba6dc7e1f299b35d3e1f95dafbae6" - integrity sha1-1g1dzCDLptx+HymbNdPh+V2vuuY= + integrity sha512-2AEM0FXy8ZxVLBuqX0hqt1gDwcnz2zygEkQ6zaD5Wko/sB9paUNwlpawrFtKeHUAQUOzjVy9AO4oeonqIHKA9Q== dependencies: big-integer "^1.6.7" @@ -6408,7 +6496,7 @@ braces@^2.3.1: split-string "^3.0.2" to-regex "^3.0.1" -braces@^3.0.1, braces@~3.0.2: +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== @@ -6432,7 +6520,7 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browserslist@4.14.2, browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.16.0, browserslist@^4.16.3, browserslist@^4.16.5, browserslist@^4.16.6, browserslist@^4.17.5, browserslist@^4.19.1: +browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.16.3, browserslist@^4.16.5, browserslist@^4.16.6, browserslist@^4.17.5, browserslist@^4.18.1, browserslist@^4.21.3, browserslist@^4.21.4, browserslist@^4.6.6: version "4.21.4" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.4.tgz#e7496bbc67b9e39dd0f98565feccdcb0d4ff6987" integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw== @@ -6471,24 +6559,19 @@ buble@0.19.6: buffer-crc32@~0.2.3: version "0.2.13" resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" - integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI= - -buffer-equal@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-0.0.1.tgz#91bc74b11ea405bc916bc6aa908faafa5b4aac4b" - integrity sha1-kbx0sR6kBbyRa8aqkI+q+ltKrEs= + integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== buffer-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.0.tgz#59616b498304d556abd466966b22eeda3eca5fbe" - integrity sha1-WWFrSYME1Var1GaWayLu2j7KX74= + version "1.0.1" + resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.1.tgz#2f7651be5b1b3f057fcd6e7ee16cf34767077d90" + integrity sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg== 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@^5.2.0, buffer@^5.2.1, buffer@^5.5.0: +buffer@^5.2.1, buffer@^5.5.0: version "5.7.1" resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== @@ -6496,20 +6579,12 @@ buffer@^5.2.0, buffer@^5.2.1, buffer@^5.5.0: base64-js "^1.3.1" ieee754 "^1.1.13" -builtin-modules@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887" - integrity sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA== - -busboy@^0.2.11: - version "0.2.14" - resolved "https://registry.yarnpkg.com/busboy/-/busboy-0.2.14.tgz#6c2a622efcf47c57bbbe1e2a9c37ad36c7925453" - integrity sha1-bCpiLvz0fFe7vh4qnDetNseSVFM= - dependencies: - dicer "0.2.5" - readable-stream "1.1.x" +builtin-modules@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" + integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== -busboy@^1.6.0: +busboy@^1.0.0, busboy@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== @@ -6524,30 +6599,30 @@ bytes-iec@^3.1.1: bytes@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= + integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw== -bytes@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.1.tgz#3f018291cb4cbad9accb6e6970bca9c8889e879a" - integrity sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg== +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.10.0" - resolved "https://registry.yarnpkg.com/c8/-/c8-7.10.0.tgz#c539ebb15d246b03b0c887165982c49293958a73" - integrity sha512-OAwfC5+emvA6R7pkYFVBTOtI5ruf9DahffGmIqUc9l6wEh0h7iAFP6dt/V9Ioqlr2zW5avX9U9/w1I4alTRHkA== + 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.2" + "@istanbuljs/schema" "^0.1.3" find-up "^5.0.0" foreground-child "^2.0.0" - istanbul-lib-coverage "^3.0.1" + istanbul-lib-coverage "^3.2.0" istanbul-lib-report "^3.0.0" - istanbul-reports "^3.0.2" - rimraf "^3.0.0" + istanbul-reports "^3.1.4" + rimraf "^3.0.2" test-exclude "^6.0.0" - v8-to-istanbul "^8.0.0" + v8-to-istanbul "^9.0.0" yargs "^16.2.0" - yargs-parser "^20.2.7" + yargs-parser "^20.2.9" cache-base@^1.0.1: version "1.0.1" @@ -6623,7 +6698,7 @@ call-bind@^1.0.0, call-bind@^1.0.2: call-me-maybe@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" - integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= + integrity sha512-wCyFsDQkKPwwF8BDwOiWNx/9K45L/hvggQiDbve+viMNMQnWhrlYIuBk09offfwCRtCO9P6XwUttufzU11WCVw== callsites@^3.0.0: version "3.1.0" @@ -6633,12 +6708,12 @@ callsites@^3.0.0: camel-case@3.0.x, camel-case@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" - integrity sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M= + integrity sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w== dependencies: no-case "^2.2.0" upper-case "^1.1.1" -camel-case@4.1.2, camel-case@^4.1.2: +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== @@ -6654,7 +6729,7 @@ camelcase-css@2.0.1, camelcase-css@^2.0.1: camelcase-keys@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" - integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc= + integrity sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ== dependencies: camelcase "^2.0.0" map-obj "^1.0.0" @@ -6676,17 +6751,12 @@ camelcase@5.3.1, camelcase@^5.0.0, camelcase@^5.3.1: camelcase@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= - -camelcase@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" - integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= + integrity sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw== camelcase@^6.2.0: - version "6.2.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.1.tgz#250fd350cfd555d0d2160b1d51510eaf8326e86e" - integrity sha512-tVI4q5jjFV5CavAU8DXfza/TJcZutVKo/5Foskmsqcm0MsL91moHvwiGNnqaa2o6PF/7yT5ikDRcVcl8Rj6LCA== + version "6.3.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-api@^3.0.0: version "3.0.0" @@ -6698,12 +6768,7 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001272, caniuse-lite@^1.0.30001291: - version "1.0.30001294" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001294.tgz#4849f27b101fd59ddee3751598c663801032533d" - integrity sha512-LiMlrs1nSKZ8qkNhpUf5KD0Al1KCBE3zaT7OLOwEkagXMEDij98SiOovn9wxVGQpklk9vVC/pUSqgYmkmKOS8g== - -caniuse-lite@^1.0.30001400: +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001400, caniuse-lite@^1.0.30001426: version "1.0.30001426" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001426.tgz#58da20446ccd0cb1dfebd11d2350c907ee7c2eaa" integrity sha512-n7cosrHLl8AWt0wwZw/PJZgUg3lV0gk9LMI7ikGJwhyhgsd2Nb65vKvmSexCqq/J7rbH3mFG6yZZiPR5dLPW5A== @@ -6737,7 +6802,7 @@ ccount@^1.0.0: cdocparser@^0.13.0: version "0.13.0" resolved "https://registry.yarnpkg.com/cdocparser/-/cdocparser-0.13.0.tgz#1ba98a1e1e1668e2bfb35d41761e9e4645d731ba" - integrity sha1-G6mKHh4WaOK/s11Bdh6eRkXXMbo= + integrity sha512-bMi4t0qjeT0xQ8ECBmWcilMYcUNYsERQoatXveMIbItgqliZDCNyv2xfkBoKrs5H08ApeRMoysJLwgPiHtv7HQ== dependencies: escape-string-regexp "^1.0.2" lodash.assign "^2.4.1" @@ -6749,13 +6814,13 @@ cem-plugin-readonly@^0.0.2: integrity sha512-VUozyTUjxHFtRPivVMQkJ1KduI8MF/czJHq0Yc0iUg3sIQg/weZ1ugN4UhK/w7maTL7SagmpcRFaaPA65Y11Iw== chai-a11y-axe@^1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/chai-a11y-axe/-/chai-a11y-axe-1.3.2.tgz#77dc5f503901fed4f6097b5b0213ddb00cc891ea" - integrity sha512-/jYczmhGUoCfEcsrkJwjecy3PJ31T9FxFdu2BDlAwR/sX1nN3L2XmuPP3tw8iYk6LPqdF7K11wwFr3yUZMv5MA== + version "1.4.0" + resolved "https://registry.yarnpkg.com/chai-a11y-axe/-/chai-a11y-axe-1.4.0.tgz#e584af967727a8656e27c32e845f5db21f2bf2e0" + integrity sha512-m7J6DVAl1ePL2ifPKHmwQyHXdCZ+Qfv+qduh6ScqcDfBnJEzpV1K49TblujM45j1XciZOFeFNqMb2sShXMg/mw== dependencies: axe-core "^4.3.3" -chalk@2.4.2, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -6780,6 +6845,22 @@ chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" +change-case-all@1.0.14: + version "1.0.14" + resolved "https://registry.yarnpkg.com/change-case-all/-/change-case-all-1.0.14.tgz#bac04da08ad143278d0ac3dda7eccd39280bfba1" + integrity sha512-CWVm2uT7dmSHdO/z1CXT/n47mWonyypzBbuCy5tN7uMg22BsfkhwT6oHmFCAk+gL1LOOxhdbB9SZz3J1KTY3gA== + dependencies: + change-case "^4.1.2" + is-lower-case "^2.0.2" + is-upper-case "^2.0.2" + lower-case "^2.0.2" + lower-case-first "^2.0.2" + sponge-case "^1.0.1" + swap-case "^2.0.2" + title-case "^3.0.3" + upper-case "^2.0.2" + upper-case-first "^2.0.2" + change-case@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/change-case/-/change-case-3.1.0.tgz#0e611b7edc9952df2e8513b27b42de72647dd17e" @@ -6852,21 +6933,22 @@ chardet@^0.7.0: resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -cheerio-select@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-1.5.0.tgz#faf3daeb31b17c5e1a9dabcee288aaf8aafa5823" - integrity sha512-qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg== +cheerio-select@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-2.1.0.tgz#4d8673286b8126ca2a8e42740d5e3c4884ae21b4" + integrity sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g== dependencies: - css-select "^4.1.3" - css-what "^5.0.1" - domelementtype "^2.2.0" - domhandler "^4.2.0" - domutils "^2.7.0" + boolbase "^1.0.0" + css-select "^5.1.0" + css-what "^6.1.0" + domelementtype "^2.3.0" + domhandler "^5.0.3" + domutils "^3.0.1" cheerio@^0.22.0: version "0.22.0" resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-0.22.0.tgz#a9baa860a3f9b595a6b81b1a86873121ed3a269e" - integrity sha1-qbqoYKP5tZWmuBsahocxIe06Jp4= + integrity sha512-8/MzidM6G/TgRelkzDG13y3Y9LxBjCb+8yOEZ9+wwq5gVF2w2pV0wmHvjfT0RvuxGyR7UEuK36r+yYMbT4uKgA== dependencies: css-select "~1.2.0" dom-serializer "~0.1.0" @@ -6886,19 +6968,19 @@ cheerio@^0.22.0: lodash.some "^4.4.0" cheerio@^1.0.0-rc.10: - version "1.0.0-rc.10" - resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.10.tgz#2ba3dcdfcc26e7956fc1f440e61d51c643379f3e" - integrity sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw== - dependencies: - cheerio-select "^1.5.0" - dom-serializer "^1.3.2" - domhandler "^4.2.0" - htmlparser2 "^6.1.0" - parse5 "^6.0.1" - parse5-htmlparser2-tree-adapter "^6.0.1" - tslib "^2.2.0" - -chokidar@3.5.2, "chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.2, chokidar@^3.4.3, chokidar@^3.5.2: + version "1.0.0-rc.12" + resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.12.tgz#788bf7466506b1c6bf5fae51d24a2c4d62e47683" + integrity sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q== + dependencies: + cheerio-select "^2.1.0" + dom-serializer "^2.0.0" + domhandler "^5.0.3" + domutils "^3.0.1" + htmlparser2 "^8.0.1" + parse5 "^7.0.0" + parse5-htmlparser2-tree-adapter "^7.0.0" + +chokidar@3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.2.tgz#dba3976fcadb016f66fd365021d91600d01c1e75" integrity sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ== @@ -6913,6 +6995,21 @@ chokidar@3.5.2, "chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.2, chokidar@^3.4.3, cho optionalDependencies: fsevents "~2.3.2" +"chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.2, chokidar@^3.4.3, chokidar@^3.5.2, chokidar@^3.5.3: + version "3.5.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + 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" @@ -6924,9 +7021,9 @@ chroma-js@^1.2.2: integrity sha512-jTwQiT859RTFN/vIf7s+Vl/Z2LcMrvMv3WUFmd/4u76AdlFC0NTNgqEEFPcRiHmAswPsMiQEDZLM8vX8qXpZNQ== chrome-launcher@^0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/chrome-launcher/-/chrome-launcher-0.15.0.tgz#5144a57aba0cf2f4cbe61dccefdde024fb3ca7fc" - integrity sha512-ZQqX5kb9H0+jy1OqLnWampfocrtSZaGl7Ny3F9GRha85o4odbL8x55paUzh51UC7cEmZ5obp3H2Mm70uC2PpRA== + version "0.15.1" + resolved "https://registry.yarnpkg.com/chrome-launcher/-/chrome-launcher-0.15.1.tgz#0a0208037063641e2b3613b7e42b0fcb3fa2d399" + integrity sha512-UugC8u59/w2AyX5sHLZUHoxBAiSiunUhZa3zZwMH6zPVis0C3dDKiRWyUGIo14tTbZHGVviWxv3PQWZ7taZ4fg== dependencies: "@types/node" "*" escape-string-regexp "^4.0.0" @@ -6944,9 +7041,9 @@ ci-info@2.0.0, ci-info@^2.0.0: integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== ci-info@^3.1.0, ci-info@^3.2.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2" - integrity sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw== + version "3.5.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.5.0.tgz#bfac2a29263de4c829d806b1ab478e35091e171f" + integrity sha512-yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw== ci-job-number@^1.2.2: version "1.2.2" @@ -6976,9 +7073,9 @@ clean-css@4.2.x: source-map "~0.6.0" clean-css@^5.2.2: - version "5.2.2" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.2.2.tgz#d3a7c6ee2511011e051719838bdcf8314dc4548d" - integrity sha512-/eR8ru5zyxKzpBLv9YZvMXgTSSQn7AdkMItMYynsFgGwTveCRVam9IUPFloE85B4vAIj05IuKmmEoV7/AQjT0w== + version "5.3.1" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.3.1.tgz#d0610b0b90d125196a2894d35366f734e5d7aa32" + integrity sha512-lCr8OHhiWCTw4v8POJovCoh4T7I9U11yVsPjMWWnnMmp9ZowCxyad1Pathle/9HjaDp+fdQKjO9fQydE6RHTZg== dependencies: source-map "~0.6.0" @@ -6987,11 +7084,6 @@ clean-stack@^2.0.0: resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== -cli-boxes@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" - integrity sha1-T6kXw+WclKAEzWH47lCdplFocUM= - cli-boxes@^2.2.0, cli-boxes@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" @@ -7005,9 +7097,9 @@ cli-cursor@^3.1.0: restore-cursor "^3.1.0" cli-table3@^0.6.1: - version "0.6.2" - resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.2.tgz#aaf5df9d8b5bf12634dc8b3040806a0c07120d2a" - integrity sha512-QyavHCaIC80cMivimWu4aWHilIpiDpfm3hGmqAmXVL1UsnbLuBSMd21hTX6VY4ZSDSM73ESLeF8TOYId3rBTbw== + 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: @@ -7061,10 +7153,19 @@ cliui@^7.0.2: strip-ansi "^6.0.0" wrap-ansi "^7.0.0" +cliui@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.1" + wrap-ansi "^7.0.0" + clone-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" - integrity sha1-4+JbIHrE5wGvch4staFnksrD3Fg= + integrity sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g== clone-deep@^4.0.1: version "4.0.1" @@ -7075,44 +7176,37 @@ clone-deep@^4.0.1: kind-of "^6.0.2" shallow-clone "^3.0.0" -clone-regexp@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-2.2.0.tgz#7d65e00885cd8796405c35a737e7a86b7429e36f" - integrity sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q== - dependencies: - is-regexp "^2.0.0" - clone-response@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" - integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= + version "1.0.3" + resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.3.tgz#af2032aa47816399cf5f0a1d0db902f517abb8c3" + integrity sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA== dependencies: mimic-response "^1.0.0" clone-stats@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" - integrity sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE= + integrity sha512-dhUqc57gSMCo6TX85FLfe51eC/s+Im2MLkAgJwfaRRexR2tA4dd3eLEW4L6efzHc2iNorrRRXITifnDLlRrhaA== clone-stats@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" - integrity sha1-s3gt/4u1R04Yuba/D9/ngvh3doA= + integrity sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag== clone@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f" - integrity sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8= + integrity sha512-g62n3Kb9cszeZvmvBUqP/dsEJD/+80pDA8u8KqHnAPrVnQ2Je9rVV6opxkhuWCd1kCn2gOibzDKxCtBvD3q5kA== clone@^1.0.0, clone@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" - integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= + integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== clone@^2.1.1, clone@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" - integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= + integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== cloneable-readable@^1.0.0: version "1.1.3" @@ -7136,21 +7230,7 @@ co-body@^6.1.0: co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - -coa@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" - integrity sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA== - dependencies: - "@types/q" "^1.5.1" - chalk "^2.4.1" - q "^1.1.2" - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= + integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== coffee-script@^1.12.4: version "1.12.7" @@ -7170,7 +7250,7 @@ collect-v8-coverage@^1.0.0: collection-visit@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= + integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== dependencies: map-visit "^1.0.0" object-visit "^1.0.0" @@ -7192,7 +7272,7 @@ color-convert@^2.0.1: color-name@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== color-name@^1.0.0, color-name@~1.1.4: version "1.1.4" @@ -7200,9 +7280,9 @@ color-name@^1.0.0, color-name@~1.1.4: integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== color-string@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.9.0.tgz#63b6ebd1bec11999d1df3a79a7569451ac2be8aa" - integrity sha512-9Mrz2AQLefkH1UvASKj6v6hj/7eWgjnT/cVsR8CumieLoT+g900exWeNogqtweI8dxloXN9BDQTYro1oWu/5CQ== + version "1.9.1" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4" + integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg== dependencies: color-name "^1.0.0" simple-swizzle "^0.2.2" @@ -7212,29 +7292,24 @@ 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== -color@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/color/-/color-4.1.0.tgz#9502e6a2dcacb26adf4c60910a27628d010b3de3" - integrity sha512-o2rkkxyLGgYoeUy1OodXpbPAQNmlNBrirQ8ODO8QutzDiDMNdezSOZLNnusQ6pUpCQJUsaJIo9DZJKqa2HgH7A== +color@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/color/-/color-4.2.3.tgz#d781ecb5e57224ee43ea9627560107c0e0c6463a" + integrity sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A== dependencies: color-convert "^2.0.1" color-string "^1.9.0" -colord@^2.9.1, colord@^2.9.2: - version "2.9.2" - resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.2.tgz#25e2bacbbaa65991422c07ea209e2089428effb1" - integrity sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ== +colord@^2.9.1, colord@^2.9.3: + version "2.9.3" + resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" + integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw== -colorette@^2.0.10: +colorette@^2.0.10, colorette@^2.0.16: version "2.0.19" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== -colorette@^2.0.16: - version "2.0.16" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" - integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g== - colors@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" @@ -7268,9 +7343,9 @@ command-line-args@5.1.2: typical "^4.0.0" command-line-args@^5.1.1: - version "5.2.0" - resolved "https://registry.yarnpkg.com/command-line-args/-/command-line-args-5.2.0.tgz#087b02748272169741f1fd7c785b295df079b9be" - integrity sha512-4zqtU1hYsSJzcJBOcNZIbW5Fbk9BkjCp1pZVhQKoRaWL5J7N4XphDLwo8aWwdQpTugxwu+jf9u2ZhkXiqp5Z6A== + version "5.2.1" + resolved "https://registry.yarnpkg.com/command-line-args/-/command-line-args-5.2.1.tgz#c44c32e437a57d7c51157696893c5909e9cec42e" + integrity sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg== dependencies: array-back "^3.1.0" find-replace "^3.0.0" @@ -7278,13 +7353,13 @@ command-line-args@^5.1.1: typical "^4.0.0" command-line-usage@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/command-line-usage/-/command-line-usage-6.1.1.tgz#c908e28686108917758a49f45efb4f02f76bc03f" - integrity sha512-F59pEuAR9o1SF/bD0dQBDluhpT4jJQNWUHEuVBqpDmCUo6gPjCi+m9fCWnWZVR/oG6cMTUms4h+3NPl74wGXvA== + version "6.1.3" + resolved "https://registry.yarnpkg.com/command-line-usage/-/command-line-usage-6.1.3.tgz#428fa5acde6a838779dfa30e44686f4b6761d957" + integrity sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw== dependencies: - array-back "^4.0.1" + array-back "^4.0.2" chalk "^2.4.2" - table-layout "^1.0.1" + table-layout "^1.0.2" typical "^5.2.0" commander@2.17.x: @@ -7317,6 +7392,11 @@ commander@^8.0.0, commander@^8.3.0: resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== +commander@^9.3.0: + 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== + commander@~2.19.0: version "2.19.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" @@ -7332,7 +7412,7 @@ common-path-prefix@^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== -common-tags@^1.8.0, common-tags@^1.8.2: +common-tags@1.8.2, common-tags@^1.8.0, common-tags@^1.8.2: version "1.8.2" resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.2.tgz#94ebb3c076d26032745fd54face7f688ef5ac9c6" integrity sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA== @@ -7340,7 +7420,7 @@ common-tags@^1.8.0, common-tags@^1.8.2: commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= + integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== compare-func@^2.0.0: version "2.0.0" @@ -7358,17 +7438,17 @@ component-emitter@^1.2.1, component-emitter@~1.3.0: component-props@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/component-props/-/component-props-1.1.1.tgz#f9b7df9b9927b6e6d97c9bd272aa867670f34944" - integrity sha1-+bffm5kntubZfJvScqqGdnDzSUQ= + integrity sha512-69pIRJs9fCCHRqCz3390YF2LV1Lu6iEMZ5zuVqqUn+G20V9BNXlMs0cWawWeW9g4Ynmg29JmkG6R7/lUJoGd1Q== component-xor@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/component-xor/-/component-xor-0.0.4.tgz#c55d83ccc1b94cd5089a4e93fa7891c7263e59aa" - integrity sha1-xV2DzMG5TNUImk6T+niRxyY+Wao= + integrity sha512-ZIt6sla8gfo+AFVRZoZOertcnD5LJaY2T9CKE2j13NJxQt/mUafD69Bl7/Y4AnpI2LGjiXH7cOfJDx/n2G9edA== compose-function@3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/compose-function/-/compose-function-3.0.3.tgz#9ed675f13cc54501d30950a486ff6a7ba3ab185f" - integrity sha1-ntZ18TzFRQHTCVCkhv9qe6OrGF8= + integrity sha512-xzhzTJ5eC+gmIzvZq+C3kCJHsp9os6tJkrigDRZclyGtOKINbZtE8n1Tzmeh32jW+BUDPbvZpibwvJHBLGMVwg== dependencies: arity-n "^1.0.4" @@ -7455,15 +7535,15 @@ confusing-browser-globals@^1.0.10: resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz#ae40e9b57cdd3915408a2805ebd3a5585608dc81" integrity sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA== -console-control-strings@^1.0.0, console-control-strings@^1.1.0, console-control-strings@~1.1.0: +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 sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= + integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== constant-case@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/constant-case/-/constant-case-2.0.0.tgz#4175764d389d3fa9c8ecd29186ed6005243b6a46" - integrity sha1-QXV2TTidP6nI7NKRhu1gBSQ7akY= + integrity sha512-eS0N9WwmjTqrOmR3o83F5vW8Z+9R1HnVz3xmzT2PMFug9ly+Au/fxRWlEBSb6LcZwspSsEn9Xs1uw9YgzAg1EQ== dependencies: snake-case "^2.1.0" upper-case "^1.1.1" @@ -7489,29 +7569,6 @@ content-type@^1.0.4, content-type@~1.0.4: resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== -contentful-management@^7.5.1: - version "7.47.2" - resolved "https://registry.yarnpkg.com/contentful-management/-/contentful-management-7.47.2.tgz#8068cc1af42f31a0436b9b0d99f665fde1f04ca4" - integrity sha512-Q4ZUWrUh1IrCFq38ZLga2pkHObzQtsN1uieeVCCSG2VIMW8sU0DxrJE+9/t2qVIagYIWwyV15myxGVlDqq+3bg== - dependencies: - "@types/json-patch" "0.0.30" - axios "^0.21.4" - contentful-sdk-core "^6.10.4" - fast-copy "^2.1.0" - lodash.isplainobject "^4.0.6" - type-fest "^2.5.3" - -contentful-sdk-core@^6.10.4: - version "6.10.4" - resolved "https://registry.yarnpkg.com/contentful-sdk-core/-/contentful-sdk-core-6.10.4.tgz#3a077bd1017e107224101551d44834e77e62175e" - integrity sha512-vnivU13pKqFzs/eEugqOaDkKce6ZljBkpp6l25MsG8LA1HPCQNBnIkqP5VUbwk/ub7tkHteV9HtoTnmpdvB+Zg== - dependencies: - fast-copy "^2.1.0" - lodash.isplainobject "^4.0.6" - lodash.isstring "^4.0.1" - p-throttle "^4.1.1" - qs "^6.9.4" - conventional-changelog-angular@^5.0.11: version "5.0.13" resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" @@ -7521,18 +7578,18 @@ conventional-changelog-angular@^5.0.11: q "^1.5.1" conventional-changelog-conventionalcommits@^4.3.1: - version "4.6.2" - resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.2.tgz#6debf07a894f7c7e22b950e2f872de334d5d49ed" - integrity sha512-fo+VhM0VtD3wdHZtrPhgvTFjAhAMUjYeQV6B5+DB/cupG1O554pJdTwrvBInq8JLHl+GucKQpZycMPye/OpgSw== + version "4.6.3" + resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.3.tgz#0765490f56424b46f6cb4db9135902d6e5a36dc2" + integrity sha512-LTTQV4fwOM4oLPad317V/QNQ1FY4Hju5qeBIM1uTHbrnCE+Eg4CdRZ3gO2pUeR+tzWdp80M2j3qFFEDWVqOV4g== dependencies: compare-func "^2.0.0" lodash "^4.17.15" q "^1.5.1" conventional-commits-parser@^3.2.2: - version "3.2.3" - resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.2.3.tgz#fc43704698239451e3ef35fd1d8ed644f46bd86e" - integrity sha512-YyRDR7On9H07ICFpRm/igcdjIqebXbvf4Cff+Pf0BrBys1i1EOzx9iFXNlAbdrLAR8jf7bkUYkDAr8pEy0q4Pw== + version "3.2.4" + resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz#a7d3b77758a202a9b2293d2112a8d8052c740972" + integrity sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q== dependencies: JSONStream "^1.0.4" is-text-path "^1.0.1" @@ -7556,24 +7613,27 @@ convert-source-map@1.7.0: convert-source-map@^0.3.3: version "0.3.5" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.3.5.tgz#f1d802950af7dd2631a1febe0596550c86ab3190" - integrity sha1-8dgClQr33SYxof6+BZZVDIarMZA= + integrity sha512-+4nRk0k3oEpwUB7/CalD7xE2z4VmtEnnq0GO2IPTkrooTrAhEsWvuLF5iWP1dXrwluki/azwXV1ve7gtYuPldg== 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.8.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" - integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== - dependencies: - safe-buffer "~5.1.1" + 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== cookie-signature@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= + integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== -cookie@0.4.1, cookie@^0.4.1, cookie@~0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" - integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== +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== + +cookie@^0.4.1, cookie@~0.4.1: + version "0.4.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" + integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== cookies@~0.8.0: version "0.8.0" @@ -7586,7 +7646,7 @@ cookies@~0.8.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 sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= + integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== core-js-compat@3.9.0: version "3.9.0" @@ -7596,28 +7656,27 @@ core-js-compat@3.9.0: browserslist "^4.16.3" semver "7.0.0" -core-js-compat@^3.18.0, core-js-compat@^3.19.1, core-js-compat@^3.8.1: - version "3.20.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.20.1.tgz#96917b4db634fbbbc7b36575b2e8fcbf7e4f9691" - integrity sha512-AVhKZNpqMV3Jz8hU0YEXXE06qoxtQGsAqU0u1neUngz5IusDJRX/ZJ6t3i7mS7QxNyEONbCo14GprkBrxPlTZA== +core-js-compat@^3.25.1, core-js-compat@^3.8.1: + version "3.26.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.26.0.tgz#94e2cf8ba3e63800c4956ea298a6473bc9d62b44" + integrity sha512-piOX9Go+Z4f9ZiBFLnZ5VrOpBl0h7IGCkiFUN11QTe6LjAvOT3ifL/5TdoizMh99hcGy5SoLyWbapIY/PIb/3A== dependencies: - browserslist "^4.19.1" - semver "7.0.0" + browserslist "^4.21.4" -core-js-pure@^3.19.0, core-js-pure@^3.8.1: - version "3.20.1" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.20.1.tgz#f7a2c62f98de83e4da8fca7b78846d3a2f542145" - integrity sha512-yeNNr3L9cEBwNy6vhhIJ0nko7fE7uFO6PgawcacGt2VWep4WqQx0RiqlkgSP7kqUMC1IKdfO9qPeWXcUheHLVQ== +core-js-pure@^3.23.3, core-js-pure@^3.25.1: + version "3.26.0" + resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.26.0.tgz#7ad8a5dd7d910756f3124374b50026e23265ca9a" + integrity sha512-LiN6fylpVBVwT8twhhluD9TzXmZQQsr2I2eIKtWNbZI1XMfBT7CV18itaN6RA7EtQd/SDdRx/wzvAShX2HvhQA== core-js@^2.4.0: version "2.6.12" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== -core-js@^3.0.4, core-js@^3.14.0, core-js@^3.17.2, core-js@^3.22.3, core-js@^3.6.5, core-js@^3.8.2: - version "3.22.8" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.22.8.tgz#23f860b1fe60797cc4f704d76c93fea8a2f60631" - integrity sha512-UoGQ/cfzGYIuiq6Z7vWL1HfkE9U9IZ4Ub+0XSiJTCzvbZzgPA69oDF2f+lgJ6dFFLEdjW5O6svvoKzXX23xFkA== +core-js@^3.0.4, core-js@^3.14.0, core-js@^3.22.3, core-js@^3.6.5, core-js@^3.8.2: + version "3.26.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.26.0.tgz#a516db0ed0811be10eac5d94f3b8463d03faccfe" + integrity sha512-+DkDrhoR4Y0PxDz6rurahuB+I45OsEUv8E1maPTB6OuHRohMMcznBq9TMpdpDMm/hUPob/mJJS3PqgbHpMTQgw== core-util-is@~1.0.0: version "1.0.3" @@ -7691,10 +7750,10 @@ cpy@^8.1.2: p-filter "^2.1.0" p-map "^3.0.0" -create-gatsby@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/create-gatsby/-/create-gatsby-2.4.0.tgz#f4ecb19c6385fa6e52677b6f08845d2cd70378d9" - integrity sha512-tBGS/Fv4KPNIe8bJE58OyZlIjdvTzwm830RkNQspI+f4V69u0d+API6KGk1UFaGG63n5/d+1Efu/inzp9TMylQ== +create-gatsby@^2.24.0: + version "2.24.0" + resolved "https://registry.yarnpkg.com/create-gatsby/-/create-gatsby-2.24.0.tgz#c9ba9eac61a0bc180bc4b40d5ae0465ffe2e43a2" + integrity sha512-1ZN9cIGlPVPoyKHrl7n+iLf0SbIu/wdWBpujV/UeoIPJpEwEwUFe5fJPUIGTJkyHC97G6ArM+5mKt3fTZiCfwQ== dependencies: "@babel/runtime" "^7.15.4" @@ -7703,19 +7762,17 @@ create-require@^1.1.0: 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.3, 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== +cross-fetch@3.1.5, cross-fetch@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.5.tgz#e1389f44d9e7ba767907f7af8454787952ab534f" + integrity sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw== dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" + node-fetch "2.6.7" -cross-spawn@^5.0.1, cross-spawn@^5.1.0: +cross-spawn@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= + integrity sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A== dependencies: lru-cache "^4.0.1" shebang-command "^1.2.0" @@ -7732,31 +7789,43 @@ cross-spawn@^6.0.0, cross-spawn@^6.0.5: 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== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + 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== -css-blank-pseudo@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-3.0.1.tgz#aa9d4a8d9387728c9668c6bd91a258c5c1873746" - integrity sha512-ZGuwEmAZLsEHyKe/UVk+7Bj6Fl5nvxKAddxovyi5mI3jl4mFRqX7VW7M2ZejsE3XlWkL4GyVCifsKrmuxVdrcg== +css-blank-pseudo@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz#36523b01c12a25d812df343a32c322d2a2324561" + integrity sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ== dependencies: - postcss-selector-parser "^6.0.8" + postcss-selector-parser "^6.0.9" -css-declaration-sorter@^6.0.3: - version "6.1.3" - resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.1.3.tgz#e9852e4cf940ba79f509d9425b137d1f94438dc2" - integrity sha512-SvjQjNRZgh4ULK1LDJ2AduPKUKxIqmtU7ZAyi47BTV+M90Qvxr9AB6lKlLbDUfXqI9IQeYA8LbAsCZPpJEV3aA== - dependencies: - timsort "^0.3.0" +css-declaration-sorter@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz#be5e1d71b7a992433fb1c542c7a1b835e45682ec" + integrity sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w== -css-has-pseudo@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-3.0.1.tgz#f023e95890a948ab0f29cf76173982c2af967e35" - integrity sha512-yRZMyeJ8ebZAPuZmT66/2QjT0CR14qrQrbTSNc3cmTkVCKd/KkXcnO97WYWJlFQF6yzfNfOqG/9rISnrZ8SxZw== +css-functions-list@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/css-functions-list/-/css-functions-list-3.1.0.tgz#cf5b09f835ad91a00e5959bcfc627cd498e1321b" + integrity sha512-/9lCvYZaUbBGvYUgYGFJ4dcYiyqdhSjG7IPVluoV8A1ILjkF7ilmhp1OGUz8n+nmBcu0RNrQAzgD8B6FJbrt2w== + +css-has-pseudo@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz#57f6be91ca242d5c9020ee3e51bbb5b89fc7af73" + integrity sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw== dependencies: - postcss-selector-parser "^6.0.8" + postcss-selector-parser "^6.0.9" css-loader@^3.6.0: version "3.6.0" @@ -7794,17 +7863,17 @@ css-loader@^5.0.1, css-loader@^5.2.7: semver "^7.3.5" css-loader@^6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.5.1.tgz#0c43d4fbe0d97f699c91e9818cb585759091d1b1" - integrity sha512-gEy2w9AnJNnD9Kuo4XAP9VflW/ujKoS9c/syO+uWMlm5igc7LysKzPXaDoR2vroROkSwsTS2tGr1yGGEbZOYZQ== + version "6.7.1" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.7.1.tgz#e98106f154f6e1baf3fc3bc455cb9981c1d5fd2e" + integrity sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw== dependencies: icss-utils "^5.1.0" - postcss "^8.2.15" + postcss "^8.4.7" 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.1.0" + postcss-value-parser "^4.2.0" semver "^7.3.5" css-minimizer-webpack-plugin@^2.0.0: @@ -7820,55 +7889,43 @@ css-minimizer-webpack-plugin@^2.0.0: serialize-javascript "^5.0.1" source-map "^0.6.1" -css-prefers-color-scheme@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.1.tgz#8f56b336024259319d976146465b306b68975792" - integrity sha512-mTPYV3Ie8f0bw2ajimr4MOUDu5n5iYzhMrIOGN0zcwldAPYgdZc+xRMsSGhqQaNBZVNoxnoDr0m5icnqEyTtrA== - -css-select-base-adapter@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" - integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== +css-prefers-color-scheme@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz#ca8a22e5992c10a5b9d315155e7caee625903349" + integrity sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA== -css-select@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.1.0.tgz#6a34653356635934a81baca68d0255432105dbef" - integrity sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ== +css-select@^4.1.3, css-select@^4.2.1: + 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 "^3.2.1" - domutils "^1.7.0" - nth-check "^1.0.2" + css-what "^6.0.1" + domhandler "^4.3.1" + domutils "^2.8.0" + nth-check "^2.0.1" -css-select@^4.1.3: - version "4.2.1" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.2.1.tgz#9e665d6ae4c7f9d65dbe69d0316e3221fb274cdd" - integrity sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ== +css-select@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-5.1.0.tgz#b8ebd6554c3637ccc76688804ad3f6a6fdaea8a6" + integrity sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg== dependencies: boolbase "^1.0.0" - css-what "^5.1.0" - domhandler "^4.3.0" - domutils "^2.8.0" + css-what "^6.1.0" + domhandler "^5.0.2" + domutils "^3.0.1" nth-check "^2.0.1" css-select@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= + integrity sha512-dUQOBoqdR7QwV90WysXPLXG5LO7nhYBgiWVfxF80DKPF8zx1t/pUd2FYy73emg3zrjtM6dzmYgbHKfV2rxiHQA== dependencies: boolbase "~1.0.0" css-what "2.1" domutils "1.5.1" nth-check "~1.0.1" -css-tree@1.0.0-alpha.37: - version "1.0.0-alpha.37" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.37.tgz#98bebd62c4c1d9f960ec340cf9f7522e30709a22" - integrity sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg== - dependencies: - mdn-data "2.0.4" - source-map "^0.6.1" - css-tree@^1.1.2, css-tree@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" @@ -7882,20 +7939,15 @@ css-what@2.1: resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2" integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg== -css-what@^3.2.1: - version "3.4.2" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.2.tgz#ea7026fcb01777edbde52124e21f327e7ae950e4" - integrity sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ== - -css-what@^5.0.1, css-what@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.1.0.tgz#3f7b707aadf633baf62c2ceb8579b545bb40f7fe" - integrity sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw== +css-what@^6.0.1, css-what@^6.1.0: + version "6.1.0" + 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 sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s= + integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg== css@^2.0.0: version "2.2.4" @@ -7907,10 +7959,10 @@ css@^2.0.0: source-map-resolve "^0.5.2" urix "^0.1.0" -cssdb@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-5.0.0.tgz#96db23e70dda3d03a32346de611f0e79fee68b7f" - integrity sha512-Q7982SynYCtcLUBCPgUPFy2TZmDiFyimpdln8K2v4w2c07W4rXL7q5F1ksVAqOAQfxKyyUGCKSsioezKT5bU1Q== +cssdb@^7.0.1: + version "7.0.2" + resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-7.0.2.tgz#e1cadfe2be318797bd02ca929d2b3c7bac332abc" + integrity sha512-Vm4b6P/PifADu0a76H0DKRNVWq3Rq9xa/Nx6oEMUBJlwTUuZoZ3dkZxo8Gob3UEL53Cq+Ma1GBgISed6XEBs3w== cssesc@^3.0.0: version "3.0.0" @@ -7920,58 +7972,58 @@ cssesc@^3.0.0: cssfilter@0.0.10: version "0.0.10" resolved "https://registry.yarnpkg.com/cssfilter/-/cssfilter-0.0.10.tgz#c6d2672632a2e5c83e013e6864a42ce8defd20ae" - integrity sha1-xtJnJjKi5cg+AT5oZKQs6N79IK4= - -cssnano-preset-default@^5.1.9: - version "5.1.9" - resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.1.9.tgz#79628ac48eccbdad570f70b4018cc38d43d1b7df" - integrity sha512-RhkEucqlQ+OxEi14K1p8gdXcMQy1mSpo7P1oC44oRls7BYIj8p+cht4IFBFV3W4iOjTP8EUB33XV1fX9KhDzyA== - dependencies: - css-declaration-sorter "^6.0.3" - cssnano-utils "^2.0.1" - postcss-calc "^8.0.0" - postcss-colormin "^5.2.2" - postcss-convert-values "^5.0.2" - postcss-discard-comments "^5.0.1" - postcss-discard-duplicates "^5.0.1" - postcss-discard-empty "^5.0.1" - postcss-discard-overridden "^5.0.1" - postcss-merge-longhand "^5.0.4" - postcss-merge-rules "^5.0.3" - postcss-minify-font-values "^5.0.1" - postcss-minify-gradients "^5.0.3" - postcss-minify-params "^5.0.2" - postcss-minify-selectors "^5.1.0" - postcss-normalize-charset "^5.0.1" - postcss-normalize-display-values "^5.0.1" - postcss-normalize-positions "^5.0.1" - postcss-normalize-repeat-style "^5.0.1" - postcss-normalize-string "^5.0.1" - postcss-normalize-timing-functions "^5.0.1" - postcss-normalize-unicode "^5.0.1" - postcss-normalize-url "^5.0.4" - postcss-normalize-whitespace "^5.0.1" - postcss-ordered-values "^5.0.2" - postcss-reduce-initial "^5.0.2" - postcss-reduce-transforms "^5.0.1" - postcss-svgo "^5.0.3" - postcss-unique-selectors "^5.0.2" - -cssnano-utils@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-2.0.1.tgz#8660aa2b37ed869d2e2f22918196a9a8b6498ce2" - integrity sha512-i8vLRZTnEH9ubIyfdZCAdIdgnHAUeQeByEeQ2I7oTilvP9oHO6RScpeq3GsFUVqeB8uZgOQ9pw8utofNn32hhQ== + integrity sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw== + +cssnano-preset-default@^5.2.13: + version "5.2.13" + resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.2.13.tgz#e7353b0c57975d1bdd97ac96e68e5c1b8c68e990" + integrity sha512-PX7sQ4Pb+UtOWuz8A1d+Rbi+WimBIxJTRyBdgGp1J75VU0r/HFQeLnMYgHiCAp6AR4rqrc7Y4R+1Rjk3KJz6DQ== + dependencies: + css-declaration-sorter "^6.3.1" + cssnano-utils "^3.1.0" + postcss-calc "^8.2.3" + postcss-colormin "^5.3.0" + postcss-convert-values "^5.1.3" + postcss-discard-comments "^5.1.2" + postcss-discard-duplicates "^5.1.0" + postcss-discard-empty "^5.1.1" + postcss-discard-overridden "^5.1.0" + postcss-merge-longhand "^5.1.7" + postcss-merge-rules "^5.1.3" + postcss-minify-font-values "^5.1.0" + postcss-minify-gradients "^5.1.1" + postcss-minify-params "^5.1.4" + postcss-minify-selectors "^5.2.1" + postcss-normalize-charset "^5.1.0" + postcss-normalize-display-values "^5.1.0" + postcss-normalize-positions "^5.1.1" + postcss-normalize-repeat-style "^5.1.1" + postcss-normalize-string "^5.1.0" + postcss-normalize-timing-functions "^5.1.0" + postcss-normalize-unicode "^5.1.1" + postcss-normalize-url "^5.1.0" + postcss-normalize-whitespace "^5.1.1" + postcss-ordered-values "^5.1.3" + postcss-reduce-initial "^5.1.1" + postcss-reduce-transforms "^5.1.0" + postcss-svgo "^5.1.0" + postcss-unique-selectors "^5.1.1" + +cssnano-utils@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-3.1.0.tgz#95684d08c91511edfc70d2636338ca37ef3a6861" + integrity sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA== cssnano@^5.0.0, cssnano@^5.0.1: - version "5.0.14" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-5.0.14.tgz#99bc550f663b48c38e9b8e0ae795697c9de84b47" - integrity sha512-qzhRkFvBhv08tbyKCIfWbxBXmkIpLl1uNblt8SpTHkgLfON5OCPX/CCnkdNmEosvo8bANQYmTTMEgcVBlisHaw== + version "5.1.14" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-5.1.14.tgz#07b0af6da73641276fe5a6d45757702ebae2eb05" + integrity sha512-Oou7ihiTocbKqi0J1bB+TRJIQX5RMR3JghA8hcWSw9mjBLQ5Y3RWqEDoYG3sRNlAbCIXpqMoZGbq5KDR3vdzgw== dependencies: - cssnano-preset-default "^5.1.9" + cssnano-preset-default "^5.2.13" lilconfig "^2.0.3" yaml "^1.10.2" -csso@^4.0.2, csso@^4.2.0: +csso@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== @@ -7996,9 +8048,9 @@ cssstyle@^2.3.0: cssom "~0.3.6" csstype@^3.0.2: - version "3.0.10" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.10.tgz#2ad3a7bed70f35b965707c092e5f30b327c290e5" - integrity sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA== + version "3.1.1" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" + integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== csv-generate@^3.4.3: version "3.4.3" @@ -8015,7 +8067,7 @@ csv-stringify@^5.6.5: resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.5.tgz#c6d74badda4b49a79bf4e72f91cce1e33b94de00" integrity sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A== -csv@^5.3.1: +csv@^5.5.0: version "5.5.3" resolved "https://registry.yarnpkg.com/csv/-/csv-5.5.3.tgz#cd26c1e45eae00ce6a9b7b27dcb94955ec95207d" integrity sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g== @@ -8028,7 +8080,7 @@ csv@^5.3.1: currently-unhandled@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" - integrity sha1-mI3zP+qxke95mmE2nddsF635V+o= + integrity sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng== dependencies: array-find-index "^1.0.1" @@ -8045,15 +8097,15 @@ d@1, d@^1.0.1: es5-ext "^0.10.50" type "^1.0.1" -damerau-levenshtein@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.7.tgz#64368003512a1a6992593741a09a9d31a836f55d" - integrity sha512-VvdQIPGdWP0SqFXghj79Wf/5LArmreyMsGLa6FG6iC4t3j7j5s71TrwWmT/4akbDQIqjfACkLZmjXhA7g2oUZw== +damerau-levenshtein@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz#b43d286ccbd36bc5b2f7ed41caf2d0aba1f8a6e7" + integrity sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA== dargs@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/dargs/-/dargs-4.1.0.tgz#03a9dbb4b5c2f139bf14ae53f0b8a2a6a86f4e17" - integrity sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc= + integrity sha512-jyweV/k0rbv2WK4r9KLayuBrSh2Py0tNmV7LBoSMH4hMQyrG8OPyIOWB2VEx4DJKXWmK4lopYMVvORlDt2S8Aw== dependencies: number-is-nan "^1.0.0" @@ -8082,9 +8134,9 @@ dataloader@^1.4.0: integrity sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw== date-fns@^2.16.1, date-fns@^2.25.0: - version "2.28.0" - resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.28.0.tgz#9570d656f5fc13143e50c975a3b6bbeb46cd08b2" - integrity sha512-8d35hViGYx/QH0icHYCeLmsLmMUheMmTyV9Fcm6gvNwdw31yXXH+O85sOBJ+OLnLQMKZowvpKb6FgMIQjcpvQw== + version "2.29.3" + resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.29.3.tgz#27402d2fc67eb442b511b70bbdf98e6411cd68a8" + integrity sha512-dDCnyH2WnnKusqvZZ6+jA1O51Ibt8ZMRNkDZdyAyK4YfbDwa/cEmuztzG5pk6hqlp9aSBPYcjOlktquahGwGeA== debounce@1.2.1, debounce@^1.2.0: version "1.2.1" @@ -8098,38 +8150,24 @@ debug@2, debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9: dependencies: ms "2.0.0" -debug@4, debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@~4.3.1: - version "4.3.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" - integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== - dependencies: - ms "2.1.2" - -debug@4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" - integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== +debug@4, debug@4.3.4, debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.1: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" -debug@^3.1.0, debug@^3.1.1, debug@^3.2.6, debug@^3.2.7: +debug@^3.0.1, debug@^3.1.0, debug@^3.2.6, debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== dependencies: ms "^2.1.1" -debug@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - decamelize-keys@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" - integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= + integrity sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg== dependencies: decamelize "^1.1.0" map-obj "^1.0.0" @@ -8137,12 +8175,12 @@ decamelize-keys@^1.1.0: decamelize@^1.1.0, decamelize@^1.1.2, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== decimal.js@^10.2.1: - version "10.3.1" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783" - integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ== + version "10.4.2" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.2.tgz#0341651d1d997d86065a2ce3a441fbd0d8e8b98e" + integrity sha512-ic1yEvwT6GuvaYwBLLY6/aFFgjZdySKTE8en/fkU3QICTmRtgtSlFn0u0BXN06InZwtfCelR7j8LRiDI/02iGA== decode-uri-component@^0.2.0: version "0.2.0" @@ -8152,7 +8190,7 @@ decode-uri-component@^0.2.0: decompress-response@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" - integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= + integrity sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA== dependencies: mimic-response "^1.0.0" @@ -8166,12 +8204,12 @@ decompress-response@^6.0.0: dedent@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= + integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA== deep-equal@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= + integrity sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw== deep-extend@^0.6.0, deep-extend@~0.6.0: version "0.6.0" @@ -8183,7 +8221,7 @@ deep-is@^0.1.3, deep-is@~0.1.3: resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== -deepmerge@^4.0.0, deepmerge@^4.2.2: +deepmerge@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== @@ -8191,16 +8229,16 @@ deepmerge@^4.0.0, deepmerge@^4.2.2: 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 sha1-5Z0JpdFXuCi4dsJoFuYcPSosIDo= + 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.3" - resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" - integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= + version "1.0.4" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a" + integrity sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A== dependencies: clone "^1.0.2" @@ -8219,24 +8257,25 @@ 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: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== +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== dependencies: - object-keys "^1.0.12" + 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 sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= + 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 sha1-dp66rz9KY6rTr56NMEybvnm/sOY= + integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== dependencies: is-descriptor "^1.0.0" @@ -8248,31 +8287,17 @@ define-property@^2.0.2: is-descriptor "^1.0.2" isobject "^3.0.1" -del@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/del/-/del-5.1.0.tgz#d9487c94e367410e6eff2925ee58c0c84a75b3a7" - integrity sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA== - dependencies: - globby "^10.0.1" - graceful-fs "^4.2.2" - is-glob "^4.0.1" - is-path-cwd "^2.2.0" - is-path-inside "^3.0.1" - p-map "^3.0.0" - rimraf "^3.0.0" - 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" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== -depd@^2.0.0, depd@~2.0.0: +depd@2.0.0, depd@^2.0.0, depd@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== @@ -8280,17 +8305,17 @@ depd@^2.0.0, depd@~2.0.0: depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= + integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== dependency-graph@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/dependency-graph/-/dependency-graph-0.11.0.tgz#ac0ce7ed68a54da22165a85e97a01d53f5eb2e27" integrity sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg== -destroy@^1.0.4, destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= +destroy@1.2.0, destroy@^1.0.4: + 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" @@ -8307,15 +8332,12 @@ detect-indent@^6.0.0: detect-libc@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= + integrity sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg== -detect-newline@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-1.0.3.tgz#e97b1003877d70c09af1af35bfadff168de4920d" - integrity sha1-6XsQA4d9cMCa8a81v63/Fo3kkg0= - dependencies: - get-stdin "^4.0.1" - minimist "^1.1.0" +detect-libc@^2.0.0, detect-libc@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.1.tgz#e1897aa88fa6ad197862937fbc0441ef352ee0cd" + integrity sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w== detect-newline@^3.0.0: version "3.1.0" @@ -8329,7 +8351,7 @@ detect-package-manager@^2.0.1: dependencies: execa "^5.1.1" -detect-port-alt@1.1.6: +detect-port-alt@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.6.tgz#24707deabe932d4a3cf621302027c2b266568275" integrity sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q== @@ -8338,17 +8360,17 @@ detect-port-alt@1.1.6: debug "^2.6.0" detect-port@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/detect-port/-/detect-port-1.3.0.tgz#d9c40e9accadd4df5cac6a782aefd014d573d1f1" - integrity sha512-E+B1gzkl2gqxt1IhUzwjrxBKRqx1UzC3WLONHinn8S3T6lwV/agVCyitiFOsGJ/eYuEUBvD71MZHy3Pv1G9doQ== + 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 "^2.6.0" + debug "4" devcert@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/devcert/-/devcert-1.2.1.tgz#cb545583f4dfd33ed5358dacc3756d4c3878b858" - integrity sha512-R7DqtMtsNmFVY75kzRHXON3hXoJili2xxlEcZgHi0VHSx8aJECfm7ZqAquXzTeAM/I9f8G2pHc/zq5k6iXHQzA== + version "1.2.2" + resolved "https://registry.yarnpkg.com/devcert/-/devcert-1.2.2.tgz#7ebbefeb74991e269ceafcd66f2bb78677c12652" + integrity sha512-UsLqvtJGPiGwsIZnJINUnFYaWgK7CroreGRndWHZkRD58tPFr3pVbbSyHR8lbh41+azR4jKvuNZ+eCoBZGA5kA== dependencies: "@types/configstore" "^2.1.1" "@types/debug" "^0.0.30" @@ -8374,23 +8396,15 @@ devcert@^1.2.0: tmp "^0.0.33" tslib "^1.10.0" -devtools-protocol@0.0.901419: - version "0.0.901419" - resolved "https://registry.yarnpkg.com/devtools-protocol/-/devtools-protocol-0.0.901419.tgz#79b5459c48fe7e1c5563c02bd72f8fec3e0cebcd" - integrity sha512-4INMPwNm9XRpBukhNbF7OB6fNTTCaI8pzy/fXg0xQzAy5h3zL1P8xT3QazgKqBrb/hAYwIBizqDBZ7GtJE74QQ== +devtools-protocol@0.0.981744: + version "0.0.981744" + resolved "https://registry.yarnpkg.com/devtools-protocol/-/devtools-protocol-0.0.981744.tgz#9960da0370284577d46c28979a0b32651022bacf" + integrity sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg== diacritics-map@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/diacritics-map/-/diacritics-map-0.1.0.tgz#6dfc0ff9d01000a2edf2865371cac316e94977af" - integrity sha1-bfwP+dAQAKLt8oZTccrDFulJd68= - -dicer@0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/dicer/-/dicer-0.2.5.tgz#5996c086bb33218c812c090bddc09cd12facb70f" - integrity sha1-WZbAhrszIYyBLAkL3cCc0S+stw8= - dependencies: - readable-stream "1.1.x" - streamsearch "0.1.2" + integrity sha512-3omnDTYrGigU0i4cJjvaKwD52B8aoqyX/NEIkukFFkogBemsIbhSa1O414fpTp5nuszJG6lvQ5vBvDVNCbSsaQ== didyoumean2@4.1.0: version "4.1.0" @@ -8406,20 +8420,15 @@ didyoumean@^1.2.1: resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037" integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw== -diff-sequences@^25.2.6: - version "25.2.6" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-25.2.6.tgz#5f467c00edd35352b7bca46d7927d60e687a76dd" - integrity sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg== - diff-sequences@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== -diff-sequences@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.4.0.tgz#d783920ad8d06ec718a060d00196dfef25b132a5" - integrity sha512-YqiQzkrsmHMH5uuh8OdQFU9/ZpADnwzml8z0O5HvRNda+5UZsaX/xN+AAxfR2hWq1Y7HZnAzO9J5lJXOuDz2Ww== +diff-sequences@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" + integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== diff@^4.0.1: version "4.0.2" @@ -8427,9 +8436,9 @@ diff@^4.0.1: integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== diff@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" - integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== + version "5.1.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.1.0.tgz#bc52d298c5ea8df9194800224445ed43ffc87e40" + integrity sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw== dir-glob@^2.2.2: version "2.2.2" @@ -8448,7 +8457,7 @@ dir-glob@^3.0.1: docopt@^0.6.1: version "0.6.2" resolved "https://registry.yarnpkg.com/docopt/-/docopt-0.6.2.tgz#b28e9e2220da5ec49f7ea5bb24a47787405eeb11" - integrity sha1-so6eIiDaXsSffqW7JKR3h0Be6xE= + integrity sha512-NqTbaYeE4gA/wU1hdKFdU+AFahpDOpgGLzHP42k6H6DKExJd0A55KEVWYhL9FEmHmgeLvEU2vuKXDuU+4yToOw== doctrine@^2.1.0: version "2.1.0" @@ -8487,15 +8496,24 @@ dom-serializer@0: domelementtype "^2.0.1" entities "^2.0.0" -dom-serializer@^1.0.1, dom-serializer@^1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91" - integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig== +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-serializer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53" + integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg== + dependencies: + domelementtype "^2.3.0" + domhandler "^5.0.2" + entities "^4.2.0" + dom-serializer@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" @@ -8514,10 +8532,10 @@ domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== -domelementtype@^2.0.1, domelementtype@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57" - integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A== +domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" + integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== domexception@^2.0.1: version "2.0.1" @@ -8533,22 +8551,29 @@ domhandler@^2.3.0: dependencies: domelementtype "1" -domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.0.tgz#16c658c626cf966967e306f966b431f77d4a5626" - integrity sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g== +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" +domhandler@^5.0.1, domhandler@^5.0.2, domhandler@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31" + integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w== + dependencies: + domelementtype "^2.3.0" + domutils@1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= + integrity sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw== dependencies: dom-serializer "0" domelementtype "1" -domutils@^1.5.1, domutils@^1.7.0: +domutils@^1.5.1: version "1.7.0" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== @@ -8556,7 +8581,7 @@ domutils@^1.5.1, domutils@^1.7.0: dom-serializer "0" domelementtype "1" -domutils@^2.5.2, domutils@^2.7.0, domutils@^2.8.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== @@ -8565,10 +8590,19 @@ domutils@^2.5.2, domutils@^2.7.0, domutils@^2.8.0: domelementtype "^2.2.0" domhandler "^4.2.0" +domutils@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.0.1.tgz#696b3875238338cb186b6c0612bd4901c89a4f1c" + integrity sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q== + dependencies: + dom-serializer "^2.0.0" + domelementtype "^2.3.0" + domhandler "^5.0.1" + dot-case@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-2.1.1.tgz#34dcf37f50a8e93c2b3bca8bb7fb9155c7da3bee" - integrity sha1-NNzzf1Co6TwrO8qLt/uRVcfaO+4= + integrity sha512-HnM6ZlFqcajLsyudHq7LeeLDr2rFAVYtDv/hV5qchQEidSck8j9OPUsXY9KwJv/lHMtYlX4DjRQqwFYa+0r8Ug== dependencies: no-case "^2.2.0" @@ -8606,6 +8640,11 @@ dotenv-webpack@^7.0.0: dependencies: dotenv-defaults "^2.0.2" +dotenv@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-7.0.0.tgz#a2be3cd52736673206e8a85fb5210eea29628e7c" + integrity sha512-M3NhsLbV1i6HuGzBUH8vXrtxOk+tWmzWKDMbAVSUp3Zsjm7ywFeuwrUXhmhQyRK1q5B5GGy7hcXPbj3bnfZg2g== + dotenv@^8.0.0, dotenv@^8.1.0, dotenv@^8.2.0, dotenv@^8.6.0: version "8.6.0" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" @@ -8619,16 +8658,16 @@ dset@^3.1.2: duplexer2@^0.1.2: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1" - integrity sha1-ixLauHjA1p4+eJEFFmKjL8a93ME= + integrity sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA== dependencies: readable-stream "^2.0.2" duplexer3@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" - integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= + version "0.1.5" + resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.5.tgz#0b5e4d7bad5de8901ea4440624c8e1d20099217e" + integrity sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA== -duplexer@^0.1.1: +duplexer@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== @@ -8643,10 +8682,15 @@ duplexify@^3.6.0: 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 sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.4.251: version "1.4.284" @@ -8678,7 +8722,7 @@ emoji-regex@^9.2.2: emojis-list@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= + integrity sha512-knHEZMgs8BB+MInokmNTg/OyPlAddghe1YBgNwJBc5zsJi/uyIcXoSDsL/W9ymOsBoBGdPIHXYJ9+qKFwRwDng== emojis-list@^3.0.0: version "3.0.0" @@ -8688,7 +8732,7 @@ emojis-list@^3.0.0: encodeurl@^1.0.2, encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: version "1.4.4" @@ -8709,7 +8753,7 @@ endent@^2.0.1: ends-with@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/ends-with/-/ends-with-0.2.0.tgz#2f9da98d57a50cfda4571ce4339000500f4e6b8a" - integrity sha1-L52pjVelDP2kVxzkM5AAUA9Oa4o= + integrity sha512-lRppY4dK3VkqBdR242sKcAJeYc8Gf/DhoX9AWvWI2RzccmLnqBQfwm2k4oSDv5MPDjUqawCauXhZkyWxkVhRsg== engine.io-client@~4.1.0: version "4.1.4" @@ -8747,7 +8791,7 @@ engine.io@~4.1.0: engine.io-parser "~4.0.0" ws "~7.4.2" -enhanced-resolve@^5.10.0: +enhanced-resolve@^5.10.0, enhanced-resolve@^5.8.3: version "5.10.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz#0dc579c3bb2a1032e357ac45b8f3a6f3ad4fb1e6" integrity sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ== @@ -8772,6 +8816,11 @@ entities@^2.0.0: resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== +entities@^4.2.0, entities@^4.3.0, 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== + envinfo@^7.8.1: version "7.8.1" resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" @@ -8789,43 +8838,47 @@ error-ex@^1.2.0, error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -error-stack-parser@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.0.6.tgz#5a99a707bd7a4c58a797902d48d82803ede6aad8" - integrity sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ== +error-stack-parser@^2.0.6, error-stack-parser@^2.1.4: + 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.1.1" + stackframe "^1.3.4" errorstacks@^2.2.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/errorstacks/-/errorstacks-2.3.2.tgz#cab2c7c83e199a2b2862de3fea46f68372094166" - integrity sha512-cJp8qf5t2cXmVZJjZVrcU4ODFJeQOcUyjJEtPFtWO+3N6JPM6vCe4Sfv3cwIs/qS7gnUo/fvKX/mDCVQZq+P7A== + version "2.4.0" + resolved "https://registry.yarnpkg.com/errorstacks/-/errorstacks-2.4.0.tgz#2155674dd9e741aacda3f3b8b967d9c40a4a0baf" + integrity sha512-5ecWhU5gt0a5G05nmQcgCxP5HperSMxLDzvWlT5U+ZSKkuDK0rJ3dbCQny6/vSCIXjwrhwSecXBbw1alr295hQ== -es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.19.1: - version "1.19.1" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3" - integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w== +es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.5, es-abstract@^1.20.1: + version "1.20.4" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.20.4.tgz#1d103f9f8d78d4cf0713edcd6d0ed1a46eed5861" + integrity sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA== dependencies: call-bind "^1.0.2" es-to-primitive "^1.2.1" function-bind "^1.1.1" - get-intrinsic "^1.1.1" + function.prototype.name "^1.1.5" + get-intrinsic "^1.1.3" get-symbol-description "^1.0.0" has "^1.0.3" - has-symbols "^1.0.2" + has-property-descriptors "^1.0.0" + has-symbols "^1.0.3" internal-slot "^1.0.3" - is-callable "^1.2.4" - is-negative-zero "^2.0.1" + is-callable "^1.2.7" + is-negative-zero "^2.0.2" is-regex "^1.1.4" - is-shared-array-buffer "^1.0.1" + is-shared-array-buffer "^1.0.2" is-string "^1.0.7" - is-weakref "^1.0.1" - object-inspect "^1.11.0" + is-weakref "^1.0.2" + object-inspect "^1.12.2" object-keys "^1.1.1" - object.assign "^4.1.2" - string.prototype.trimend "^1.0.4" - string.prototype.trimstart "^1.0.4" - unbox-primitive "^1.0.1" + object.assign "^4.1.4" + regexp.prototype.flags "^1.4.3" + safe-regex-test "^1.0.0" + string.prototype.trimend "^1.0.5" + string.prototype.trimstart "^1.0.5" + unbox-primitive "^1.0.2" es-array-method-boxes-properly@^1.0.0: version "1.0.0" @@ -8851,6 +8904,18 @@ es-module-lexer@^0.9.0: resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== +es-module-lexer@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.1.0.tgz#bf56a09b5f1c6aea6ba231b0a636a0f60c410b70" + integrity sha512-fJg+1tiyEeS8figV+fPcPpm8WqJEflG3yPU0NOm5xMvrNkuiy7HzX/Ljng4Y0hAoiw4/3hQTCFYw+ub8+a2pRA== + +es-shim-unscopables@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" + integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w== + dependencies: + has "^1.0.3" + es-to-primitive@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" @@ -8861,28 +8926,28 @@ es-to-primitive@^1.2.1: is-symbol "^1.0.2" es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@^0.10.53, es5-ext@~0.10.14, es5-ext@~0.10.2, es5-ext@~0.10.46: - version "0.10.53" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz#93c5a3acfdbef275220ad72644ad02ee18368de1" - integrity sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q== + version "0.10.62" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.62.tgz#5e6adc19a6da524bf3d1e02bbc8960e5eb49a9a5" + integrity sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA== dependencies: - es6-iterator "~2.0.3" - es6-symbol "~3.1.3" - next-tick "~1.0.0" + es6-iterator "^2.0.3" + es6-symbol "^3.1.3" + next-tick "^1.1.0" es5-shim@^4.5.13: - version "4.6.4" - resolved "https://registry.yarnpkg.com/es5-shim/-/es5-shim-4.6.4.tgz#10ce5f06c7bccfdd60b4e08edf95c7e2fbc1dc2a" - integrity sha512-Z0f7OUYZ8JfqT12d3Tgh2ErxIH5Shaz97GE8qyDG9quxb2Hmh2vvFHlOFjx6lzyD0CRgvJfnNYcisjdbRp7MPw== + 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-denodeify@^0.1.0: version "0.1.5" resolved "https://registry.yarnpkg.com/es6-denodeify/-/es6-denodeify-0.1.5.tgz#31d4d5fe9c5503e125460439310e16a2a3f39c1f" - integrity sha1-MdTV/pxVA+ElRgQ5MQ4WoqPznB8= + integrity sha512-731Rf4NqlPvhkT1pIF7r8vZxESJlWocNpXLuyPlVnfEGXlwuJaMvU5WpyyDjpudDC2cgXVX849xljzvQqBg1QQ== -es6-iterator@2.0.3, es6-iterator@^2.0.3, es6-iterator@~2.0.3: +es6-iterator@2.0.3, es6-iterator@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" - integrity sha1-p96IkUGgWpSwhUQDstCg+/qY87c= + integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g== dependencies: d "1" es5-ext "^0.10.35" @@ -8891,9 +8956,9 @@ es6-iterator@2.0.3, es6-iterator@^2.0.3, es6-iterator@~2.0.3: es6-promise@^3.0.2: version "3.3.1" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613" - integrity sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM= + integrity sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg== -es6-promise@^4.2.6: +es6-promise@^4.1.1, es6-promise@^4.2.6: version "4.2.8" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w== @@ -8903,7 +8968,7 @@ es6-shim@^0.35.5: resolved "https://registry.yarnpkg.com/es6-shim/-/es6-shim-0.35.6.tgz#d10578301a83af2de58b9eadb7c2c9945f7388a0" integrity sha512-EmTr31wppcaIAgblChZiuN/l9Y7DPyw8Xtbg7fIVngn6zMW+IEBJDJngeKC3x6wr0V/vcA2wqeFnaw1bFJbDdA== -es6-symbol@^3.1.1, es6-symbol@~3.1.3: +es6-symbol@^3.1.1, es6-symbol@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== @@ -8921,131 +8986,272 @@ es6-weak-map@^2.0.3: es6-iterator "^2.0.3" es6-symbol "^3.1.1" -esbuild-android-arm64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.8.tgz#69324e08ba68c7d9a541e7b825d7235b83e17bd6" - integrity sha512-tAEoSHnPBSH0cCAFa/aYs3LPsoTY4SwsP6wDKi4PaelbQYNJjqNpAeweyJ8l98g1D6ZkLyqsHbkYj+209sezkA== - -esbuild-darwin-64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.8.tgz#7176b692b9de746ba2f9dd4dd81dc4f1b7670786" - integrity sha512-t7p7WzTb+ybiD/irkMt5j/NzB+jY+8yPTsrXk5zCOH1O7DdthRnAUJ7pJPwImdL7jAGRbLtYRxUPgCHs/0qUPw== - -esbuild-darwin-arm64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.8.tgz#59167584e58428877e48e05c4cca58755f843327" - integrity sha512-5FeaT2zMUajKnBwUMSsjZev5iA38YHrDmXhkOCwZQIFUvhqojinqCrvv/X7dyxb1987bcY9KGwJ+EwDwd922HQ== - -esbuild-freebsd-64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.8.tgz#00b7d6e00abba9c2eccc9acd576c796333671e9c" - integrity sha512-pGHBLSf7ynfyDZXUtbq/GsA2VIwQlWXrUj1AMcE0id47mRdEUM8/1ZuqMGZx63hRnNgtK9zNJ8OIu2c7qq76Qw== - -esbuild-freebsd-arm64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.8.tgz#57f0cd5a1cb37fa2c0e84e780677fe62f1e8c894" - integrity sha512-g4GgAnrx6Gh1BjKJjJWgPnOR4tW2FcAx9wFvyUjRsIjB35gT+aAFR+P/zStu5OG9LnbS8Pvjd4wS68QIXk+2dA== - -esbuild-linux-32@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.14.8.tgz#bbf3e5d3fb30f949030d0c2241ac93a172917d56" - integrity sha512-wPfQJadF5vTzriw/B8Ide74PeAJlZW7czNx3NIUHkHlXb+En1SeIqNzl6jG9DuJUl57xD9Ucl9YJFEkFeX8eLg== - -esbuild-linux-64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.14.8.tgz#08631e9e0da613603bcec782f29fecbc6f4596de" - integrity sha512-+RNuLk9RhRDL2kG+KTEYl5cIgF6AGLkRnKKWEu9DpCZaickONEqrKyQSVn410Hj105DLdW6qvIXQQHPycJhExg== - -esbuild-linux-arm64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.8.tgz#206d39c8dfbb7c72aa2f5fc52f7402b5b8a77366" - integrity sha512-BtWoKNYul9UoxUvQUSdSrvSmJyFL1sGnNPTSqWCg1wMe4kmc8UY2yVsXSSkKO8N2jtHxlgFyz/XhvNBzEwGVcw== - -esbuild-linux-arm@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.8.tgz#e28e70420d187f5e403bfa4a72df676d53d707fd" - integrity sha512-HIct38SvUAIJbiTwV/PVQroimQo96TGtzRDAEZxTorB4vsAj1r8bd0keXExPU4RH7G0zIqC4loQQpWYL+nH4Vg== - -esbuild-linux-mips64le@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.8.tgz#04997ac1a0df794a4d5e04d78015863d48490590" - integrity sha512-0DxnCl9XTvaQtsX6Qa+Phr5i9b04INwwSv2RbQ2UWRLoQ/037iaFzbmuhgrcmaGOcRwPkCa+4Qo5EgI01MUgsQ== - -esbuild-linux-ppc64le@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.8.tgz#1827378feff9702c156047ba118c1f3bd74da67e" - integrity sha512-Uzr/OMj97Q0qoWLXCvXCKUY/z1SNI4iSZEuYylM5Nd71HGStL32XWq/MReJ0PYMvUMKKJicKSKw2jWM1uBQ84Q== - -esbuild-linux-s390x@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.8.tgz#200ac44cda59b81135b325c3a29d016969650876" - integrity sha512-vURka7aCA5DrRoOqOn6pXYwFlDSoQ4qnqam8AC0Ikn6tibutuhgar6M3Ek2DCuz9yqd396mngdYr5A8x2TPkww== +esbuild-android-64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.14.54.tgz#505f41832884313bbaffb27704b8bcaa2d8616be" + integrity sha512-Tz2++Aqqz0rJ7kYBfz+iqyE3QMycD4vk7LBRyWaAVFgFtQ/O8EJOnVmTOiDWYZ/uYzB4kvP+bqejYdVKzE5lAQ== + +esbuild-android-64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.15.12.tgz#5e8151d5f0a748c71a7fbea8cee844ccf008e6fc" + integrity sha512-MJKXwvPY9g0rGps0+U65HlTsM1wUs9lbjt5CU19RESqycGFDRijMDQsh68MtbzkqWSRdEtiKS1mtPzKneaAI0Q== + +esbuild-android-arm64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.54.tgz#8ce69d7caba49646e009968fe5754a21a9871771" + integrity sha512-F9E+/QDi9sSkLaClO8SOV6etqPd+5DgJje1F9lOWoNncDdOBL2YF59IhsWATSt0TLZbYCf3pNlTHvVV5VfHdvg== + +esbuild-android-arm64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.15.12.tgz#5ee72a6baa444bc96ffcb472a3ba4aba2cc80666" + integrity sha512-Hc9SEcZbIMhhLcvhr1DH+lrrec9SFTiRzfJ7EGSBZiiw994gfkVV6vG0sLWqQQ6DD7V4+OggB+Hn0IRUdDUqvA== + +esbuild-darwin-64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.54.tgz#24ba67b9a8cb890a3c08d9018f887cc221cdda25" + integrity sha512-jtdKWV3nBviOd5v4hOpkVmpxsBy90CGzebpbO9beiqUYVMBtSc0AL9zGftFuBon7PNDcdvNCEuQqw2x0wP9yug== + +esbuild-darwin-64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.15.12.tgz#70047007e093fa1b3ba7ef86f9b3fa63db51fe25" + integrity sha512-qkmqrTVYPFiePt5qFjP8w/S+GIUMbt6k8qmiPraECUWfPptaPJUGkCKrWEfYFRWB7bY23FV95rhvPyh/KARP8Q== + +esbuild-darwin-arm64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.54.tgz#3f7cdb78888ee05e488d250a2bdaab1fa671bf73" + integrity sha512-OPafJHD2oUPyvJMrsCvDGkRrVCar5aVyHfWGQzY1dWnzErjrDuSETxwA2HSsyg2jORLY8yBfzc1MIpUkXlctmw== + +esbuild-darwin-arm64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.12.tgz#41c951f23d9a70539bcca552bae6e5196696ae04" + integrity sha512-z4zPX02tQ41kcXMyN3c/GfZpIjKoI/BzHrdKUwhC/Ki5BAhWv59A9M8H+iqaRbwpzYrYidTybBwiZAIWCLJAkw== + +esbuild-freebsd-64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.54.tgz#09250f997a56ed4650f3e1979c905ffc40bbe94d" + integrity sha512-OKwd4gmwHqOTp4mOGZKe/XUlbDJ4Q9TjX0hMPIDBUWWu/kwhBAudJdBoxnjNf9ocIB6GN6CPowYpR/hRCbSYAg== + +esbuild-freebsd-64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.12.tgz#a761b5afd12bbedb7d56c612e9cfa4d2711f33f0" + integrity sha512-XFL7gKMCKXLDiAiBjhLG0XECliXaRLTZh6hsyzqUqPUf/PY4C6EJDTKIeqqPKXaVJ8+fzNek88285krSz1QECw== + +esbuild-freebsd-arm64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.54.tgz#bafb46ed04fc5f97cbdb016d86947a79579f8e48" + integrity sha512-sFwueGr7OvIFiQT6WeG0jRLjkjdqWWSrfbVwZp8iMP+8UHEHRBvlaxL6IuKNDwAozNUmbb8nIMXa7oAOARGs1Q== + +esbuild-freebsd-arm64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.12.tgz#6b0839d4d58deabc6cbd96276eb8cbf94f7f335e" + integrity sha512-jwEIu5UCUk6TjiG1X+KQnCGISI+ILnXzIzt9yDVrhjug2fkYzlLbl0K43q96Q3KB66v6N1UFF0r5Ks4Xo7i72g== + +esbuild-linux-32@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.14.54.tgz#e2a8c4a8efdc355405325033fcebeb941f781fe5" + integrity sha512-1ZuY+JDI//WmklKlBgJnglpUL1owm2OX+8E1syCD6UAxcMM/XoWd76OHSjl/0MR0LisSAXDqgjT3uJqT67O3qw== + +esbuild-linux-32@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.15.12.tgz#bd50bfe22514d434d97d5150977496e2631345b4" + integrity sha512-uSQuSEyF1kVzGzuIr4XM+v7TPKxHjBnLcwv2yPyCz8riV8VUCnO/C4BF3w5dHiVpCd5Z1cebBtZJNlC4anWpwA== + +esbuild-linux-64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.14.54.tgz#de5fdba1c95666cf72369f52b40b03be71226652" + integrity sha512-EgjAgH5HwTbtNsTqQOXWApBaPVdDn7XcK+/PtJwZLT1UmpLoznPd8c5CxqsH2dQK3j05YsB3L17T8vE7cp4cCg== + +esbuild-linux-64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.15.12.tgz#074bb2b194bf658245f8490f29c01ffcdfa8c931" + integrity sha512-QcgCKb7zfJxqT9o5z9ZUeGH1k8N6iX1Y7VNsEi5F9+HzN1OIx7ESxtQXDN9jbeUSPiRH1n9cw6gFT3H4qbdvcA== + +esbuild-linux-arm64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.54.tgz#dae4cd42ae9787468b6a5c158da4c84e83b0ce8b" + integrity sha512-WL71L+0Rwv+Gv/HTmxTEmpv0UgmxYa5ftZILVi2QmZBgX3q7+tDeOQNqGtdXSdsL8TQi1vIaVFHUPDe0O0kdig== + +esbuild-linux-arm64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.12.tgz#3bf789c4396dc032875a122988efd6f3733f28f5" + integrity sha512-HtNq5xm8fUpZKwWKS2/YGwSfTF+339L4aIA8yphNKYJckd5hVdhfdl6GM2P3HwLSCORS++++7++//ApEwXEuAQ== + +esbuild-linux-arm@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.54.tgz#a2c1dff6d0f21dbe8fc6998a122675533ddfcd59" + integrity sha512-qqz/SjemQhVMTnvcLGoLOdFpCYbz4v4fUo+TfsWG+1aOu70/80RV6bgNpR2JCrppV2moUQkww+6bWxXRL9YMGw== + +esbuild-linux-arm@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.15.12.tgz#b91b5a8d470053f6c2c9c8a5e67ec10a71fe4a67" + integrity sha512-Wf7T0aNylGcLu7hBnzMvsTfEXdEdJY/hY3u36Vla21aY66xR0MS5I1Hw8nVquXjTN0A6fk/vnr32tkC/C2lb0A== + +esbuild-linux-mips64le@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.54.tgz#d9918e9e4cb972f8d6dae8e8655bf9ee131eda34" + integrity sha512-qTHGQB8D1etd0u1+sB6p0ikLKRVuCWhYQhAHRPkO+OF3I/iSlTKNNS0Lh2Oc0g0UFGguaFZZiPJdJey3AGpAlw== + +esbuild-linux-mips64le@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.12.tgz#2fb54099ada3c950a7536dfcba46172c61e580e2" + integrity sha512-Qol3+AvivngUZkTVFgLpb0H6DT+N5/zM3V1YgTkryPYFeUvuT5JFNDR3ZiS6LxhyF8EE+fiNtzwlPqMDqVcc6A== + +esbuild-linux-ppc64le@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.54.tgz#3f9a0f6d41073fb1a640680845c7de52995f137e" + integrity sha512-j3OMlzHiqwZBDPRCDFKcx595XVfOfOnv68Ax3U4UKZ3MTYQB5Yz3X1mn5GnodEVYzhtZgxEBidLWeIs8FDSfrQ== + +esbuild-linux-ppc64le@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.12.tgz#9e3b8c09825fb27886249dfb3142a750df29a1b7" + integrity sha512-4D8qUCo+CFKaR0cGXtGyVsOI7w7k93Qxb3KFXWr75An0DHamYzq8lt7TNZKoOq/Gh8c40/aKaxvcZnTgQ0TJNg== + +esbuild-linux-riscv64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.54.tgz#618853c028178a61837bc799d2013d4695e451c8" + integrity sha512-y7Vt7Wl9dkOGZjxQZnDAqqn+XOqFD7IMWiewY5SPlNlzMX39ocPQlOaoxvT4FllA5viyV26/QzHtvTjVNOxHZg== + +esbuild-linux-riscv64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.12.tgz#923d0f5b6e12ee0d1fe116b08e4ae4478fe40693" + integrity sha512-G9w6NcuuCI6TUUxe6ka0enjZHDnSVK8bO+1qDhMOCtl7Tr78CcZilJj8SGLN00zO5iIlwNRZKHjdMpfFgNn1VA== + +esbuild-linux-s390x@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.54.tgz#d1885c4c5a76bbb5a0fe182e2c8c60eb9e29f2a6" + integrity sha512-zaHpW9dziAsi7lRcyV4r8dhfG1qBidQWUXweUjnw+lliChJqQr+6XD71K41oEIC3Mx1KStovEmlzm+MkGZHnHA== + +esbuild-linux-s390x@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.12.tgz#3b1620220482b96266a0c6d9d471d451a1eab86f" + integrity sha512-Lt6BDnuXbXeqSlVuuUM5z18GkJAZf3ERskGZbAWjrQoi9xbEIsj/hEzVnSAFLtkfLuy2DE4RwTcX02tZFunXww== esbuild-loader@^2.18.0: - version "2.18.0" - resolved "https://registry.yarnpkg.com/esbuild-loader/-/esbuild-loader-2.18.0.tgz#7b9548578ab954574fd94655693d22aa5ec74120" - integrity sha512-AKqxM3bI+gvGPV8o6NAhR+cBxVO8+dh+O0OXBHIXXwuSGumckbPWHzZ17subjBGI2YEGyJ1STH7Haj8aCrwL/w== + version "2.20.0" + resolved "https://registry.yarnpkg.com/esbuild-loader/-/esbuild-loader-2.20.0.tgz#28fcff0142fa7bd227512d69f31e9a6e202bb88f" + integrity sha512-dr+j8O4w5RvqZ7I4PPB4EIyVTd679EBQnMm+JBB7av+vu05Zpje2IpK5N3ld1VWa+WxrInIbNFAg093+E1aRsA== dependencies: - esbuild "^0.14.6" + esbuild "^0.15.6" joycon "^3.0.1" json5 "^2.2.0" loader-utils "^2.0.0" tapable "^2.2.0" webpack-sources "^2.2.0" -esbuild-netbsd-64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.8.tgz#8159d8eae111f80ea6e4cbfa5d4cf658388a72d4" - integrity sha512-tjyDak2/pp0VUAhBW6/ueuReMd5qLHNlisXl5pq0Xn0z+kH9urA/t1igm0JassWbdMz123td5ZEQWoD9KbtOAw== - -esbuild-openbsd-64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.8.tgz#2a9498d881a3ab94927c724f34dd1160eef1f3b8" - integrity sha512-zAKKV15fIyAuDDga5rQv0lW2ufBWj/OCjqjDBb3dJf5SfoAi/DMIHuzmkKQeDQ+oxt9Rp1D7ZOlOBVflutFTqQ== - -esbuild-sunos-64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.8.tgz#2447de7d79848ad528c7d44caab4938eb8f5a0cc" - integrity sha512-xV41Wa8imziM/2dbWZjLKQbIETRgo5dE0oc/uPsgaecJhsrdA0VkGa/V432LJSUYv967xHDQdoRRl5tr80+NnQ== - -esbuild-windows-32@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.14.8.tgz#3287281552d7e4c851b3106940ff5826f518043e" - integrity sha512-AxpdeLKQSyCZo7MzdOyV4OgEbEJcjnrS/2niAjbHESbjuS5P1DN/5vZoJ/JSWDVa/40OkBuHBhAXMx1HK3UDsg== - -esbuild-windows-64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.14.8.tgz#b4052868438b4f17b5c2a908cf344ed2bd267c38" - integrity sha512-/3pllNoy8mrz/E1rYalwiwwhzJBrYQhEapwAteHZbFVhGzYuB8F80e8x5eA8dhFHxDiZh1VzK+hREwwSt8UTQA== - -esbuild-windows-arm64@0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.8.tgz#512d06097cb4b848526a37c48a47223f1c6cc667" - integrity sha512-lTm5naoNgaUvzIiax3XYIEebqwr3bIIEEtqUhzQ2UQ+JMBmvhr02w3sJIJqF3axTX6TgWrC1OtM7DYNvFG+aXA== - -esbuild@^0.14.6, esbuild@^0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.8.tgz#f60a07ca9400d61d09a98f96d666c50613972550" - integrity sha512-stMsCBmxwaMpeK8GC/49L/cRGIwsHwoEN7Twk5zDTHlm/63c0KXFKzDC8iM2Mi3fyCKwS002TAH6IlAvqR6t3g== +esbuild-netbsd-64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.54.tgz#69ae917a2ff241b7df1dbf22baf04bd330349e81" + integrity sha512-PR01lmIMnfJTgeU9VJTDY9ZerDWVFIUzAtJuDHwwceppW7cQWjBBqP48NdeRtoP04/AtO9a7w3viI+PIDr6d+w== + +esbuild-netbsd-64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.12.tgz#276730f80da646859b1af5a740e7802d8cd73e42" + integrity sha512-jlUxCiHO1dsqoURZDQts+HK100o0hXfi4t54MNRMCAqKGAV33JCVvMplLAa2FwviSojT/5ZG5HUfG3gstwAG8w== + +esbuild-openbsd-64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.54.tgz#db4c8495287a350a6790de22edea247a57c5d47b" + integrity sha512-Qyk7ikT2o7Wu76UsvvDS5q0amJvmRzDyVlL0qf5VLsLchjCa1+IAvd8kTBgUxD7VBUUVgItLkk609ZHUc1oCaw== + +esbuild-openbsd-64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.12.tgz#bd0eea1dd2ca0722ed489d88c26714034429f8ae" + integrity sha512-1o1uAfRTMIWNOmpf8v7iudND0L6zRBYSH45sofCZywrcf7NcZA+c7aFsS1YryU+yN7aRppTqdUK1PgbZVaB1Dw== + +esbuild-sunos-64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.54.tgz#54287ee3da73d3844b721c21bc80c1dc7e1bf7da" + integrity sha512-28GZ24KmMSeKi5ueWzMcco6EBHStL3B6ubM7M51RmPwXQGLe0teBGJocmWhgwccA1GeFXqxzILIxXpHbl9Q/Kw== + +esbuild-sunos-64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.15.12.tgz#5e56bf9eef3b2d92360d6d29dcde7722acbecc9e" + integrity sha512-nkl251DpoWoBO9Eq9aFdoIt2yYmp4I3kvQjba3jFKlMXuqQ9A4q+JaqdkCouG3DHgAGnzshzaGu6xofGcXyPXg== + +esbuild-windows-32@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.14.54.tgz#f8aaf9a5667630b40f0fb3aa37bf01bbd340ce31" + integrity sha512-T+rdZW19ql9MjS7pixmZYVObd9G7kcaZo+sETqNH4RCkuuYSuv9AGHUVnPoP9hhuE1WM1ZimHz1CIBHBboLU7w== + +esbuild-windows-32@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.15.12.tgz#a4f1a301c1a2fa7701fcd4b91ef9d2620cf293d0" + integrity sha512-WlGeBZHgPC00O08luIp5B2SP4cNCp/PcS+3Pcg31kdcJPopHxLkdCXtadLU9J82LCfw4TVls21A6lilQ9mzHrw== + +esbuild-windows-64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.14.54.tgz#bf54b51bd3e9b0f1886ffdb224a4176031ea0af4" + integrity sha512-AoHTRBUuYwXtZhjXZbA1pGfTo8cJo3vZIcWGLiUcTNgHpJJMC1rVA44ZereBHMJtotyN71S8Qw0npiCIkW96cQ== + +esbuild-windows-64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.15.12.tgz#bc2b467541744d653be4fe64eaa9b0dbbf8e07f6" + integrity sha512-VActO3WnWZSN//xjSfbiGOSyC+wkZtI8I4KlgrTo5oHJM6z3MZZBCuFaZHd8hzf/W9KPhF0lY8OqlmWC9HO5AA== + +esbuild-windows-arm64@0.14.54: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.54.tgz#937d15675a15e4b0e4fafdbaa3a01a776a2be982" + integrity sha512-M0kuUvXhot1zOISQGXwWn6YtS+Y/1RT9WrVIOywZnJHo3jCDyewAc79aKNQWFCQm+xNHVTq9h8dZKvygoXQQRg== + +esbuild-windows-arm64@0.15.12: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.12.tgz#9a7266404334a86be800957eaee9aef94c3df328" + integrity sha512-Of3MIacva1OK/m4zCNIvBfz8VVROBmQT+gRX6pFTLPngFYcj6TFH/12VveAqq1k9VB2l28EoVMNMUCcmsfwyuA== + +esbuild@^0.14.18: + version "0.14.54" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.54.tgz#8b44dcf2b0f1a66fc22459943dccf477535e9aa2" + integrity sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA== optionalDependencies: - esbuild-android-arm64 "0.14.8" - esbuild-darwin-64 "0.14.8" - esbuild-darwin-arm64 "0.14.8" - esbuild-freebsd-64 "0.14.8" - esbuild-freebsd-arm64 "0.14.8" - esbuild-linux-32 "0.14.8" - esbuild-linux-64 "0.14.8" - esbuild-linux-arm "0.14.8" - esbuild-linux-arm64 "0.14.8" - esbuild-linux-mips64le "0.14.8" - esbuild-linux-ppc64le "0.14.8" - esbuild-linux-s390x "0.14.8" - esbuild-netbsd-64 "0.14.8" - esbuild-openbsd-64 "0.14.8" - esbuild-sunos-64 "0.14.8" - esbuild-windows-32 "0.14.8" - esbuild-windows-64 "0.14.8" - esbuild-windows-arm64 "0.14.8" + "@esbuild/linux-loong64" "0.14.54" + esbuild-android-64 "0.14.54" + esbuild-android-arm64 "0.14.54" + esbuild-darwin-64 "0.14.54" + esbuild-darwin-arm64 "0.14.54" + esbuild-freebsd-64 "0.14.54" + esbuild-freebsd-arm64 "0.14.54" + esbuild-linux-32 "0.14.54" + esbuild-linux-64 "0.14.54" + esbuild-linux-arm "0.14.54" + esbuild-linux-arm64 "0.14.54" + esbuild-linux-mips64le "0.14.54" + esbuild-linux-ppc64le "0.14.54" + esbuild-linux-riscv64 "0.14.54" + esbuild-linux-s390x "0.14.54" + esbuild-netbsd-64 "0.14.54" + esbuild-openbsd-64 "0.14.54" + esbuild-sunos-64 "0.14.54" + esbuild-windows-32 "0.14.54" + esbuild-windows-64 "0.14.54" + esbuild-windows-arm64 "0.14.54" + +esbuild@^0.15.6: + version "0.15.12" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.15.12.tgz#6c8e22d6d3b7430d165c33848298d3fc9a1f251c" + integrity sha512-PcT+/wyDqJQsRVhaE9uX/Oq4XLrFh0ce/bs2TJh4CSaw9xuvI+xFrH2nAYOADbhQjUgAhNWC5LKoUsakm4dxng== + optionalDependencies: + "@esbuild/android-arm" "0.15.12" + "@esbuild/linux-loong64" "0.15.12" + esbuild-android-64 "0.15.12" + esbuild-android-arm64 "0.15.12" + esbuild-darwin-64 "0.15.12" + esbuild-darwin-arm64 "0.15.12" + esbuild-freebsd-64 "0.15.12" + esbuild-freebsd-arm64 "0.15.12" + esbuild-linux-32 "0.15.12" + esbuild-linux-64 "0.15.12" + esbuild-linux-arm "0.15.12" + esbuild-linux-arm64 "0.15.12" + esbuild-linux-mips64le "0.15.12" + esbuild-linux-ppc64le "0.15.12" + esbuild-linux-riscv64 "0.15.12" + esbuild-linux-s390x "0.15.12" + esbuild-netbsd-64 "0.15.12" + esbuild-openbsd-64 "0.15.12" + esbuild-sunos-64 "0.15.12" + esbuild-windows-32 "0.15.12" + esbuild-windows-64 "0.15.12" + esbuild-windows-arm64 "0.15.12" escalade@^3.1.1: version "3.1.1" @@ -9060,17 +9266,17 @@ escape-goat@^2.0.0: escape-html@^1.0.3, escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= - -escape-string-regexp@2.0.0, escape-string-regexp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" - integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== escape-string-regexp@^1.0.2, 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" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +escape-string-regexp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== escape-string-regexp@^4.0.0: version "4.0.0" @@ -9090,9 +9296,9 @@ escodegen@^2.0.0: source-map "~0.6.1" eslint-config-prettier@^8.3.0: - version "8.3.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz#f7471b20b6fe8a9a9254cc684454202886a2dd7a" - integrity sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew== + version "8.5.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz#5a81680ec934beca02c7b1a61cf8ca34b66feab1" + integrity sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q== eslint-config-react-app@^6.0.0: version "6.0.0" @@ -9109,10 +9315,10 @@ eslint-import-resolver-node@^0.3.6: debug "^3.2.7" resolve "^1.20.0" -eslint-mdx@^1.16.0: - version "1.16.0" - resolved "https://registry.yarnpkg.com/eslint-mdx/-/eslint-mdx-1.16.0.tgz#e95b8e9bde391d3ad8ec327fdce062e96be166f4" - integrity sha512-x+E50XrnGJefbzj7cpKPjXKL06KWSlzCrD5/02ZMmi+IMgwoR9Z8V44S/ff78Kg75WVnXgo0oJMcpNP85xxY+Q== +eslint-mdx@^1.17.1: + version "1.17.1" + resolved "https://registry.yarnpkg.com/eslint-mdx/-/eslint-mdx-1.17.1.tgz#8af9e60cf79e895ec94f23e059fa73bab16c2958" + integrity sha512-ihkTZCYipPUpzZgTeTwRajj3ZFYQAMWUm/ajscLWjXPVA2+ZQoLRreVNETRZ1znCnE3OAGbwmA1vd0uxtSk2wg== dependencies: cosmiconfig "^7.0.1" remark-mdx "^1.6.22" @@ -9121,14 +9327,12 @@ eslint-mdx@^1.16.0: tslib "^2.3.1" unified "^9.2.2" -eslint-module-utils@^2.7.1: - version "2.7.1" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.7.1.tgz#b435001c9f8dd4ab7f6d0efcae4b9696d4c24b7c" - integrity sha512-fjoetBXQZq2tSTWZ9yWVl2KuFrTZZH3V+9iD1V1RfpDgxzJR+mPd/KZmMiA8gbPqdBzpNiEHOuT7IYEWxrH0zQ== +eslint-module-utils@^2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz#4f3e41116aaf13a20792261e61d3a2e7e0583974" + integrity sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA== dependencies: debug "^3.2.7" - find-up "^2.1.0" - pkg-dir "^2.0.0" eslint-plugin-flowtype@^5.10.0: version "5.10.0" @@ -9138,52 +9342,43 @@ eslint-plugin-flowtype@^5.10.0: lodash "^4.17.15" string-natural-compare "^3.0.1" -eslint-plugin-graphql@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-graphql/-/eslint-plugin-graphql-4.0.0.tgz#d238ff2baee4d632cfcbe787a7a70a1f50428358" - integrity sha512-d5tQm24YkVvCEk29ZR5ScsgXqAGCjKlMS8lx3mS7FS/EKsWbkvXQImpvic03EpMIvNTBW5e+2xnHzXB/VHNZJw== - dependencies: - "@babel/runtime" "^7.10.0" - graphql-config "^3.0.2" - lodash.flatten "^4.4.0" - lodash.without "^4.4.0" - -eslint-plugin-import@^2.25.3: - version "2.25.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.25.3.tgz#a554b5f66e08fb4f6dc99221866e57cfff824766" - integrity sha512-RzAVbby+72IB3iOEL8clzPLzL3wpDrlwjsTBAQXgyp5SeTqqY+0bFubwuo+y/HLhNZcXV4XqTBO4LGsfyHIDXg== +eslint-plugin-import@^2.26.0: + version "2.26.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz#f812dc47be4f2b72b478a021605a59fc6fe8b88b" + integrity sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA== dependencies: array-includes "^3.1.4" array.prototype.flat "^1.2.5" debug "^2.6.9" doctrine "^2.1.0" eslint-import-resolver-node "^0.3.6" - eslint-module-utils "^2.7.1" + eslint-module-utils "^2.7.3" has "^1.0.3" - is-core-module "^2.8.0" + is-core-module "^2.8.1" is-glob "^4.0.3" - minimatch "^3.0.4" + minimatch "^3.1.2" object.values "^1.1.5" - resolve "^1.20.0" - tsconfig-paths "^3.11.0" + resolve "^1.22.0" + tsconfig-paths "^3.14.1" -eslint-plugin-jsx-a11y@^6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.5.1.tgz#cdbf2df901040ca140b6ec14715c988889c2a6d8" - integrity sha512-sVCFKX9fllURnXT2JwLN5Qgo24Ug5NF6dxhkmxsMEUZhXRcGg+X3e1JbJ84YePQKBl5E0ZjAH5Q4rkdcGY99+g== +eslint-plugin-jsx-a11y@^6.5.1, eslint-plugin-jsx-a11y@^6.6.1: + version "6.6.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz#93736fc91b83fdc38cc8d115deedfc3091aef1ff" + integrity sha512-sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q== dependencies: - "@babel/runtime" "^7.16.3" + "@babel/runtime" "^7.18.9" aria-query "^4.2.2" - array-includes "^3.1.4" + array-includes "^3.1.5" ast-types-flow "^0.0.7" - axe-core "^4.3.5" + axe-core "^4.4.3" axobject-query "^2.2.0" - damerau-levenshtein "^1.0.7" + damerau-levenshtein "^1.0.8" emoji-regex "^9.2.2" has "^1.0.3" - jsx-ast-utils "^3.2.1" + jsx-ast-utils "^3.3.2" language-tags "^1.0.5" - minimatch "^3.0.4" + minimatch "^3.1.2" + semver "^6.3.0" eslint-plugin-lit@^1.6.1: version "1.6.1" @@ -9202,11 +9397,11 @@ eslint-plugin-markdown@^2.2.1: mdast-util-from-markdown "^0.8.5" eslint-plugin-mdx@^1.16.0: - version "1.16.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-mdx/-/eslint-plugin-mdx-1.16.0.tgz#16471df68e5ac4095e47eb1a3cd9444676e00ecf" - integrity sha512-p5S6+UZMt+9Xa4fJNaBcldO3gHkDwoPMFM6417PfggPlbai8mWbrSEehZU6o3vZ2Lg/WQfVXYic35VYycYqJDA== + version "1.17.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-mdx/-/eslint-plugin-mdx-1.17.1.tgz#c5aa72abae47fd858c183ea606e3e69168b3aa7a" + integrity sha512-yOI2FmHCh+cgkMEkznxvWxfLC8AqZgco7509DjwMoCzXaxslv7YmGBKkvZyHxcbLmswnaMRBlYcd2BT7KPEnKw== dependencies: - eslint-mdx "^1.16.0" + eslint-mdx "^1.17.1" eslint-plugin-markdown "^2.2.1" synckit "^0.4.1" tslib "^2.3.1" @@ -9221,36 +9416,36 @@ eslint-plugin-no-smart-quotes@^1.3.0: string.prototype.matchall "^4.0.2" eslint-plugin-prettier@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz#8b99d1e4b8b24a762472b4567992023619cb98e0" - integrity sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ== + version "4.2.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz#651cbb88b1dab98bfd42f017a12fa6b2d993f94b" + integrity sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ== dependencies: prettier-linter-helpers "^1.0.0" -eslint-plugin-react-hooks@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.3.0.tgz#318dbf312e06fab1c835a4abef00121751ac1172" - integrity sha512-XslZy0LnMn+84NEG9jSGR6eGqaZB3133L8xewQo3fQagbQuGt7a63gf+P1NGKZavEYEC3UXaWEAA/AqDkuN6xA== +eslint-plugin-react-hooks@^4.3.0, eslint-plugin-react-hooks@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz#4c3e697ad95b77e93f8646aaa1630c1ba607edd3" + integrity sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g== -eslint-plugin-react@^7.27.0, eslint-plugin-react@^7.27.1: - version "7.28.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.28.0.tgz#8f3ff450677571a659ce76efc6d80b6a525adbdf" - integrity sha512-IOlFIRHzWfEQQKcAD4iyYDndHwTQiCMcJVJjxempf203jnNLUnW34AXLrV33+nEXoifJE2ZEGmcjKPL8957eSw== +eslint-plugin-react@^7.27.0, eslint-plugin-react@^7.30.1: + version "7.31.10" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.31.10.tgz#6782c2c7fe91c09e715d536067644bbb9491419a" + integrity sha512-e4N/nc6AAlg4UKW/mXeYWd3R++qUano5/o+t+wnWxIf+bLsOaH3a4q74kX3nDjYym3VBN4HyO9nEn1GcAqgQOA== dependencies: - array-includes "^3.1.4" - array.prototype.flatmap "^1.2.5" + array-includes "^3.1.5" + array.prototype.flatmap "^1.3.0" doctrine "^2.1.0" estraverse "^5.3.0" jsx-ast-utils "^2.4.1 || ^3.0.0" - minimatch "^3.0.4" + minimatch "^3.1.2" object.entries "^1.1.5" object.fromentries "^2.0.5" - object.hasown "^1.1.0" + object.hasown "^1.1.1" object.values "^1.1.5" - prop-types "^15.7.2" + prop-types "^15.8.1" resolve "^2.0.0-next.3" semver "^6.3.0" - string.prototype.matchall "^4.0.6" + string.prototype.matchall "^4.0.7" eslint-plugin-wc@^1.3.2: version "1.3.2" @@ -9305,15 +9500,15 @@ eslint-visitor-keys@^3.3.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== -eslint-webpack-plugin@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/eslint-webpack-plugin/-/eslint-webpack-plugin-2.6.0.tgz#3bd4ada4e539cb1f6687d2f619073dbb509361cd" - integrity sha512-V+LPY/T3kur5QO3u+1s34VDTcRxjXWPUGM4hlmTb5DwVD0OQz631yGTxJZf4SpAqAjdbBVe978S8BJeHpAdOhQ== +eslint-webpack-plugin@^2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/eslint-webpack-plugin/-/eslint-webpack-plugin-2.7.0.tgz#0525793a4f8c652c1c6d863995ce1e0f2dcbd143" + integrity sha512-bNaVVUvU4srexGhVcayn/F4pJAz19CWBkKoMx7aSQ4wtTbZQCnG5O9LHCE42mM+JSKOUp7n6vd5CIwzj7lOVGA== dependencies: - "@types/eslint" "^7.28.2" + "@types/eslint" "^7.29.0" arrify "^2.0.1" - jest-worker "^27.3.1" - micromatch "^4.0.4" + jest-worker "^27.5.1" + micromatch "^4.0.5" normalize-path "^3.0.0" schema-utils "^3.1.1" @@ -9477,24 +9672,25 @@ esutils@^2.0.2: etag@^1.8.1, etag@~1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== eval@^0.1.0, eval@^0.1.4: - version "0.1.6" - resolved "https://registry.yarnpkg.com/eval/-/eval-0.1.6.tgz#9620d7d8c85515e97e6b47c5814f46ae381cb3cc" - integrity sha512-o0XUw+5OGkXw4pJZzQoXUk+H87DHuC+7ZE//oSrRGtatTmr12oTnLfg6QOq9DyTt0c/p4TwzgmkKrBzWTSizyQ== + version "0.1.8" + resolved "https://registry.yarnpkg.com/eval/-/eval-0.1.8.tgz#2b903473b8cc1d1989b83a1e7923f883eb357f85" + integrity sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw== dependencies: + "@types/node" "*" require-like ">= 0.1.1" event-emitter@^0.3.5: version "0.3.5" resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" - integrity sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk= + integrity sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA== dependencies: d "1" es5-ext "~0.10.14" -event-source-polyfill@^1.0.25: +event-source-polyfill@1.0.25: version "1.0.25" resolved "https://registry.yarnpkg.com/event-source-polyfill/-/event-source-polyfill-1.0.25.tgz#d8bb7f99cb6f8119c2baf086d9f6ee0514b6d9c8" integrity sha512-hQxu6sN1Eq4JjoI7ITdQeGGUN193A2ra83qC0Ltm9I2UJVAten3OFVN6k5RX4YWeCS0BoC8xg/5czOCIHVosQg== @@ -9504,7 +9700,7 @@ event-target-shim@^5.0.0: resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== -eventemitter3@^4.0.0, eventemitter3@^4.0.4: +eventemitter3@^4.0.4: version "4.0.7" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== @@ -9519,19 +9715,6 @@ exec-sh@^0.3.2: 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@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" - integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.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@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" @@ -9575,27 +9758,15 @@ execa@^5.0.0, execa@^5.1.1: signal-exit "^3.0.3" strip-final-newline "^2.0.0" -execall@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/execall/-/execall-2.0.0.tgz#16a06b5fe5099df7d00be5d9c06eecded1663b45" - integrity sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow== - dependencies: - clone-regexp "^2.1.0" - -exif-parser@^0.1.12: - version "0.1.12" - resolved "https://registry.yarnpkg.com/exif-parser/-/exif-parser-0.1.12.tgz#58a9d2d72c02c1f6f02a0ef4a9166272b7760922" - integrity sha1-WKnS1ywCwfbwKg70qRZicrd2CSI= - exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= + 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 sha1-t3c14xXOMPa27/D4OwQVGiJEliI= + integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== dependencies: debug "^2.3.3" define-property "^0.2.5" @@ -9608,7 +9779,7 @@ expand-brackets@^2.1.4: expand-range@^1.8.1: version "1.8.2" resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - integrity sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= + integrity sha512-AFASGfIlnIbkKPQwX1yHaDjFvh/1gyKJODme52V6IORh69uEYgZp0o9C+qsIGNVEiuuhQU0CSSl++Rlegg1qvA== dependencies: fill-range "^2.1.0" @@ -9617,17 +9788,15 @@ expand-template@^2.0.3: resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== -expect@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/expect/-/expect-27.4.2.tgz#4429b0f7e307771d176de9bdf23229b101db6ef6" - integrity sha512-BjAXIDC6ZOW+WBFNg96J22D27Nq5ohn+oGcuP2rtOtcjuxNoV9McpQ60PcQWhdFOSBIQdR72e+4HdnbZTFSTyg== +expect@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" + integrity sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw== dependencies: - "@jest/types" "^27.4.2" - ansi-styles "^5.0.0" - jest-get-type "^27.4.0" - jest-matcher-utils "^27.4.2" - jest-message-util "^27.4.2" - jest-regex-util "^27.4.0" + "@jest/types" "^27.5.1" + jest-get-type "^27.5.1" + jest-matcher-utils "^27.5.1" + jest-message-util "^27.5.1" express-graphql@^0.12.0: version "0.12.0" @@ -9639,60 +9808,70 @@ express-graphql@^0.12.0: http-errors "1.8.0" raw-body "^2.4.1" +express-http-proxy@^1.6.3: + version "1.6.3" + resolved "https://registry.yarnpkg.com/express-http-proxy/-/express-http-proxy-1.6.3.tgz#f3ef139ffd49a7962e7af0462bbcca557c913175" + integrity sha512-/l77JHcOUrDUX8V67E287VEUQT0lbm71gdGVoodnlWBziarYKgMcpqT7xvh/HM8Jv52phw8Bd8tY+a7QjOr7Yg== + dependencies: + debug "^3.0.1" + es6-promise "^4.1.1" + raw-body "^2.3.0" + express@^4.17.1: - version "4.17.2" - resolved "https://registry.yarnpkg.com/express/-/express-4.17.2.tgz#c18369f265297319beed4e5558753cc8c1364cb3" - integrity sha512-oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg== + 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.7" + accepts "~1.3.8" array-flatten "1.1.1" - body-parser "1.19.1" + body-parser "1.20.1" content-disposition "0.5.4" content-type "~1.0.4" - cookie "0.4.1" + cookie "0.5.0" cookie-signature "1.0.6" debug "2.6.9" - depd "~1.1.2" + depd "2.0.0" encodeurl "~1.0.2" escape-html "~1.0.3" etag "~1.8.1" - finalhandler "~1.1.2" + 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.3.0" + on-finished "2.4.1" parseurl "~1.3.3" path-to-regexp "0.1.7" proxy-addr "~2.0.7" - qs "6.9.6" + qs "6.11.0" range-parser "~1.2.1" safe-buffer "5.2.1" - send "0.17.2" - serve-static "1.14.2" + send "0.18.0" + serve-static "1.15.0" setprototypeof "1.2.0" - statuses "~1.5.0" + statuses "2.0.1" type-is "~1.6.18" utils-merge "1.0.1" vary "~1.1.2" ext@^1.1.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/ext/-/ext-1.6.0.tgz#3871d50641e874cc172e2b53f919842d19db4c52" - integrity sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg== + version "1.7.0" + resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f" + integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw== dependencies: - type "^2.5.0" + type "^2.7.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 sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= + 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 sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== dependencies: assign-symbols "^1.0.0" is-extendable "^1.0.1" @@ -9746,11 +9925,6 @@ extract-zip@2.0.1: optionalDependencies: "@types/yauzl" "^2.9.1" -fast-copy@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/fast-copy/-/fast-copy-2.1.1.tgz#f5cbcf2df64215e59b8e43f0b2caabc19848083a" - integrity sha512-Qod3DdRgFZ8GUIM6ygeoZYpQ0QLW9cf/FS9KhhjlYggcSZXWAemAw8BOCO5LuYCrR3Uj3qXDVTUzOUwG8C7beQ== - 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" @@ -9773,18 +9947,7 @@ fast-glob@^2.2.6: merge2 "^1.2.3" micromatch "^3.1.10" -fast-glob@^3.0.3, fast-glob@^3.1.1, fast-glob@^3.2.2, fast-glob@^3.2.7: - version "3.2.7" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1" - integrity sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q== - dependencies: - "@nodelib/fs.stat" "^2.0.2" - "@nodelib/fs.walk" "^1.2.3" - glob-parent "^5.1.2" - merge2 "^1.3.0" - micromatch "^4.0.4" - -fast-glob@^3.2.9: +fast-glob@^3.1.1, fast-glob@^3.2.12, fast-glob@^3.2.2, fast-glob@^3.2.7, fast-glob@^3.2.9: version "3.2.12" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== @@ -9808,12 +9971,12 @@ fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== -fastest-levenshtein@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz#9990f7d3a88cc5a9ffd1f1745745251700d497e2" - integrity sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow== +fastest-levenshtein@^1.0.12, fastest-levenshtein@^1.0.16: + version "1.0.16" + resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz#210e61b6ff181de91ea9b3d1b84fdedd47e034e5" + integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg== fastq@^1.13.0, fastq@^1.6.0: version "1.13.0" @@ -9830,16 +9993,34 @@ fault@^1.0.0: format "^0.2.0" fb-watchman@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" - integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg== + version "2.0.2" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" + integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== dependencies: bser "2.1.1" +fbjs-css-vars@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz#216551136ae02fe255932c3ec8775f18e2c078b8" + integrity sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ== + +fbjs@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-3.0.4.tgz#e1871c6bd3083bac71ff2da868ad5067d37716c6" + integrity sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ== + dependencies: + cross-fetch "^3.1.5" + fbjs-css-vars "^1.0.0" + loose-envify "^1.0.0" + object-assign "^4.1.0" + promise "^7.1.1" + setimmediate "^1.0.5" + ua-parser-js "^0.7.30" + fd-slicer@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" - integrity sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4= + integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== dependencies: pend "~1.2.0" @@ -9876,32 +10057,26 @@ file-loader@^6.2.0: schema-utils "^3.0.0" file-system-cache@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/file-system-cache/-/file-system-cache-1.0.5.tgz#84259b36a2bbb8d3d6eb1021d3132ffe64cfff4f" - integrity sha1-hCWbNqK7uNPW6xAh0xMv/mTP/08= + 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: - bluebird "^3.3.5" - fs-extra "^0.30.0" - ramda "^0.21.0" + fs-extra "^10.1.0" + ramda "^0.28.0" -file-type@^16.5.3: - version "16.5.3" - resolved "https://registry.yarnpkg.com/file-type/-/file-type-16.5.3.tgz#474b7e88c74724046abb505e9b8ed4db30c4fc06" - integrity sha512-uVsl7iFhHSOY4bEONLlTK47iAHtNsFHWP5YE4xJfZ4rnX7S1Q3wce09XgqSC7E/xh8Ncv/be1lNoyprlUH/x6A== +file-type@^16.5.3, file-type@^16.5.4: + version "16.5.4" + resolved "https://registry.yarnpkg.com/file-type/-/file-type-16.5.4.tgz#474fb4f704bee427681f98dd390058a172a6c2fd" + integrity sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw== dependencies: readable-web-to-node-stream "^3.0.0" strtok3 "^6.2.4" token-types "^4.1.1" -file-type@^9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/file-type/-/file-type-9.0.0.tgz#a68d5ad07f486414dfb2c8866f73161946714a18" - integrity sha512-Qe/5NJrgIOlwijpq3B7BEpzPFcgzggOTagZmkXQY4LA6bsXKTUstK7Wp12lEJ/mLKTpvIZxmIuRcLYWT6ov9lw== - filename-reserved-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz#abf73dfab735d045440abfea2d91f389ebbfa229" - integrity sha1-q/c9+rc10EVECr/qLZHzieu/oik= + integrity sha512-lc1bnsSr4L4Bdif8Xb/qrtokGbq5zlsms/CYH8PP+WtCkGNF65DPiQY8vG3SakEdRn8Dlnm+gW/qWKKjS5sZzQ== filenamify@^4.3.0: version "4.3.0" @@ -9912,10 +10087,10 @@ filenamify@^4.3.0: strip-outer "^1.0.1" trim-repeated "^1.0.0" -filesize@6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.1.0.tgz#e81bdaa780e2451d714d71c0d7a4f3238d37ad00" - integrity sha512-LpCHtPQ3sFx67z+uh2HnSyWSLLu5Jxo21795uRDuar/EOuYWXib5EmPaGIBuSnRqH2IODiKA2k5re/K9OnN/Yg== +filesize@^8.0.6: + version "8.0.7" + resolved "https://registry.yarnpkg.com/filesize/-/filesize-8.0.7.tgz#695e70d80f4e47012c132d57a059e80c6b580bd8" + integrity sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ== fill-range@^2.1.0: version "2.2.4" @@ -9931,7 +10106,7 @@ fill-range@^2.1.0: fill-range@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= + integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== dependencies: extend-shallow "^2.0.1" is-number "^3.0.0" @@ -9950,17 +10125,17 @@ filter-obj@^1.1.0: resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" integrity sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ== -finalhandler@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" - integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== +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.3.0" + on-finished "2.4.1" parseurl "~1.3.3" - statuses "~1.5.0" + statuses "2.0.1" unpipe "~1.0.0" find-cache-dir@^2.0.0: @@ -9984,7 +10159,7 @@ find-cache-dir@^3.3.1, find-cache-dir@^3.3.2: find-index@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4" - integrity sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ= + integrity sha512-uJ5vWrfBKMcE6y2Z8834dwEZj9mNGxYa3t3I53OwFeuZ8D9oc2E5zcsrkuhX6h4iYrjhiv0T3szQmxlAV9uxDg== find-replace@^3.0.0: version "3.0.0" @@ -9998,29 +10173,14 @@ 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@4.1.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" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= + integrity sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA== dependencies: path-exists "^2.0.0" pinkie-promise "^2.0.0" -find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - 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" @@ -10028,6 +10188,14 @@ find-up@^3.0.0: 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" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + find-up@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" @@ -10053,9 +10221,9 @@ flat-cache@^3.0.4: rimraf "^3.0.2" flatted@^3.1.0: - version "3.2.5" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.5.tgz#76c8584f4fc843db64702a6bd04ab7a8bd666da3" - integrity sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg== + version "3.2.7" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" + integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== flush-write-stream@^1.0.2: version "1.1.1" @@ -10065,15 +10233,15 @@ flush-write-stream@^1.0.2: inherits "^2.0.3" readable-stream "^2.3.6" -follow-redirects@^1.0.0, follow-redirects@^1.14.0: - version "1.14.9" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.9.tgz#dd4ea157de7bfaf9ea9b3fbd85aa16951f78d8d7" - integrity sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w== +follow-redirects@^1.14.0: + version "1.15.2" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" + integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== for-in@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== foreground-child@^2.0.0: version "2.0.0" @@ -10083,7 +10251,7 @@ foreground-child@^2.0.0: cross-spawn "^7.0.0" signal-exit "^3.0.2" -fork-ts-checker-webpack-plugin@4.1.6, fork-ts-checker-webpack-plugin@^4.1.6: +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== @@ -10096,10 +10264,10 @@ fork-ts-checker-webpack-plugin@4.1.6, fork-ts-checker-webpack-plugin@^4.1.6: tapable "^1.0.0" worker-rpc "^0.1.0" -fork-ts-checker-webpack-plugin@^6.0.4: - version "6.5.0" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.0.tgz#0282b335fa495a97e167f69018f566ea7d2a2b5e" - integrity sha512-cS178Y+xxtIjEUorcHddKS7yCMlrDPV31mt47blKKRfMd70Kxu5xruAFE2o9sDY6wVC5deuob/u/alD04YYHnw== +fork-ts-checker-webpack-plugin@^6.0.4, fork-ts-checker-webpack-plugin@^6.5.0: + 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" @@ -10132,7 +10300,7 @@ form-data@^3.0.0: format@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b" - integrity sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs= + integrity sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww== formdata-node@^4.3.1: version "4.4.1" @@ -10147,22 +10315,22 @@ forwarded@0.2.0: resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== -fraction.js@^4.1.1: - version "4.1.2" - resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.1.2.tgz#13e420a92422b6cf244dff8690ed89401029fbe8" - integrity sha512-o2RiJQ6DZaR/5+Si0qJUIy637QMRudSi9kU/FFzx9EZazrIdnBgpU+3sEWCxAVhH2RtxW2Oz+T4p2o8uOPVcgA== +fraction.js@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.2.0.tgz#448e5109a313a3527f5a3ab2119ec4cf0e0e2950" + integrity sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA== fragment-cache@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= + integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== dependencies: map-cache "^0.2.2" fresh@0.5.2, fresh@~0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== fs-constants@^1.0.0: version "1.0.0" @@ -10172,18 +10340,7 @@ fs-constants@^1.0.0: fs-exists-cached@1.0.0, fs-exists-cached@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-exists-cached/-/fs-exists-cached-1.0.0.tgz#cf25554ca050dc49ae6656b41de42258989dcbce" - integrity sha1-zyVVTKBQ3EmuZla0HeQiWJidy84= - -fs-extra@^0.30.0: - version "0.30.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" - integrity sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A= - dependencies: - graceful-fs "^4.1.2" - jsonfile "^2.1.0" - klaw "^1.0.0" - path-is-absolute "^1.0.0" - rimraf "^2.2.8" + integrity sha512-kSxoARUDn4F2RPXX48UXnaFKwVU7Ivd/6qpzZL29MCDmr9sTvybv4gFCp+qaI4fM9m0z9fgz/yJvi56GAz+BZg== fs-extra@^10.0.0, fs-extra@^10.1.0: version "10.1.0" @@ -10197,7 +10354,7 @@ fs-extra@^10.0.0, fs-extra@^10.1.0: fs-extra@^2.0.0: version "2.1.2" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-2.1.2.tgz#046c70163cef9aad46b0e4a7fa467fb22d71de35" - integrity sha1-BGxwFjzvmq1GsOSn+kZ/si1x3jU= + integrity sha512-9ztMtDZtSKC78V8mev+k31qaTabbmuH5jatdvPBMikrFHvw5BqlYnQIn/WGK3WHeRooSTkRvLa2IPlaHjPq5Sg== dependencies: graceful-fs "^4.1.2" jsonfile "^2.1.0" @@ -10242,12 +10399,12 @@ fs-extra@^9.0.0, fs-extra@^9.0.1: fs-mkdirp-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb" - integrity sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes= + integrity sha512-+vSd9frUnapVC2RZYfL3FCB2p3g4TBhaUmrsWlSudsGdnxIuUvBB2QM1VZeBtc49QFwrp+wQLrDs3+xxDgI5gQ== dependencies: graceful-fs "^4.1.11" through2 "^2.0.3" -fs-monkey@1.0.3, fs-monkey@^1.0.3: +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== @@ -10267,7 +10424,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.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== @@ -10280,41 +10437,45 @@ function.prototype.name@^1.1.0: functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + integrity sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g== functions-have-names@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.2.tgz#98d93991c39da9361f8e50b337c4f6e41f120e21" - integrity sha512-bLgc3asbWdwPbx2mNk2S49kmJCuQeu0nfmaOgbs8WIyzzkw3r4htszdIi9Q9EMezDPTYuJx2wvjZ/EwgAthpnA== + version "1.2.3" + resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== -gatsby-cli@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/gatsby-cli/-/gatsby-cli-4.4.0.tgz#9b705ee66e8bb28007f9a40dce83980eda40df55" - integrity sha512-Q3WcITyJeGn6kg5xbEcwkLApwEsvesdJZSk9SkblWu/ykMKE1T1q3BFrPKRdyMZMCq08IVR/jdjpAn8pjn/3WA== +gatsby-cli@^4.24.0: + version "4.24.0" + resolved "https://registry.yarnpkg.com/gatsby-cli/-/gatsby-cli-4.24.0.tgz#929557b05c0736c23029bd73eb0e837d348c185a" + integrity sha512-l5xaLLd8DGWtUHcK3Q1RfzyEJkcGZNSa3WGkkYjEwqYRY83fMHlH/hhunStuJ+1S7ZH9Vq7kL1OgOz6S8vK6AQ== dependencies: "@babel/code-frame" "^7.14.0" + "@babel/core" "^7.15.5" + "@babel/generator" "^7.16.8" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/preset-typescript" "^7.16.7" "@babel/runtime" "^7.15.4" + "@babel/template" "^7.16.7" + "@babel/types" "^7.16.8" + "@jridgewell/trace-mapping" "^0.3.13" "@types/common-tags" "^1.8.1" better-opn "^2.1.1" boxen "^5.1.2" chalk "^4.1.2" clipboardy "^2.3.0" common-tags "^1.8.2" - configstore "^5.0.1" convert-hrtime "^3.0.0" - create-gatsby "^2.4.0" + create-gatsby "^2.24.0" envinfo "^7.8.1" execa "^5.1.1" fs-exists-cached "^1.0.0" - fs-extra "^10.0.0" - gatsby-core-utils "^3.4.0" - gatsby-recipes "^1.4.0" - gatsby-telemetry "^3.4.0" + fs-extra "^10.1.0" + gatsby-core-utils "^3.24.0" + gatsby-telemetry "^3.24.0" hosted-git-info "^3.0.8" is-valid-path "^0.1.1" joi "^17.4.2" lodash "^4.17.21" - meant "^1.0.3" node-fetch "^2.6.6" opentracing "^0.14.5" pretty-error "^2.1.2" @@ -10322,21 +10483,19 @@ gatsby-cli@^4.4.0: prompts "^2.4.2" redux "4.1.2" resolve-cwd "^3.0.0" - semver "^7.3.5" + semver "^7.3.7" signal-exit "^3.0.6" - source-map "0.7.3" stack-trace "^0.0.10" - strip-ansi "^5.2.0" + strip-ansi "^6.0.1" update-notifier "^5.1.0" - uuid "3.4.0" yargs "^15.4.1" yoga-layout-prebuilt "^1.10.0" yurnalist "^2.1.0" -gatsby-core-utils@^3.15.0, gatsby-core-utils@^3.4.0: - version "3.15.0" - resolved "https://registry.yarnpkg.com/gatsby-core-utils/-/gatsby-core-utils-3.15.0.tgz#1fb6611765250c187dd6d36c2812a5b0c50204ae" - integrity sha512-aLNrH3gGUIeD9XGk3z/27N5qaVx7y3AAgs/Vu6PJm69t25kTwuOHKNzhlnHkIZypznZkkVeN7QbHBkIKam/ZIQ== +gatsby-core-utils@^3.20.0, gatsby-core-utils@^3.24.0: + version "3.24.0" + resolved "https://registry.yarnpkg.com/gatsby-core-utils/-/gatsby-core-utils-3.24.0.tgz#0e757bac28ad953a929046138403b3663b733cf7" + integrity sha512-P4tbcYOJ1DSYKRP4gIAR9Xta/d/AzjmsK2C6PzX7sNcGnviDKtAIoeV9sE0kNXOqBfUCez25zmAi2cq8NlaxKw== dependencies: "@babel/runtime" "^7.15.4" ci-info "2.0.0" @@ -10344,9 +10503,9 @@ gatsby-core-utils@^3.15.0, gatsby-core-utils@^3.4.0: fastq "^1.13.0" file-type "^16.5.3" fs-extra "^10.1.0" - got "^11.8.3" + got "^11.8.5" import-from "^4.0.0" - lmdb "2.3.10" + lmdb "2.5.3" lock "^1.1.0" node-object-hash "^2.3.10" proper-lockfile "^4.1.2" @@ -10354,43 +10513,61 @@ gatsby-core-utils@^3.15.0, gatsby-core-utils@^3.4.0: tmp "^0.2.1" xdg-basedir "^4.0.0" -gatsby-graphiql-explorer@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/gatsby-graphiql-explorer/-/gatsby-graphiql-explorer-2.4.0.tgz#0da07d980bc39f21bee00d8d258aea7e9aab910d" - integrity sha512-dHxpCgagO4M5WTcerzxgEipCdyzmok9sF3dFuTeSLYXvb7L0SpjpeonM5djNC8X2SVx8J1DHnOEtxVrj6jJ1SQ== +gatsby-graphiql-explorer@^2.24.0: + version "2.24.0" + resolved "https://registry.yarnpkg.com/gatsby-graphiql-explorer/-/gatsby-graphiql-explorer-2.24.0.tgz#044f24ad9149dffefb783bb2b6d27d49fb968113" + integrity sha512-CzBEpgpT7wvEzOZWA0iRrXrGkug33ph/siADAMsgQMDf9VLAH4mEKqbQKgIIuy+yIodq74ty75txCaxFarclMQ== dependencies: "@babel/runtime" "^7.15.4" -gatsby-legacy-polyfills@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/gatsby-legacy-polyfills/-/gatsby-legacy-polyfills-2.4.0.tgz#73325b747e42c2a66ef2448045b02ff360e2065b" - integrity sha512-dnSu7fz+a7kaCLNYz0DV0IZ+6Fu/wvsT/sOrPIwFat9c/NiioBMyZe5O2q7Vh7EGs496AsZLfkcvZ0LaDSDeTQ== +gatsby-legacy-polyfills@^2.24.0: + version "2.24.0" + resolved "https://registry.yarnpkg.com/gatsby-legacy-polyfills/-/gatsby-legacy-polyfills-2.24.0.tgz#17c1804eaff15bae952bfd18e5c8d6b18ebacabb" + integrity sha512-3O/SlgTtK3z+rbp9UPgA5Hc0AgFbklpgZ1nx40HfgsbRcSHl81INzyIPjN9Fpp9BM4GOknAAL7VPfeilTn2mog== dependencies: "@babel/runtime" "^7.15.4" core-js-compat "3.9.0" -gatsby-link@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/gatsby-link/-/gatsby-link-4.4.0.tgz#865a6464ef37f2dc1f0c8431c3317cbb0708ced1" - integrity sha512-ElW1XwF7q6Acv1tKpMeTbRIwhFohIDu2N8fR4wBMLa5L0D559zYAPu11bqskBLZ+5fm99YVFVOB+Bxp8d9Wq7g== - dependencies: - "@babel/runtime" "^7.15.4" - "@types/reach__router" "^1.3.9" - prop-types "^15.7.2" +gatsby-link@^4.24.1: + version "4.24.1" + resolved "https://registry.yarnpkg.com/gatsby-link/-/gatsby-link-4.24.1.tgz#b0d10fa9a66def6fd4f920c919440bc22df19aeb" + integrity sha512-j8IcxlCzBX5J8srDn4wtxSKm8V+HM8GXfhVSMuRREiuaOxNNjhFOhfwyydrS+gYnEL8gVDOs9QTPEc2n+cn1fg== + dependencies: + "@types/reach__router" "^1.3.10" + gatsby-page-utils "^2.24.1" + prop-types "^15.8.1" -gatsby-page-utils@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/gatsby-page-utils/-/gatsby-page-utils-2.4.0.tgz#1fd4c3051ff7268d6553562134a3a93bf518ed53" - integrity sha512-GXYpHZOR1M3aq45bmOukjpdXL96BU1At0kPjTqQy3d5nw8wpU625wQdHT+CumET50+4A/JU86TqHi1kFWcbYsw== +gatsby-page-utils@^2.24.1: + version "2.24.1" + resolved "https://registry.yarnpkg.com/gatsby-page-utils/-/gatsby-page-utils-2.24.1.tgz#cb18569e20faf9195d6f37aadd79241c66b112c3" + integrity sha512-5PLXrSrMKpsBpUp8lDrKwbufQzUCIyWfz4eapQYUeLsnOFQ+lZkSWAbwrZQTRSzSR1N9TtU3qGLc9fQmCjveig== dependencies: "@babel/runtime" "^7.15.4" bluebird "^3.7.2" - chokidar "^3.5.2" + chokidar "^3.5.3" fs-exists-cached "^1.0.0" - gatsby-core-utils "^3.4.0" - glob "^7.2.0" + gatsby-core-utils "^3.24.0" + glob "^7.2.3" lodash "^4.17.21" - micromatch "^4.0.4" + micromatch "^4.0.5" + +gatsby-parcel-config@0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/gatsby-parcel-config/-/gatsby-parcel-config-0.15.1.tgz#19c828858f0ce202104f7c182022102f2df570c5" + integrity sha512-UcjyqmL8oaRX27QxKb2l6OpGawCVNL27fcutbZFUIppcpenPb7TGkpvyGcjUk2n6IS4cgwjDD6fenqCwtQrCSQ== + dependencies: + "@gatsbyjs/parcel-namer-relative-to-cwd" "1.9.0" + "@parcel/bundler-default" "2.6.2" + "@parcel/compressor-raw" "2.6.2" + "@parcel/namer-default" "2.6.2" + "@parcel/optimizer-terser" "2.6.2" + "@parcel/packager-js" "2.6.2" + "@parcel/packager-raw" "2.6.2" + "@parcel/reporter-dev-server" "2.6.2" + "@parcel/resolver-default" "2.6.2" + "@parcel/runtime-js" "2.6.2" + "@parcel/transformer-js" "2.6.2" + "@parcel/transformer-json" "2.6.2" gatsby-plugin-alias-imports@^1.0.5: version "1.0.5" @@ -10400,47 +10577,48 @@ gatsby-plugin-alias-imports@^1.0.5: "@babel/runtime" "^7.2.0" gatsby-plugin-google-tagmanager@^4.2.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/gatsby-plugin-google-tagmanager/-/gatsby-plugin-google-tagmanager-4.4.0.tgz#f3b7b8882bcd3995a4db3f587b7dac86083f1997" - integrity sha512-Yr8ySTlFwGr1/c+hf+2h6GyFXzT4JiR+VdF+f4qzCcVclywr7Gi0672TzMdNtNZY+X+bZ2UPP2mj8KVsd/Fd6w== + version "4.24.0" + resolved "https://registry.yarnpkg.com/gatsby-plugin-google-tagmanager/-/gatsby-plugin-google-tagmanager-4.24.0.tgz#b8bf68987b46bf1b9a78a46749284ef1cb5b7a34" + integrity sha512-S82kPmkGvse3RkD6AivbNV8qhSapXEHXMjv0Yh2LomrO2w1EIzLjLkhmQV/Dkv1nioRn3TdigMGA1LVYH8fdzQ== dependencies: "@babel/runtime" "^7.15.4" web-vitals "^1.1.2" gatsby-plugin-image@^2.2.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/gatsby-plugin-image/-/gatsby-plugin-image-2.4.0.tgz#fd960393043e856eb70d998dc34ad96a738162a8" - integrity sha512-PKhbefaamdahm1ysKO1d54vnzmIsjR+/qtyFnZumGu8E7O9lN5is0RlXgpNCvsckL+XzcqyMljytt/bYf8L5WA== + version "2.24.0" + resolved "https://registry.yarnpkg.com/gatsby-plugin-image/-/gatsby-plugin-image-2.24.0.tgz#965b6c82359f3f51bd8dbf976648f6a81a2c3d03" + integrity sha512-btsUxoVX/tQM09LD36XM9kYNbzZzkfBb3qCiaA+w1dEoArKraUYtmcmoMXW4rep7z8Uo7CmutSRD2GHNF0abFg== dependencies: "@babel/code-frame" "^7.14.0" "@babel/parser" "^7.15.5" "@babel/runtime" "^7.15.4" "@babel/traverse" "^7.15.4" babel-jsx-utils "^1.1.0" - babel-plugin-remove-graphql-queries "^4.4.0" + babel-plugin-remove-graphql-queries "^4.24.0" camelcase "^5.3.1" - chokidar "^3.5.2" + chokidar "^3.5.3" common-tags "^1.8.2" - fs-extra "^10.0.0" - gatsby-core-utils "^3.4.0" + fs-extra "^10.1.0" + gatsby-core-utils "^3.24.0" + gatsby-plugin-utils "^3.18.0" objectFitPolyfill "^2.3.5" - prop-types "^15.7.2" + prop-types "^15.8.1" gatsby-plugin-manifest@^4.2.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/gatsby-plugin-manifest/-/gatsby-plugin-manifest-4.4.0.tgz#c27a6d63a5c74a117f8099dac4c6df324e4a605c" - integrity sha512-gEC1Boat/oaBILXOlfNsUVDkxU1e79rsZBuatCmer+FlhN6EpTB9U4mKwMd0c2lUVl9PHXzqkDrVio8sJRBsag== + version "4.24.0" + resolved "https://registry.yarnpkg.com/gatsby-plugin-manifest/-/gatsby-plugin-manifest-4.24.0.tgz#ad537b48f9fb8e7c93234945a4889ecf3c099f66" + integrity sha512-xlpJMNALNozeC0lIspQQZw68qi4pE1nhgPfsLiUtAc5CLihm2LNbGLAKcYHCXwudRHo5Hvp6Xi4VOwtMkRKwmQ== dependencies: "@babel/runtime" "^7.15.4" - gatsby-core-utils "^3.4.0" - gatsby-plugin-utils "^2.4.0" - semver "^7.3.5" - sharp "^0.29.3" + gatsby-core-utils "^3.24.0" + gatsby-plugin-utils "^3.18.0" + semver "^7.3.7" + sharp "^0.30.7" gatsby-plugin-mdx@^3.15.2: - version "3.15.2" - resolved "https://registry.yarnpkg.com/gatsby-plugin-mdx/-/gatsby-plugin-mdx-3.15.2.tgz#16f7de7534d5763bf499f47eee852c25578a06ee" - integrity sha512-TsEgeAq40x7IwABXZkZcGStltr6gr3DnGjmhq4QZKapjtsPeTzWKp9HhB93t0OCDD9AfWUCH/teQq0rFTvsaEw== + version "3.20.0" + resolved "https://registry.yarnpkg.com/gatsby-plugin-mdx/-/gatsby-plugin-mdx-3.20.0.tgz#0dff5bc2812fa9ed5aa4e1ecf660d9bc5bc1abfa" + integrity sha512-v2cFqe1g8lmM745q2DUoqWca0MT/tX++jykBDqpsLDswushpJgUfZeJ8OhSFgBZIfuVk1LoDi5yf4iWfz/UTwQ== dependencies: "@babel/core" "^7.15.5" "@babel/generator" "^7.15.4" @@ -10458,7 +10636,7 @@ gatsby-plugin-mdx@^3.15.2: escape-string-regexp "^1.0.5" eval "^0.1.4" fs-extra "^10.1.0" - gatsby-core-utils "^3.15.0" + gatsby-core-utils "^3.20.0" gray-matter "^4.0.2" json5 "^2.1.3" loader-utils "^1.4.0" @@ -10482,86 +10660,84 @@ gatsby-plugin-mdx@^3.15.2: unist-util-visit "^1.4.1" gatsby-plugin-offline@^5.2.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/gatsby-plugin-offline/-/gatsby-plugin-offline-5.4.0.tgz#739ee0083111115e7b6d77bd73df7bb9fbab0056" - integrity sha512-dxFRgsKmWovjH8m0HWHao9sdcXy4X0X9SPlZETHk54ARY/wrzxVg266fA+ZVI7RPpuODBcgWoXWHuTtplfghBw== + version "5.24.0" + resolved "https://registry.yarnpkg.com/gatsby-plugin-offline/-/gatsby-plugin-offline-5.24.0.tgz#f866ffa9e138395e3d8dd675801087f3da781561" + integrity sha512-NiTLxlFOQSpBz7ZXYEtQB1GQOGoO9Xzg/COUkGXoCKlVW84EzXLRiyc01lZcdBk125maE3L8ZAqsql2k8smxLA== dependencies: "@babel/runtime" "^7.15.4" cheerio "^1.0.0-rc.10" - gatsby-core-utils "^3.4.0" - glob "^7.2.0" + gatsby-core-utils "^3.24.0" + glob "^7.2.3" idb-keyval "^3.2.0" lodash "^4.17.21" workbox-build "^4.3.1" -gatsby-plugin-page-creator@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/gatsby-plugin-page-creator/-/gatsby-plugin-page-creator-4.4.0.tgz#6e3c6e22a8873ebd587b02b8b805c771866603e8" - integrity sha512-g+NzjZgHbToc0EY4vrP8heciJgi9QXDrdn3VYc+GEqK5J26msH2hTPxMc9ut0XYzSOb7mI3rUt963r6goJyKHw== +gatsby-plugin-page-creator@^4.24.1: + version "4.24.1" + resolved "https://registry.yarnpkg.com/gatsby-plugin-page-creator/-/gatsby-plugin-page-creator-4.24.1.tgz#1088c2c4ea115f65008ebc0fb21da1403c6326d1" + integrity sha512-fEPxxWMKMyb33cU3tl0Fgx119+w75MtEP/M7pf1F2XEipP6LTC93rJ5N40sIf1RNYsDz0cpRaWRFpxz9SzowZQ== dependencies: "@babel/runtime" "^7.15.4" "@babel/traverse" "^7.15.4" "@sindresorhus/slugify" "^1.1.2" - chokidar "^3.5.2" + chokidar "^3.5.3" fs-exists-cached "^1.0.0" - gatsby-core-utils "^3.4.0" - gatsby-page-utils "^2.4.0" - gatsby-plugin-utils "^2.4.0" - gatsby-telemetry "^3.4.0" - globby "^11.0.4" + fs-extra "^10.1.0" + gatsby-core-utils "^3.24.0" + gatsby-page-utils "^2.24.1" + gatsby-plugin-utils "^3.18.0" + gatsby-telemetry "^3.24.0" + globby "^11.1.0" lodash "^4.17.21" gatsby-plugin-react-helmet@^5.2.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/gatsby-plugin-react-helmet/-/gatsby-plugin-react-helmet-5.4.0.tgz#8c40c8749053b65de2c3360b0451adec019c15db" - integrity sha512-bDJYOBk0HNaK8pKHTqr8U6CFNTRCgFvgqyrGNxHeva4sS2GKV/Rj5axRYx8ti8HXgyHMgNbaMO8SgZIKf8W5DQ== + version "5.24.0" + resolved "https://registry.yarnpkg.com/gatsby-plugin-react-helmet/-/gatsby-plugin-react-helmet-5.24.0.tgz#8c9cf8e93e184c87ee9e605467c735c7eb02b821" + integrity sha512-SU/SrWsbEFLQhuzDXucYlQ4O5pTdpOdxw07xIRwyFfxFzGml/9f62h2dTtUJOIXP1mYfl31bw7eCbGlc8QzF5w== dependencies: "@babel/runtime" "^7.15.4" gatsby-plugin-remove-trailing-slashes@^4.2.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/gatsby-plugin-remove-trailing-slashes/-/gatsby-plugin-remove-trailing-slashes-4.4.0.tgz#385c86726510675efb45eeb2db0131434a99d7d0" - integrity sha512-3kRgTfZLXVqhpvDiskRBi0TKBWGlI9k6xhVAG4dATF+Vyj/lWROZ6d3TcVYLhmpjFmNuZq3XSOEjmo8LmgWf9A== + version "4.19.0" + resolved "https://registry.yarnpkg.com/gatsby-plugin-remove-trailing-slashes/-/gatsby-plugin-remove-trailing-slashes-4.19.0.tgz#a65f56b8e9270b85c5472a623caaf85e4e8b3202" + integrity sha512-3zyL+6pqQIeAvABi3PbtVi285n9CVCopzLZNiCLN81/xPiCggA1yyNaZVV3eS1ZbOVFlWCAFyEBRl6E6QeI2BQ== dependencies: "@babel/runtime" "^7.15.4" gatsby-plugin-sass@^5.2.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/gatsby-plugin-sass/-/gatsby-plugin-sass-5.4.0.tgz#fbbcecbd203da4e831585cb3f9994dae0b89484d" - integrity sha512-7Vp/SPkd9/j97aDr7qiAf4t7iPduwP86EdSb7ESQNX1lZuPglC0+JjNLshTJiqRfJspbOhcUeWLLg08/1RRFlA== + version "5.24.0" + resolved "https://registry.yarnpkg.com/gatsby-plugin-sass/-/gatsby-plugin-sass-5.24.0.tgz#4c46adfbc7da5726eab4d04656e7310e55afc95e" + integrity sha512-yXclHh6XWYVI7lCdauOuAiBw0hrb82M3DYxWI3iqJ1kXD5tp0xbiiK/I1HvtAcKJi6KzI4RdB7vEBP4ZTxjv7g== dependencies: "@babel/runtime" "^7.15.4" - resolve-url-loader "^3.1.2" + resolve-url-loader "^3.1.4" sass-loader "^10.1.1" gatsby-plugin-sharp@^4.2.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/gatsby-plugin-sharp/-/gatsby-plugin-sharp-4.4.0.tgz#d3d182f1397011aeb969f4300022ff13df81e720" - integrity sha512-X2Syc6YfOD2O+5A2Lrd/l/HXHIAIjcbRfP38uJPbG0cZg3xRd3T7RaDEcDrFylHvpYZfcqjzumfwPeQuhhxUUQ== + version "4.24.0" + resolved "https://registry.yarnpkg.com/gatsby-plugin-sharp/-/gatsby-plugin-sharp-4.24.0.tgz#30fa66295105096b476371dfb36062c1dc7456db" + integrity sha512-wVs8F9zLeiLf02yLi8vjse1vqSrZsx2u3RsMhoSv1bEinyaI5bcoLZ7mMJCsEeZe2G9mvNrPi4Ymhh/YzgxYCg== dependencies: "@babel/runtime" "^7.15.4" - async "^3.2.2" + "@gatsbyjs/potrace" "^2.3.0" + async "^3.2.4" bluebird "^3.7.2" + debug "^4.3.4" filenamify "^4.3.0" - fs-extra "^10.0.0" - gatsby-core-utils "^3.4.0" - gatsby-plugin-utils "^2.4.0" - gatsby-telemetry "^3.4.0" - got "^11.8.3" + fs-extra "^10.1.0" + gatsby-core-utils "^3.24.0" + gatsby-plugin-utils "^3.18.0" lodash "^4.17.21" - mini-svg-data-uri "^1.4.3" - potrace "^2.1.8" - probe-image-size "^6.0.0" - progress "^2.0.3" - semver "^7.3.5" - sharp "^0.29.3" - svgo "1.3.2" - uuid "3.4.0" + mini-svg-data-uri "^1.4.4" + probe-image-size "^7.2.3" + semver "^7.3.7" + sharp "^0.30.7" + svgo "^2.8.0" -gatsby-plugin-typescript@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/gatsby-plugin-typescript/-/gatsby-plugin-typescript-4.4.0.tgz#7976b2761d1f66d087efe0489df970c8b87eb70f" - integrity sha512-LDtXiQAxb5rYFu2907hF5Yeazs7KU4i1oMDq+0m2iwMnWNapwTfMwkDcRQViVGpRuwgT0WCENRZ/lnfDdH3How== +gatsby-plugin-typescript@^4.24.0: + version "4.24.0" + resolved "https://registry.yarnpkg.com/gatsby-plugin-typescript/-/gatsby-plugin-typescript-4.24.0.tgz#e20631bdca7023ecd6d36e9d0531c59724e3c7a1" + integrity sha512-d7OnNETBLXfMVKdYEm+MSpeX04zb/LoU+JoeovlJ45b9ovh7dYTCOBMnka54LnOU0rJR+JCirWDWpTBaXaBpnw== dependencies: "@babel/core" "^7.15.5" "@babel/plugin-proposal-nullish-coalescing-operator" "^7.14.5" @@ -10569,152 +10745,108 @@ gatsby-plugin-typescript@^4.4.0: "@babel/plugin-proposal-optional-chaining" "^7.14.5" "@babel/preset-typescript" "^7.15.0" "@babel/runtime" "^7.15.4" - babel-plugin-remove-graphql-queries "^4.4.0" + babel-plugin-remove-graphql-queries "^4.24.0" -gatsby-plugin-utils@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/gatsby-plugin-utils/-/gatsby-plugin-utils-2.4.0.tgz#392e4a7706f8ee67067fddd86fba8510e1d85f79" - integrity sha512-0+hN/Rfq7J+SwZZ2j+Sc9WiNd8XequDoM389/ORFTE82GXtPHDWtMV1LIF6yg/SkdANzChLUW9Eo/edgLiOOHA== +gatsby-plugin-utils@^3.18.0: + version "3.18.0" + resolved "https://registry.yarnpkg.com/gatsby-plugin-utils/-/gatsby-plugin-utils-3.18.0.tgz#898e9416e3d4fa25195e9ca50d17a5435dfe91a3" + integrity sha512-3c2iHYV93+zV8AfUhpWSuU0Bd5sgNDaUMkBYNuJAWrUqUfJY4i+QAD/H4Hvie8dhdGrX6QRWEyKo1k5gV+jERQ== dependencies: "@babel/runtime" "^7.15.4" + "@gatsbyjs/potrace" "^2.3.0" + fastq "^1.13.0" + fs-extra "^10.1.0" + gatsby-core-utils "^3.24.0" + gatsby-sharp "^0.18.0" + graphql-compose "^9.0.7" + import-from "^4.0.0" joi "^17.4.2" + mime "^3.0.0" + mini-svg-data-uri "^1.4.4" + svgo "^2.8.0" -gatsby-react-router-scroll@^5.4.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/gatsby-react-router-scroll/-/gatsby-react-router-scroll-5.4.0.tgz#87165503a5ad77c564350c428447a51fe0255764" - integrity sha512-BUjRjUBtiMPSL208La/KW8vSftHNgloIdCcnnL1Y/dFtLBm/R8gYI40DaqvqyBO78k0fN5Y5W3NvN0Wa5AVdZA== +gatsby-react-router-scroll@^5.24.0: + version "5.24.0" + resolved "https://registry.yarnpkg.com/gatsby-react-router-scroll/-/gatsby-react-router-scroll-5.24.0.tgz#d37579dba12435f56a98fede831851c3224c60b4" + integrity sha512-2wQnwyszef06fGxQOsz70ReykF9w9FgIUjPpThn3OBgJarRibNsHljbNdLOETczYSY8LEebKFB3ewQ+erd7DCw== dependencies: "@babel/runtime" "^7.15.4" + prop-types "^15.8.1" -gatsby-recipes@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/gatsby-recipes/-/gatsby-recipes-1.4.0.tgz#f10409b4b37c81c023a807c351223fb3f04fa2f8" - integrity sha512-4KJIKe4nInKBX8uYieC1Jt1+VJz4RadGJeMJPx0JckF8/UbXETwLTOhQQZ8bqDBQaanXqDfATdp4D/a1O9C2DA== +gatsby-script@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/gatsby-script/-/gatsby-script-1.9.0.tgz#6fdc1ba4c5930cb251a35a958fafee44a99a6f78" + integrity sha512-xGhaTVNdDokZDkiZ6sGtAwyEzbpml+RFFX0kFEkS0Ii3MwdZT44H558B4Y8l7X9wB0OEENcSczc/DULVhRoXBA== + +gatsby-sharp@^0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/gatsby-sharp/-/gatsby-sharp-0.18.0.tgz#bee4bbae079917afec20d005c9aee75ce7fd0755" + integrity sha512-tnGWupSZc4y3UgcAR2ENma9WGBYkCdPFy5XrTgAmqjfxw6JDcJz+H3ikHz9SuUgQyMnlv2QdossHwdUBcVeVGw== dependencies: - "@babel/core" "^7.15.5" - "@babel/generator" "^7.15.4" - "@babel/helper-plugin-utils" "^7.14.0" - "@babel/plugin-proposal-optional-chaining" "^7.14.5" - "@babel/plugin-transform-react-jsx" "^7.14.9" - "@babel/runtime" "^7.15.4" - "@babel/standalone" "^7.15.5" - "@babel/template" "^7.15.4" - "@babel/types" "^7.15.4" - "@graphql-tools/schema" "^7.0.0" - "@graphql-tools/utils" "^7.0.2" - "@hapi/hoek" "8.x.x" - "@hapi/joi" "^15.1.1" - better-queue "^3.8.10" - chokidar "^3.5.2" - contentful-management "^7.5.1" - cors "^2.8.5" - debug "^4.3.1" - detect-port "^1.3.0" - dotenv "^8.2.0" - execa "^5.1.1" - express "^4.17.1" - express-graphql "^0.12.0" - fs-extra "^10.0.0" - gatsby-core-utils "^3.4.0" - gatsby-telemetry "^3.4.0" - glob "^7.1.6" - graphql "^15.4.0" - graphql-compose "~7.25.0" - graphql-subscriptions "^1.1.0" - graphql-type-json "^0.3.2" - hicat "^0.8.0" - is-binary-path "^2.1.0" - is-url "^1.2.4" - jest-diff "^25.5.0" - lock "^1.0.0" - lodash "^4.17.21" - mitt "^1.2.0" - mkdirp "^0.5.1" - node-fetch "^2.5.0" - pkg-dir "^4.2.0" - prettier "^2.5.1" - prop-types "^15.6.1" - remark-mdx "2.0.0-next.7" - remark-mdxjs "^2.0.0-next.4" - remark-parse "^6.0.3" - remark-stringify "^8.1.0" - resolve-from "^5.0.0" - semver "^7.3.5" - single-trailing-newline "^1.0.0" - strip-ansi "^6.0.0" - style-to-object "^0.3.0" - unified "^8.4.2" - unist-util-remove "^2.0.0" - unist-util-visit "^2.0.2" - uuid "3.4.0" - ws "^7.3.0" - xstate "^4.9.1" - yoga-layout-prebuilt "^1.9.6" + "@types/sharp" "^0.30.5" + sharp "^0.30.7" gatsby-source-filesystem@^4.2.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/gatsby-source-filesystem/-/gatsby-source-filesystem-4.4.0.tgz#9921ac0600166e4ee0cd561d194c2df89a42e11d" - integrity sha512-tN+aJdOnBf92V9oHXaGzPB6gL0EhpYH0mh/dfszroy25CtSq07fZu8SynS/B3ClJVi22MkD0imcDVMlPJGSQ3w== + version "4.24.0" + resolved "https://registry.yarnpkg.com/gatsby-source-filesystem/-/gatsby-source-filesystem-4.24.0.tgz#628d438e8f208af075db680b5bce0ed957fd4ffb" + integrity sha512-oTjjVmAcU83pR9SUW6x6u4PjHAcs1Szg/WfBYGBBxrH7mjm3UA34mb3KtYQSrYsC3maCxfTKn6CJ11F+2/4NRg== dependencies: "@babel/runtime" "^7.15.4" - chokidar "^3.5.2" - fastq "^1.13.0" - file-type "^16.5.3" - fs-extra "^10.0.0" - gatsby-core-utils "^3.4.0" - got "^9.6.0" + chokidar "^3.5.3" + file-type "^16.5.4" + fs-extra "^10.1.0" + gatsby-core-utils "^3.24.0" md5-file "^5.0.0" mime "^2.5.2" pretty-bytes "^5.4.1" - progress "^2.0.3" valid-url "^1.0.9" - xstate "^4.26.1" + xstate "4.32.1" -gatsby-telemetry@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/gatsby-telemetry/-/gatsby-telemetry-3.4.0.tgz#cdb72354a8d4a79a7be8c112d039b44bff3d9a87" - integrity sha512-c5N7x4GkOyg5WUQN0DPeCHkjPvZ3c1yVs43dDPN5MZAqYiyTqzBJ9BXCMb7dBtFDVQB25b+Z96FUTQXfitrWww== +gatsby-telemetry@^3.24.0: + version "3.24.0" + resolved "https://registry.yarnpkg.com/gatsby-telemetry/-/gatsby-telemetry-3.24.0.tgz#5306d8a54372eb877be92f782f32cd25fbe9cfb5" + integrity sha512-ioBzkmImRuyEAGtnyJgpln4LKTQ61MAjFaU+SFLVKDATcVh86rfNbD2ks5DzZgCtsP1/zVmHv2a7s4z/TQCZjA== dependencies: "@babel/code-frame" "^7.14.0" "@babel/runtime" "^7.15.4" - "@turist/fetch" "^7.1.7" + "@turist/fetch" "^7.2.0" "@turist/time" "^0.0.2" - async-retry-ng "^2.0.1" boxen "^4.2.0" configstore "^5.0.1" - fs-extra "^10.0.0" - gatsby-core-utils "^3.4.0" - git-up "^4.0.5" + fs-extra "^10.1.0" + gatsby-core-utils "^3.24.0" + git-up "^7.0.0" is-docker "^2.2.1" lodash "^4.17.21" - node-fetch "^2.6.6" + node-fetch "^2.6.7" gatsby-transformer-sharp@^4.2.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/gatsby-transformer-sharp/-/gatsby-transformer-sharp-4.4.0.tgz#b71e8041713494de2592ea91e7cc99eb92a9cf0b" - integrity sha512-X9sPXrz5OkAgSBnsOwHV6mvU2IzTXHKzOeNBdDgk/wzrzWdSue7yo3xDHX62h51c1Ern51oT4i5Yr6+xu5s/Fw== + version "4.24.0" + resolved "https://registry.yarnpkg.com/gatsby-transformer-sharp/-/gatsby-transformer-sharp-4.24.0.tgz#0e7d61fa4834971e01a44e0eb0a942e5ef38513f" + integrity sha512-60Ro4OZbx9ZdfPUZEBEhJnureqQUEaNizDs4CK5QWlUkAU6RvVYwsuT3uWeEMrXgugaLLyGpQStJ881N7Eeodg== dependencies: "@babel/runtime" "^7.15.4" + "@gatsbyjs/potrace" "^2.3.0" bluebird "^3.7.2" common-tags "^1.8.2" - fs-extra "^10.0.0" - potrace "^2.1.8" - probe-image-size "^6.0.0" - semver "^7.3.5" - sharp "^0.29.3" + fs-extra "^10.1.0" + gatsby-plugin-utils "^3.18.0" + probe-image-size "^7.2.3" + semver "^7.3.7" + sharp "^0.30.7" -gatsby-worker@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/gatsby-worker/-/gatsby-worker-1.4.0.tgz#b081f068837bf0c1c8010851477561942a41eea8" - integrity sha512-BrzTYHFFAyI/7a003Vw+Ntg5hef5suYdn1cSEWoS9Tz4bU15W174C69NZddweMScOMTiMjWFoHINl7iqt/M3EQ== +gatsby-worker@^1.24.0: + version "1.24.0" + resolved "https://registry.yarnpkg.com/gatsby-worker/-/gatsby-worker-1.24.0.tgz#ca4638e631f4401a4a4b04b661273438f24dcd54" + integrity sha512-/054vcu6JhquW/5GsL6qQgtLBqLt7uyfaiMApe+tJsy9mvjt+gQL7hgspuLjPfmkfoI9Em8sGE+K9Y/aZEjZgA== dependencies: "@babel/core" "^7.15.5" "@babel/runtime" "^7.15.4" gatsby@^4.2.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/gatsby/-/gatsby-4.4.0.tgz#f4301f79b3a221141fb7e9856a875fa1b9784df8" - integrity sha512-fx/US6rpVMhwSBqMp/lRvWBTJV1cnL7nXZKfpAcsxmuMjDqBQGQQY2LqTpaLTD09WZc5lAYfQd8ckUKdzezbqQ== + version "4.24.5" + resolved "https://registry.yarnpkg.com/gatsby/-/gatsby-4.24.5.tgz#1c8612d142127154691812853e9e09edea5d4d08" + integrity sha512-f47r+RQldDkBpmcQqixmvafwEqUNUKvtmov+n04uCKOdfkuiiSMPm2pGAWx3vesfut2Kf7nIVgZLZz9sRjXqKA== dependencies: "@babel/code-frame" "^7.14.0" "@babel/core" "^7.15.5" @@ -10724,14 +10856,27 @@ gatsby@^4.2.0: "@babel/runtime" "^7.15.4" "@babel/traverse" "^7.15.4" "@babel/types" "^7.15.4" - "@gatsbyjs/reach-router" "^1.3.6" + "@builder.io/partytown" "^0.5.2" + "@gatsbyjs/reach-router" "^1.3.9" "@gatsbyjs/webpack-hot-middleware" "^2.25.2" + "@graphql-codegen/add" "^3.1.1" + "@graphql-codegen/core" "^2.5.1" + "@graphql-codegen/plugin-helpers" "^2.4.2" + "@graphql-codegen/typescript" "^2.4.8" + "@graphql-codegen/typescript-operations" "^2.3.5" + "@graphql-tools/code-file-loader" "^7.2.14" + "@graphql-tools/load" "^7.5.10" + "@jridgewell/trace-mapping" "^0.3.13" "@nodelib/fs.walk" "^1.2.8" - "@pmmmwh/react-refresh-webpack-plugin" "^0.4.3" + "@parcel/cache" "2.6.2" + "@parcel/core" "2.6.2" + "@pmmmwh/react-refresh-webpack-plugin" "^0.5.7" "@types/http-proxy" "^1.17.7" "@typescript-eslint/eslint-plugin" "^4.33.0" "@typescript-eslint/parser" "^4.33.0" "@vercel/webpack-asset-relocator-loader" "^1.7.0" + acorn-loose "^8.3.0" + acorn-walk "^8.2.0" address "1.1.2" anser "^2.1.0" autoprefixer "^10.4.0" @@ -10740,19 +10885,18 @@ gatsby@^4.2.0: babel-plugin-add-module-exports "^1.0.4" babel-plugin-dynamic-import-node "^2.3.3" babel-plugin-lodash "^3.3.4" - babel-plugin-remove-graphql-queries "^4.4.0" - babel-preset-gatsby "^2.4.0" + babel-plugin-remove-graphql-queries "^4.24.0" + babel-preset-gatsby "^2.24.0" better-opn "^2.1.1" bluebird "^3.7.2" - body-parser "^1.19.0" browserslist "^4.17.5" cache-manager "^2.11.1" chalk "^4.1.2" - chokidar "^3.5.2" + chokidar "^3.5.3" common-tags "^1.8.0" compression "^1.7.4" cookie "^0.4.1" - core-js "^3.17.2" + core-js "^3.22.3" cors "^2.8.5" css-loader "^5.2.7" css-minimizer-webpack-plugin "^2.0.0" @@ -10760,54 +10904,58 @@ gatsby@^4.2.0: date-fns "^2.25.0" debug "^3.2.7" deepmerge "^4.2.2" - del "^5.1.0" detect-port "^1.3.0" devcert "^1.2.0" dotenv "^8.6.0" + enhanced-resolve "^5.8.3" + error-stack-parser "^2.1.4" eslint "^7.32.0" eslint-config-react-app "^6.0.0" eslint-plugin-flowtype "^5.10.0" - eslint-plugin-graphql "^4.0.0" - eslint-plugin-import "^2.25.3" - eslint-plugin-jsx-a11y "^6.5.1" - eslint-plugin-react "^7.27.1" - eslint-plugin-react-hooks "^4.3.0" - eslint-webpack-plugin "^2.6.0" - event-source-polyfill "^1.0.25" + eslint-plugin-import "^2.26.0" + eslint-plugin-jsx-a11y "^6.6.1" + eslint-plugin-react "^7.30.1" + eslint-plugin-react-hooks "^4.6.0" + eslint-webpack-plugin "^2.7.0" + event-source-polyfill "1.0.25" execa "^5.1.1" express "^4.17.1" express-graphql "^0.12.0" + express-http-proxy "^1.6.3" fastest-levenshtein "^1.0.12" fastq "^1.13.0" file-loader "^6.2.0" find-cache-dir "^3.3.2" fs-exists-cached "1.0.0" - fs-extra "^10.0.0" - gatsby-cli "^4.4.0" - gatsby-core-utils "^3.4.0" - gatsby-graphiql-explorer "^2.4.0" - gatsby-legacy-polyfills "^2.4.0" - gatsby-link "^4.4.0" - gatsby-plugin-page-creator "^4.4.0" - gatsby-plugin-typescript "^4.4.0" - gatsby-plugin-utils "^2.4.0" - gatsby-react-router-scroll "^5.4.0" - gatsby-telemetry "^3.4.0" - gatsby-worker "^1.4.0" - glob "^7.2.0" - got "^11.8.2" + fs-extra "^10.1.0" + gatsby-cli "^4.24.0" + gatsby-core-utils "^3.24.0" + gatsby-graphiql-explorer "^2.24.0" + gatsby-legacy-polyfills "^2.24.0" + gatsby-link "^4.24.1" + gatsby-page-utils "^2.24.1" + gatsby-parcel-config "0.15.1" + gatsby-plugin-page-creator "^4.24.1" + gatsby-plugin-typescript "^4.24.0" + gatsby-plugin-utils "^3.18.0" + gatsby-react-router-scroll "^5.24.0" + gatsby-script "^1.9.0" + gatsby-telemetry "^3.24.0" + gatsby-worker "^1.24.0" + glob "^7.2.3" + globby "^11.1.0" + got "^11.8.5" graphql "^15.7.2" - graphql-compose "~7.25.1" + graphql-compose "^9.0.7" graphql-playground-middleware-express "^1.7.22" hasha "^5.2.2" - http-proxy "^1.18.1" invariant "^2.2.4" is-relative "^1.0.0" is-relative-url "^3.0.0" joi "^17.4.2" json-loader "^0.5.7" latest-version "5.1.0" - lmdb-store "^1.6.11" + lmdb "2.5.3" lodash "^4.17.21" md5-file "^5.0.0" meant "^1.0.3" @@ -10817,8 +10965,9 @@ gatsby@^4.2.0: mini-css-extract-plugin "1.6.2" mitt "^1.2.0" moment "^2.29.1" - multer "^1.4.3" + multer "^1.4.5-lts.1" node-fetch "^2.6.6" + node-html-parser "^5.3.3" normalize-path "^3.0.0" null-loader "^4.0.1" opentracing "^0.14.5" @@ -10833,23 +10982,22 @@ gatsby@^4.2.0: prop-types "^15.7.2" query-string "^6.14.1" raw-loader "^4.0.2" - react-dev-utils "^11.0.4" - react-refresh "^0.9.0" + react-dev-utils "^12.0.1" + react-refresh "^0.14.0" + react-server-dom-webpack "0.0.0-experimental-c8b778b7f-20220825" redux "4.1.2" redux-thunk "^2.4.0" resolve-from "^5.0.0" - semver "^7.3.5" + semver "^7.3.7" shallow-compare "^1.2.2" signal-exit "^3.0.5" slugify "^1.6.1" socket.io "3.1.2" socket.io-client "3.1.3" - source-map "^0.7.3" - source-map-support "^0.5.20" st "^2.0.0" stack-trace "^0.0.10" string-similarity "^1.2.2" - strip-ansi "^5.2.0" + strip-ansi "^6.0.1" style-loader "^2.0.0" terser-webpack-plugin "^5.2.4" tmp "^0.2.1" @@ -10857,14 +11005,15 @@ gatsby@^4.2.0: type-of "^2.0.1" url-loader "^4.1.1" uuid "^8.3.2" - v8-compile-cache "^2.3.0" webpack "^5.61.0" webpack-dev-middleware "^4.3.0" webpack-merge "^5.8.0" webpack-stats-plugin "^1.0.3" webpack-virtual-modules "^0.3.2" - xstate "^4.26.0" + xstate "4.32.1" yaml-loader "^0.6.0" + optionalDependencies: + gatsby-sharp "^0.18.0" gauge@^3.0.0: version "3.0.2" @@ -10881,20 +11030,6 @@ gauge@^3.0.0: strip-ansi "^6.0.1" wide-align "^1.1.2" -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - 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" @@ -10905,24 +11040,15 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-intrinsic@^1.0.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.2.tgz#336975123e05ad0b7ba41f152ee4aadbea6cf598" - integrity sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA== +get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.3.tgz#063c84329ad93e83893c7f4f243ef63ffa351385" + integrity sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A== dependencies: function-bind "^1.1.1" has "^1.0.3" has-symbols "^1.0.3" -get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" - integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== - dependencies: - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.1" - get-own-enumerable-property-symbols@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" @@ -10941,17 +11067,7 @@ get-port@^3.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 sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= - -get-stdin@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" - integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== - -get-stream@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" - integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= + integrity sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw== get-stream@^4.0.0, get-stream@^4.1.0: version "4.1.0" @@ -10983,20 +11099,12 @@ get-symbol-description@^1.0.0: 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 sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= - -gifwrap@^0.9.2: - version "0.9.2" - resolved "https://registry.yarnpkg.com/gifwrap/-/gifwrap-0.9.2.tgz#348e286e67d7cf57942172e1e6f05a71cee78489" - integrity sha512-fcIswrPaiCDAyO8xnWvHSZdWChjKXUanKKpAiWWJ/UTkEi/aYKn5+90e7DE820zbEaVR9CE2y4z9bzhQijZ0BA== - dependencies: - image-q "^1.1.1" - omggif "^1.0.10" + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== git-raw-commits@^2.0.0: - version "2.0.10" - resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.10.tgz#e2255ed9563b1c9c3ea6bd05806410290297bbc1" - integrity sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ== + version "2.0.11" + resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.11.tgz#bc3576638071d18655e1cc60d7f524920008d723" + integrity sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A== dependencies: dargs "^7.0.0" lodash "^4.17.15" @@ -11004,23 +11112,23 @@ git-raw-commits@^2.0.0: split2 "^3.0.0" through2 "^4.0.0" -git-up@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/git-up/-/git-up-4.0.5.tgz#e7bb70981a37ea2fb8fe049669800a1f9a01d759" - integrity sha512-YUvVDg/vX3d0syBsk/CKUTib0srcQME0JyHkL5BaYdwLsiCslPWmDSi8PUMo9pXYjrryMcmsCoCgsTpSCJEQaA== +git-up@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/git-up/-/git-up-7.0.0.tgz#bace30786e36f56ea341b6f69adfd83286337467" + integrity sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ== dependencies: - is-ssh "^1.3.0" - parse-url "^6.0.0" + is-ssh "^1.4.0" + parse-url "^8.1.0" github-from-package@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" - integrity sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4= + integrity sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw== github-slugger@^1.0.0, github-slugger@^1.2.1: - version "1.4.0" - resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.4.0.tgz#206eb96cdb22ee56fdc53a28d5a302338463444e" - integrity sha512-w0dzqw/nt51xMVmlaV1+JRzN+oCa1KfcgGEWhxUG16wbdA+Xnt/yoFO8Z8x/V82ZcZ0wy6ln9QDup5avbhiDhQ== + 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, glob-parent@^5.1.2, glob-parent@^6.0.2, glob-parent@~5.1.2: version "6.0.2" @@ -11039,7 +11147,7 @@ glob-promise@^3.4.0: glob-stream@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-6.1.0.tgz#7045c99413b3eb94888d83ab46d0b404cc7bdde4" - integrity sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ= + integrity sha512-uMbLGAP3S2aDOHUDfdoYcdIePUCfysbAd0IAoWVZbeGU/oNQ8asHVSshLDJUPWxfzj8zsCG7/XeHPHTtow0nsw== dependencies: extend "^3.0.0" glob "^7.1.1" @@ -11055,7 +11163,7 @@ glob-stream@^6.1.0: 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 sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= + integrity sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig== glob-to-regexp@^0.4.1: version "0.4.1" @@ -11065,11 +11173,11 @@ glob-to-regexp@^0.4.1: glob2base@0.0.12: version "0.0.12" resolved "https://registry.yarnpkg.com/glob2base/-/glob2base-0.0.12.tgz#9d419b3e28f12e83a362164a277055922c9c0d56" - integrity sha1-nUGbPijxLoOjYhZKJ3BVkiycDVY= + integrity sha512-ZyqlgowMbfj2NPjxaZZ/EtsXlOch28FRXgMd64vqZWk1bT9+wvSRLYD1om9M7QfQru51zJPAT17qXm4/zd+9QA== dependencies: find-index "^0.1.1" -glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.2.0: +glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.2.0, glob@^7.2.3: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -11084,7 +11192,7 @@ glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.2.0: global-dirs@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" - integrity sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU= + integrity sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg== dependencies: ini "^1.3.4" @@ -11102,7 +11210,7 @@ global-dirs@^3.0.0: dependencies: ini "2.0.0" -global-modules@2.0.0, global-modules@^2.0.0: +global-modules@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== @@ -11118,7 +11226,7 @@ global-prefix@^3.0.0: kind-of "^6.0.2" which "^1.3.1" -global@^4.4.0, global@~4.4.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== @@ -11131,40 +11239,21 @@ globals@^11.1.0: resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globals@^13.15.0: +globals@^13.15.0, globals@^13.2.0, globals@^13.6.0, globals@^13.9.0: version "13.17.0" resolved "https://registry.yarnpkg.com/globals/-/globals-13.17.0.tgz#902eb1e680a41da93945adbdcb5a9f361ba69bd4" integrity sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw== dependencies: type-fest "^0.20.2" -globals@^13.6.0, globals@^13.9.0: - version "13.12.1" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.12.1.tgz#ec206be932e6c77236677127577aa8e50bf1c5cb" - integrity sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw== - dependencies: - type-fest "^0.20.2" - globalthis@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.2.tgz#2a235d34f4d8036219f7e34929b5de9e18166b8b" - integrity sha512-ZQnSFO1la8P7auIOQECnm0sSuoMeaSq0EEdXMBFF2QJO4uNcwbyhSgG3MruWNbFTqCLmxVwGOl7LZ9kASvHdeQ== + version "1.0.3" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" + integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== dependencies: define-properties "^1.1.3" -globby@11.0.1: - version "11.0.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.1.tgz#9a2bf107a068f3ffeabc49ad702c79ede8cfd357" - integrity sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.1.1" - ignore "^5.1.4" - merge2 "^1.3.0" - slash "^3.0.0" - -globby@11.0.4, globby@^11.0.0, globby@^11.0.1, globby@^11.0.2, globby@^11.0.3, globby@^11.0.4: +globby@11.0.4: version "11.0.4" resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5" integrity sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg== @@ -11176,21 +11265,7 @@ globby@11.0.4, globby@^11.0.0, globby@^11.0.1, globby@^11.0.2, globby@^11.0.3, g merge2 "^1.3.0" slash "^3.0.0" -globby@^10.0.1: - version "10.0.2" - resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.2.tgz#277593e745acaa4646c3ab411289ec47a0392543" - integrity sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg== - dependencies: - "@types/glob" "^7.1.1" - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.0.3" - glob "^7.1.3" - ignore "^5.1.1" - merge2 "^1.2.3" - slash "^3.0.0" - -globby@^11.1.0: +globby@^11.0.0, globby@^11.0.1, globby@^11.0.2, globby@^11.0.3, globby@^11.0.4, globby@^11.1.0: version "11.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== @@ -11203,14 +11278,14 @@ globby@^11.1.0: slash "^3.0.0" globby@^12.0.0: - version "12.0.2" - resolved "https://registry.yarnpkg.com/globby/-/globby-12.0.2.tgz#53788b2adf235602ed4cabfea5c70a1139e1ab11" - integrity sha512-lAsmb/5Lww4r7MM9nCCliDZVIKbZTavrsunAsHLr9oHthrZP1qi7/gAnHOsUs9bLvEt2vKVJhHmxuL7QbDuPdQ== + version "12.2.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-12.2.0.tgz#2ab8046b4fba4ff6eede835b29f678f90e3d3c22" + integrity sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA== dependencies: array-union "^3.0.1" dir-glob "^3.0.1" fast-glob "^3.2.7" - ignore "^5.1.8" + ignore "^5.1.9" merge2 "^1.4.1" slash "^4.0.0" @@ -11231,12 +11306,12 @@ globby@^9.2.0: globjoin@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/globjoin/-/globjoin-0.1.4.tgz#2f4494ac8919e3767c5cbb691e9f463324285d43" - integrity sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM= + integrity sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg== -got@^11.8.2, got@^11.8.3: - version "11.8.3" - resolved "https://registry.yarnpkg.com/got/-/got-11.8.3.tgz#f496c8fdda5d729a90b4905d2b07dbd148170770" - integrity sha512-7gtQ5KiPh1RtGS9/Jbv1ofDpBFuq42gyfEib+ejaRBJuj/3tQFeR5+gw57e4ipaU8c/rCjvX6fkQz2lyDlGAOg== +got@^11.8.5: + version "11.8.5" + resolved "https://registry.yarnpkg.com/got/-/got-11.8.5.tgz#ce77d045136de56e8f024bebb82ea349bc730046" + integrity sha512-o0Je4NvQObAuZPHLFoRSkdG2lTgtcynqymzg2Vupdx6PorhaT5MCbIyXG6d4D94kk8ZG57QeosgdiqfJWhEhlQ== dependencies: "@sindresorhus/is" "^4.0.0" "@szmarczak/http-timer" "^4.0.5" @@ -11267,12 +11342,7 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.3, graceful-fs@^4.2.4: - version "4.2.8" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" - integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== - -graceful-fs@^4.2.9: +graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.3, graceful-fs@^4.2.4, 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== @@ -11282,15 +11352,14 @@ grapheme-splitter@^1.0.4: resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e" integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== -graphql-compose@~7.25.0, graphql-compose@~7.25.1: - version "7.25.1" - resolved "https://registry.yarnpkg.com/graphql-compose/-/graphql-compose-7.25.1.tgz#9d89f72781931590d4dfca6a709f381f2f76b873" - integrity sha512-TPXTe1BoQkMjp/MH93yA0SQo8PiXxJAv6Eo6K/+kpJELM9l2jZnd5PCduweuXFcKv+nH973wn/VYzYKDMQ9YoQ== +graphql-compose@^9.0.7: + version "9.0.10" + resolved "https://registry.yarnpkg.com/graphql-compose/-/graphql-compose-9.0.10.tgz#1e870166deb1785761865fe742dea0601d2c77f2" + integrity sha512-UsVoxfi2+c8WbHl2pEB+teoRRZoY4mbWBoijeLDGpAZBSPChnqtSRjp+T9UcouLCwGr5ooNyOQLoI3OVzU1bPQ== dependencies: graphql-type-json "0.3.2" - object-path "0.11.5" -graphql-config@^3.0.2, graphql-config@^4.1.0: +graphql-config@^4.1.0: version "4.3.6" resolved "https://registry.yarnpkg.com/graphql-config/-/graphql-config-4.3.6.tgz#908ef03d6670c3068e51fe2e84e10e3e0af220b6" integrity sha512-i7mAPwc0LAZPnYu2bI8B6yXU5820Wy/ArvmOseDLZIu0OU1UTULEuexHo6ZcHXeT9NvGGaUPQZm8NV3z79YydA== @@ -11323,14 +11392,14 @@ graphql-playground-middleware-express@^1.7.22: dependencies: graphql-playground-html "^1.6.30" -graphql-subscriptions@^1.1.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/graphql-subscriptions/-/graphql-subscriptions-1.2.1.tgz#2142b2d729661ddf967b7388f7cf1dd4cf2e061d" - integrity sha512-95yD/tKi24q8xYa7Q9rhQN16AYj5wPbrb8tmHGM3WRc9EBmWrG/0kkMl+tQG8wcEuE9ibR4zyOM31p5Sdr2v4g== +graphql-tag@^2.11.0: + version "2.12.6" + resolved "https://registry.yarnpkg.com/graphql-tag/-/graphql-tag-2.12.6.tgz#d441a569c1d2537ef10ca3d1633b48725329b5f1" + integrity sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg== dependencies: - iterall "^1.3.0" + tslib "^2.1.0" -graphql-type-json@0.3.2, graphql-type-json@^0.3.2: +graphql-type-json@0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/graphql-type-json/-/graphql-type-json-0.3.2.tgz#f53a851dbfe07bd1c8157d24150064baab41e115" integrity sha512-J+vjof74oMlCWXSvt0DOf2APEdZOCdubEvGDUAlqH//VBYcOYsGgRW7Xzorr44LvkjiuvecWc8fChxuZZbChtg== @@ -11340,7 +11409,7 @@ graphql-ws@^5.4.1: resolved "https://registry.yarnpkg.com/graphql-ws/-/graphql-ws-5.11.2.tgz#d5e0acae8b4d4a4cf7be410a24135cfcefd7ddc0" integrity sha512-4EiZ3/UXYcjm+xFGP544/yW1+DVI8ZpKASFbzrV5EDTFWJp0ZvLl4Dy2fSZAzz9imKp5pZMIcjB0x/H69Pv/6w== -graphql@^15.4.0, graphql@^15.7.2: +graphql@^15.7.2: version "15.8.0" resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.8.0.tgz#33410e96b012fa3bdb1091cc99a94769db212b38" integrity sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw== @@ -11348,7 +11417,7 @@ graphql@^15.4.0, graphql@^15.7.2: gray-matter@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-2.1.1.tgz#3042d9adec2a1ded6a7707a9ed2380f8a17a430e" - integrity sha1-MELZrewqHe1qdwep7SOA+KF6Qw4= + integrity sha512-vbmvP1Fe/fxuT2QuLVcqb2BfK7upGhhbLIt9/owWEvPYrZZEkelLcq2HqzxosV+PQ67dUFLaAeNpH7C4hhICAA== dependencies: ansi-red "^0.1.1" coffee-script "^1.12.4" @@ -11375,13 +11444,12 @@ gulp-header@^1.7.1: lodash.template "^4.4.0" through2 "^2.0.0" -gzip-size@5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.1.1.tgz#cb9bee692f87c0612b232840a873904e4c135274" - integrity sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA== +gzip-size@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" + integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q== dependencies: - duplexer "^0.1.1" - pify "^4.0.1" + duplexer "^0.1.2" handlebars@^4.7.7: version "4.7.7" @@ -11400,20 +11468,20 @@ hard-rejection@^2.1.0: resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== -has-bigints@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" - integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== +has-bigints@^1.0.1, has-bigints@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" + integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== has-cors@1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39" - integrity sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk= + integrity sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA== has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: version "4.0.0" @@ -11423,16 +11491,18 @@ has-flag@^4.0.0: has-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-glob/-/has-glob-1.0.0.tgz#9aaa9eedbffb1ba3990a7b0010fb678ee0081207" - integrity sha1-mqqe7b/7G6OZCnsAEPtnjuAIEgc= + integrity sha512-D+8A457fBShSEI3tFCj65PAbT++5sKiFtdCdOam0gnfBgw9D277OERk+HM9qYJXmdVLZ/znez10SqHN0BBQ50g== dependencies: is-glob "^3.0.0" -has-symbols@^1.0.1, has-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" - integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== +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" + integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== + dependencies: + get-intrinsic "^1.1.1" -has-symbols@^1.0.3: +has-symbols@^1.0.1, has-symbols@^1.0.2, has-symbols@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== @@ -11444,15 +11514,15 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" -has-unicode@^2.0.0, has-unicode@^2.0.1: +has-unicode@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= + 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 sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== dependencies: get-value "^2.0.3" has-values "^0.1.4" @@ -11461,7 +11531,7 @@ has-value@^0.3.1: has-value@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= + integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== dependencies: get-value "^2.0.6" has-values "^1.0.0" @@ -11470,12 +11540,12 @@ has-value@^1.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 sha1-bWHeldkd/Km5oCCJrThL/49it3E= + 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 sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= + integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== dependencies: is-number "^3.0.0" kind-of "^4.0.0" @@ -11568,7 +11638,7 @@ hastscript@^6.0.0: property-information "^5.0.0" space-separated-tokens "^1.0.0" -he@1.2.x, he@^1.2.0: +he@1.2.0, he@1.2.x, 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== @@ -11576,7 +11646,7 @@ he@1.2.x, he@^1.2.0: header-case@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/header-case/-/header-case-1.0.1.tgz#9535973197c144b09613cd65d317ef19963bd02d" - integrity sha1-lTWXMZfBRLCWE81l0xfvGZY70C0= + integrity sha512-i0q9mkOeSuhXw6bGgiQCCBgY/jlZuV/7dZXyZ9c6LcBrqwvT8eT719E9uxE5LiZftdl+z81Ugbg/VvXV4OJOeQ== dependencies: no-case "^2.2.0" upper-case "^1.1.3" @@ -11589,14 +11659,6 @@ header-case@^2.0.4: capital-case "^1.0.4" tslib "^2.0.3" -hicat@^0.8.0: - version "0.8.0" - resolved "https://registry.yarnpkg.com/hicat/-/hicat-0.8.0.tgz#20cd71f58aaf1bd84d52e54f1aeea0c90fa74251" - integrity sha512-om8L9O5XwqeSdwl5NtHgrzK3wcF4fT9T4gb/NktoH8EyoZipas/tvUZLV48xT7fQfMYr9qvb0WEutqdf0LWSqA== - dependencies: - highlight.js "^10.4.1" - minimist "^1.2.5" - highlight.js@^10.4.1, highlight.js@~10.7.0: version "10.7.3" resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.7.3.tgz#697272e3991356e40c3cac566a74eef681756531" @@ -11615,9 +11677,9 @@ hosted-git-info@^3.0.8: lru-cache "^6.0.0" hosted-git-info@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz#5e425507eede4fea846b7262f0838456c4209961" - integrity sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg== + version "4.1.0" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" + integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA== dependencies: lru-cache "^6.0.0" @@ -11628,15 +11690,10 @@ html-encoding-sniffer@^2.0.1: dependencies: whatwg-encoding "^1.0.5" -html-entities@^1.2.1: - version "1.4.0" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.4.0.tgz#cfbd1b01d2afaf9adca1b10ae7dffab98c71d2dc" - integrity sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA== - -html-entities@^2.1.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.3.2.tgz#760b404685cb1d794e4f4b744332e3b00dcfe488" - integrity sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ== +html-entities@^2.1.0, html-entities@^2.3.3: + 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" @@ -11669,10 +11726,10 @@ html-minifier@^3.5.21: relateurl "0.2.x" uglify-js "3.4.x" -html-tags@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140" - integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg== +html-tags@^3.1.0, html-tags@^3.2.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" @@ -11712,6 +11769,16 @@ htmlparser2@^6.1.0: domutils "^2.5.2" entities "^2.0.0" +htmlparser2@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-8.0.1.tgz#abaa985474fcefe269bc761a779b544d7196d010" + integrity sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA== + dependencies: + domelementtype "^2.3.0" + domhandler "^5.0.2" + domutils "^3.0.1" + entities "^4.3.0" + http-assert@^1.3.0: version "1.5.0" resolved "https://registry.yarnpkg.com/http-assert/-/http-assert-1.5.0.tgz#c389ccd87ac16ed2dfa6246fd73b926aa00e6b8f" @@ -11736,7 +11803,18 @@ http-errors@1.8.0: statuses ">= 1.5.0 < 2" toidentifier "1.0.0" -http-errors@1.8.1, http-errors@^1.6.3, http-errors@^1.7.3, http-errors@~1.8.0: +http-errors@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== + dependencies: + depd "2.0.0" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses "2.0.1" + toidentifier "1.0.1" + +http-errors@^1.6.3, http-errors@^1.7.3, http-errors@~1.8.0: version "1.8.1" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== @@ -11750,7 +11828,7 @@ http-errors@1.8.1, http-errors@^1.6.3, http-errors@^1.7.3, http-errors@~1.8.0: http-errors@~1.6.2: version "1.6.3" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= + integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== dependencies: depd "~1.1.2" inherits "2.0.3" @@ -11766,15 +11844,6 @@ http-proxy-agent@^4.0.1: agent-base "6" debug "4" -http-proxy@^1.18.1: - version "1.18.1" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" - integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== - dependencies: - eventemitter3 "^4.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - http2-wrapper@^1.0.0-beta.5.2: version "1.0.3" resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.3.tgz#b8f55e0c1f25d4ebd08b3b0c2c079f9590800b3d" @@ -11783,10 +11852,10 @@ http2-wrapper@^1.0.0-beta.5.2: quick-lru "^5.1.1" resolve-alpn "^1.0.0" -https-proxy-agent@5.0.0, https-proxy-agent@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" - integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== +https-proxy-agent@5.0.1, https-proxy-agent@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== dependencies: agent-base "6" debug "4" @@ -11845,25 +11914,25 @@ ignore@^4.0.3, ignore@^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.1.1, ignore@^5.1.4, ignore@^5.1.8, ignore@^5.2.0: +ignore@^5.1.4, ignore@^5.1.8, ignore@^5.1.9, ignore@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== -image-q@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/image-q/-/image-q-1.1.1.tgz#fc84099664460b90ca862d9300b6bfbbbfbf8056" - integrity sha1-/IQJlmRGC5DKhi2TALa/u7+/gFY= - -immer@8.0.1, immer@^9.0.6: +immer@^9.0.6, immer@^9.0.7: version "9.0.16" resolved "https://registry.yarnpkg.com/immer/-/immer-9.0.16.tgz#8e7caab80118c2b54b37ad43e05758cdefad0198" integrity sha512-qenGE7CstVm1NrHQbMh8YaSzTZTFNP3zPqr3YU0S0UY441j4bJTg4A2Hh5KAhwgaiU6ZZ1Ar6y/2f4TblnMReQ== immutable@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.0.0.tgz#b86f78de6adef3608395efb269a91462797e2c23" - integrity sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw== + version "4.1.0" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.1.0.tgz#f795787f0db780183307b9eb2091fcac1f6fafef" + integrity sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ== + +immutable@~3.7.6: + version "3.7.6" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.7.6.tgz#13b4d3cb12befa15482a26fe1b2ebae640071e4b" + integrity sha512-AizQPcaofEtO11RZhPPHBOJRdo/20MKQF9mBLnVkBoyHi1/zXK8fzVdnEpSV9gxqtnh6Qomfp3F0xT5qP/vThw== import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: version "3.3.0" @@ -11873,7 +11942,7 @@ import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: parent-module "^1.0.0" resolve-from "^4.0.0" -import-from@^4.0.0: +import-from@4.0.0, import-from@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/import-from/-/import-from-4.0.0.tgz#2710b8d66817d232e16f4166e319248d3d5492e2" integrity sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ== @@ -11881,7 +11950,7 @@ import-from@^4.0.0: import-lazy@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" - integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= + integrity sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A== import-lazy@^4.0.0: version "4.0.0" @@ -11889,9 +11958,9 @@ import-lazy@^4.0.0: integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw== import-local@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.3.tgz#4d51c2c495ca9393da259ec66b62e022920211e0" - integrity sha512-bE9iaUY3CXH8Cwfan/abDKAxe1KGT9kyGsBPqf6DMK/z0a2OzAsrukeYNgIH6cH5Xr452jb1TUL8rSfCLjZ9uA== + version "3.1.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== dependencies: pkg-dir "^4.2.0" resolve-cwd "^3.0.0" @@ -11899,12 +11968,12 @@ import-local@^3.0.2: imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + 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 sha1-ji1INIdCEhtKghi3oTfppSBJ3IA= + integrity sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg== dependencies: repeating "^2.0.0" @@ -11916,7 +11985,7 @@ indent-string@^4.0.0: inflation@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/inflation/-/inflation-2.0.0.tgz#8b417e47c28f925a45133d914ca1fd389107f30f" - integrity sha1-i0F+R8KPklpFEz2RTKH9OJEH8w8= + integrity sha512-m3xv4hJYR2oXw4o4Y5l6P5P16WYmazYof+el6Al3f+YlggGj6qT9kImBAnzDelRALnP5d3h4jGBPKzYCizjZZw== inflight@^1.0.4: version "1.0.6" @@ -11934,7 +12003,7 @@ inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, i inherits@2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= + integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== ini@1.3.7: version "1.3.7" @@ -11956,7 +12025,7 @@ inline-style-parser@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@^7.0.0, inquirer@^7.0.4: +inquirer@^7.0.0, inquirer@^7.3.3: version "7.3.3" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== @@ -11997,9 +12066,9 @@ invariant@^2.2.3, invariant@^2.2.4: loose-envify "^1.0.0" ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= + version "1.1.8" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.8.tgz#ae05948f6b075435ed3307acce04629da8cdbf48" + integrity sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg== ip@^2.0.0: version "2.0.0" @@ -12027,7 +12096,7 @@ is-absolute@^1.0.0: 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 sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= + integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== dependencies: kind-of "^3.0.2" @@ -12046,7 +12115,7 @@ is-alphabetical@1.0.4, is-alphabetical@^1.0.0: is-alphanumeric@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-alphanumeric/-/is-alphanumeric-1.0.0.tgz#4a9cef71daf4c001c1d81d63d140cf53fd6889f4" - integrity sha1-Spzvcdr0wAHB2B1j0UDPU/1oifQ= + integrity sha512-ZmRL7++ZkcMOfDuWZuMJyIVLr2keE1o/DeNWh1EmgqGhUcV+9BIVsx0BcSBOHTZqzjs4+dISzr2KAeBEWGgXeA== is-alphanumerical@^1.0.0: version "1.0.4" @@ -12067,7 +12136,7 @@ is-arguments@^1.1.0: is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-arrayish@^0.3.1: version "0.3.2" @@ -12081,7 +12150,7 @@ is-bigint@^1.0.1: dependencies: has-bigints "^1.0.1" -is-binary-path@^2.1.0, is-binary-path@~2.1.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" integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== @@ -12106,10 +12175,17 @@ is-buffer@^2.0.0: resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== -is-callable@^1.1.4, is-callable@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" - integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== +is-builtin-module@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-3.2.0.tgz#bb0310dfe881f144ca83f30100ceb10cf58835e0" + integrity sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw== + dependencies: + builtin-modules "^3.3.0" + +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" + integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== is-ci@^2.0.0: version "2.0.0" @@ -12125,17 +12201,17 @@ is-ci@^3.0.1: dependencies: ci-info "^3.2.0" -is-core-module@^2.2.0, is-core-module@^2.5.0, is-core-module@^2.8.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.0.tgz#0321336c3d0925e497fd97f5d95cb114a5ccd548" - integrity sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw== +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" + integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== 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 sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= + integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== dependencies: kind-of "^3.0.2" @@ -12192,7 +12268,7 @@ is-dom@^1.0.0: 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 sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== is-extendable@^1.0.1: version "1.0.1" @@ -12204,30 +12280,18 @@ is-extendable@^1.0.1: is-extglob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= + integrity sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww== 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 sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + 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@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= - 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" @@ -12238,7 +12302,7 @@ 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.1, is-function@^1.0.2: +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== @@ -12258,14 +12322,14 @@ is-generator-function@^1.0.7: is-glob@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= + integrity sha512-a1dBeB19NXsf/E0+FHqkagizel/LQw2DjSQpvQrj3zT+jYPpaUCryPnrQajXKFLCMuf4I6FhRpaGtw4lPrG6Eg== dependencies: is-extglob "^1.0.0" is-glob@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= + integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw== dependencies: is-extglob "^2.1.0" @@ -12300,17 +12364,24 @@ is-installed-globally@^0.4.0: is-invalid-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/is-invalid-path/-/is-invalid-path-0.1.0.tgz#307a855b3cf1a938b44ea70d2c61106053714f34" - integrity sha1-MHqFWzzxqTi0TqcNLGEQYFNxTzQ= + integrity sha512-aZMG0T3F34mTg4eTdszcGXx54oiZ4NtHSft3hWNJMGJXUUqdIj3cOZuHcU0nCWWcY3jd7yRe/3AEm3vSNTpBGQ== dependencies: is-glob "^2.0.0" is-lower-case@^1.1.0: version "1.1.3" resolved "https://registry.yarnpkg.com/is-lower-case/-/is-lower-case-1.1.3.tgz#7e147be4768dc466db3bfb21cc60b31e6ad69393" - integrity sha1-fhR75HaNxGbbO/shzGCzHmrWk5M= + integrity sha512-+5A1e/WJpLLXZEDlgz4G//WYSHyQBD32qa4Jd3Lw06qQlv3fJHnp3YIHjTQSGzHMgzmVKz2ZP3rBxTHkPw/lxA== dependencies: lower-case "^1.1.0" +is-lower-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/is-lower-case/-/is-lower-case-2.0.2.tgz#1c0884d3012c841556243483aa5d522f47396d2a" + integrity sha512-bVcMJy4X5Og6VZfdOZstSexlEy20Sr0k/p/b2IlQJlfdKAQuMpiv5w2Ccxb8sKdRUNAG1PnHVHjFSdRDVS6NlQ== + dependencies: + tslib "^2.0.3" + is-map@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127" @@ -12319,14 +12390,14 @@ is-map@^2.0.2: is-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" - integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= + integrity sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g== is-negated-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" - integrity sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI= + integrity sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug== -is-negative-zero@^2.0.1: +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" integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== @@ -12342,23 +12413,23 @@ is-npm@^5.0.0: integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA== is-number-object@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" - integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g== + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" + integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== dependencies: has-tostringtag "^1.0.0" is-number@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - integrity sha1-Afy7s5NGOlSPL0ZszhbezknbkI8= + integrity sha512-QUzH43Gfb9+5yckcrSA0VBDwEtDUchrk4F6tfJZQuNzDJbEDB9cZNzSfXGQ1jqmdDY/kl41lUOWM9syA8z8jlg== dependencies: kind-of "^3.0.2" is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= + integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== dependencies: kind-of "^3.0.2" @@ -12375,7 +12446,7 @@ is-number@^7.0.0: is-obj@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= + integrity sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg== is-obj@^2.0.0: version "2.0.0" @@ -12387,11 +12458,6 @@ is-object@^1.0.1: 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.1, 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" @@ -12400,7 +12466,7 @@ is-path-inside@^3.0.1, is-path-inside@^3.0.2, is-path-inside@^3.0.3: is-plain-obj@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== is-plain-obj@^2.0.0: version "2.1.0" @@ -12440,12 +12506,7 @@ is-regex@^1.1.2, is-regex@^1.1.4: is-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= - -is-regexp@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-2.1.0.tgz#cd734a56864e23b956bf4e7c66c396a4c0b22c2d" - integrity sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA== + integrity sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA== is-relative-url@^3.0.0: version "3.0.0" @@ -12461,7 +12522,7 @@ is-relative@^1.0.0: dependencies: is-unc-path "^1.0.0" -is-root@2.1.0: +is-root@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" integrity sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg== @@ -12471,12 +12532,14 @@ is-set@^2.0.2: resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.2.tgz#90755fa4c2562dc1c5d4024760d6119b94ca18ec" integrity sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g== -is-shared-array-buffer@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" - integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA== +is-shared-array-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" + integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== + dependencies: + call-bind "^1.0.2" -is-ssh@^1.3.0: +is-ssh@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.4.0.tgz#4f8220601d2839d8fa624b3106f8e8884f01b8b2" integrity sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ== @@ -12486,7 +12549,7 @@ is-ssh@^1.3.0: is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= + integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== is-stream@^2.0.0: version "2.0.1" @@ -12517,14 +12580,14 @@ is-symbol@^1.0.2, is-symbol@^1.0.3: is-text-path@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e" - integrity sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4= + integrity sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w== dependencies: text-extensions "^1.0.0" is-typedarray@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== is-unc-path@^1.0.0: version "1.0.0" @@ -12536,19 +12599,21 @@ is-unc-path@^1.0.0: is-upper-case@^1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/is-upper-case/-/is-upper-case-1.1.2.tgz#8d0b1fa7e7933a1e58483600ec7d9661cbaf756f" - integrity sha1-jQsfp+eTOh5YSDYA7H2WYcuvdW8= + integrity sha512-GQYSJMgfeAmVwh9ixyk888l7OIhNAGKtY6QA+IrWlu9MDTCaXmeozOZ2S9Knj7bQwBO/H6J2kb+pbyTUiMNbsw== dependencies: upper-case "^1.1.0" -is-url@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.4.tgz#04a4df46d28c4cff3d73d01ff06abeb318a1aa52" - integrity sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww== +is-upper-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/is-upper-case/-/is-upper-case-2.0.2.tgz#f1105ced1fe4de906a5f39553e7d3803fd804649" + integrity sha512-44pxmxAvnnAOwBg4tHPnkfvgjPwbc5QIsSstNU+YcJ1ovxVzCWpSGosPJOZh/a1tdl81fbgnLc9LLv+x2ywbPQ== + dependencies: + tslib "^2.0.3" is-utf8@^0.2.0, is-utf8@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= + integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== is-valid-domain@^0.1.6: version "0.1.6" @@ -12560,23 +12625,23 @@ is-valid-domain@^0.1.6: is-valid-element-name@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-valid-element-name/-/is-valid-element-name-1.0.0.tgz#26ef3fd76cdf1f122d105406e32d35b0de005981" - integrity sha1-Ju8/12zfHxItEFQG4y01sN4AWYE= + integrity sha512-GZITEJY2LkSjQfaIPBha7eyZv+ge0PhBR7KITeCCWvy7VBQrCUdFkvpI+HrAPQjVtVjy1LvlEkqQTHckoszruw== dependencies: is-potential-custom-element-name "^1.0.0" is-valid-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-1.0.0.tgz#29bf3eff701be2d4d315dbacc39bc39fe8f601aa" - integrity sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao= + integrity sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA== is-valid-path@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-valid-path/-/is-valid-path-0.1.1.tgz#110f9ff74c37f663e1ec7915eb451f2db93ac9df" - integrity sha1-EQ+f90w39mPh7HkV60UfLbk6yd8= + integrity sha512-+kwPrVDu9Ms03L90Qaml+79+6DZHqHyRoANI6IsZJ/g8frhnfchDOBCa0RbQ6/kdHt5CS5OeIEyrYznNuVN+8A== dependencies: is-invalid-path "^0.1.0" -is-weakref@^1.0.1: +is-weakref@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== @@ -12591,7 +12656,7 @@ is-whitespace-character@^1.0.0: is-window@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-window/-/is-window-1.0.2.tgz#2c896ca53db97de45d3c33133a65d8c9f563480d" - integrity sha1-LIlspT25feRdPDMTOmXYyfVjSA0= + integrity sha512-uj00kdXyZb9t9RcAUAwMZAnkBUwdYGhYlt7djMXhfyhUCzwNba50tIiBKR7q0l7tdoBtFVw/3JmLY6fI3rmZmg== is-windows@^1.0.0, is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" @@ -12618,12 +12683,12 @@ is-yarn-global@^0.3.0: isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= + integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== 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 sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== isarray@^2.0.5: version "2.0.5" @@ -12631,9 +12696,9 @@ isarray@^2.0.5: integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== isbinaryfile@^4.0.6: - version "4.0.8" - resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.8.tgz#5d34b94865bd4946633ecc78a026fc76c5b11fcf" - integrity sha512-53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w== + version "4.0.10" + resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.10.tgz#0c5b5e30c2557a2f06febd37b7322946aaee42b3" + integrity sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw== isexe@^2.0.0: version "2.0.0" @@ -12643,14 +12708,14 @@ isexe@^2.0.0: isobject@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= + 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 sha1-TkMekrEalzFjaqH5yNHMvP2reN8= + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== isobject@^4.0.0: version "4.0.0" @@ -12670,25 +12735,15 @@ isomorphic-ws@^5.0.0: resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz#e5529148912ecb9b451b46ed44d53dae1ce04bbf" integrity sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw== -istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.0.1, istanbul-lib-coverage@^3.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" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== -istanbul-lib-instrument@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" - integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== - dependencies: - "@babel/core" "^7.7.5" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.0.0" - semver "^6.3.0" - -istanbul-lib-instrument@^5.0.4: - version "5.1.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" - integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q== +istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" + integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== dependencies: "@babel/core" "^7.12.3" "@babel/parser" "^7.14.7" @@ -12714,19 +12769,14 @@ istanbul-lib-source-maps@^4.0.0: istanbul-lib-coverage "^3.0.0" source-map "^0.6.1" -istanbul-reports@^3.0.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.2.tgz#b80e13cbab0120e1c367ebaa099862361aed5ead" - integrity sha512-0gHxuT1NNC0aEIL1zbJ+MTgPbbHhU77eJPuU35WKA7TgXiSNlCAx4PENoMrH0Or6M2H80TaZcWKhM0IK6V8gRw== +istanbul-reports@^3.0.2, 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== dependencies: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -iterall@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea" - integrity sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg== - iterate-iterator@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/iterate-iterator/-/iterate-iterator-1.0.2.tgz#551b804c9eaa15b847ea6a7cdc2f5bf1ec150f91" @@ -12740,95 +12790,87 @@ iterate-value@^1.0.2: es-get-iterator "^1.0.2" iterate-iterator "^1.0.1" -jest-changed-files@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.4.2.tgz#da2547ea47c6e6a5f6ed336151bd2075736eb4a5" - integrity sha512-/9x8MjekuzUQoPjDHbBiXbNEBauhrPU2ct7m8TfCg69ywt1y/N+yYwGh3gCpnqUS3klYWDU/lSNgv+JhoD2k1A== +jest-changed-files@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" + integrity sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" execa "^5.0.0" throat "^6.0.1" -jest-circus@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.4.5.tgz#70bfb78e0200cab9b84747bf274debacaa538467" - integrity sha512-eTNWa9wsvBwPykhMMShheafbwyakcdHZaEYh5iRrQ0PFJxkDP/e3U/FvzGuKWu2WpwUA3C3hPlfpuzvOdTVqnw== +jest-circus@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc" + integrity sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw== dependencies: - "@jest/environment" "^27.4.4" - "@jest/test-result" "^27.4.2" - "@jest/types" "^27.4.2" + "@jest/environment" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" dedent "^0.7.0" - expect "^27.4.2" + expect "^27.5.1" is-generator-fn "^2.0.0" - jest-each "^27.4.2" - jest-matcher-utils "^27.4.2" - jest-message-util "^27.4.2" - jest-runtime "^27.4.5" - jest-snapshot "^27.4.5" - jest-util "^27.4.2" - pretty-format "^27.4.2" + jest-each "^27.5.1" + jest-matcher-utils "^27.5.1" + jest-message-util "^27.5.1" + jest-runtime "^27.5.1" + jest-snapshot "^27.5.1" + jest-util "^27.5.1" + pretty-format "^27.5.1" slash "^3.0.0" stack-utils "^2.0.3" throat "^6.0.1" -jest-cli@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.4.5.tgz#8708f54c28d13681f3255ec9026a2b15b03d41e8" - integrity sha512-hrky3DSgE0u7sQxaCL7bdebEPHx5QzYmrGuUjaPLmPE8jx5adtvGuOlRspvMoVLTTDOHRnZDoRLYJuA+VCI7Hg== +jest-cli@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" + integrity sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw== dependencies: - "@jest/core" "^27.4.5" - "@jest/test-result" "^27.4.2" - "@jest/types" "^27.4.2" + "@jest/core" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/types" "^27.5.1" chalk "^4.0.0" exit "^0.1.2" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" import-local "^3.0.2" - jest-config "^27.4.5" - jest-util "^27.4.2" - jest-validate "^27.4.2" + jest-config "^27.5.1" + jest-util "^27.5.1" + jest-validate "^27.5.1" prompts "^2.0.1" yargs "^16.2.0" -jest-config@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.4.5.tgz#77ed7f2ba7bcfd7d740ade711d0d13512e08a59e" - integrity sha512-t+STVJtPt+fpqQ8GBw850NtSQbnDOw/UzdPfzDaHQ48/AylQlW7LHj3dH+ndxhC1UxJ0Q3qkq7IH+nM1skwTwA== +jest-config@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" + integrity sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA== dependencies: - "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^27.4.5" - "@jest/types" "^27.4.2" - babel-jest "^27.4.5" + "@babel/core" "^7.8.0" + "@jest/test-sequencer" "^27.5.1" + "@jest/types" "^27.5.1" + babel-jest "^27.5.1" chalk "^4.0.0" ci-info "^3.2.0" deepmerge "^4.2.2" glob "^7.1.1" - graceful-fs "^4.2.4" - jest-circus "^27.4.5" - jest-environment-jsdom "^27.4.4" - jest-environment-node "^27.4.4" - jest-get-type "^27.4.0" - jest-jasmine2 "^27.4.5" - jest-regex-util "^27.4.0" - jest-resolve "^27.4.5" - jest-runner "^27.4.5" - jest-util "^27.4.2" - jest-validate "^27.4.2" + graceful-fs "^4.2.9" + jest-circus "^27.5.1" + jest-environment-jsdom "^27.5.1" + jest-environment-node "^27.5.1" + jest-get-type "^27.5.1" + jest-jasmine2 "^27.5.1" + jest-regex-util "^27.5.1" + jest-resolve "^27.5.1" + jest-runner "^27.5.1" + jest-util "^27.5.1" + jest-validate "^27.5.1" micromatch "^4.0.4" - pretty-format "^27.4.2" + parse-json "^5.2.0" + pretty-format "^27.5.1" slash "^3.0.0" - -jest-diff@^25.5.0: - version "25.5.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-25.5.0.tgz#1dd26ed64f96667c068cef026b677dfa01afcfa9" - integrity sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A== - dependencies: - chalk "^3.0.0" - diff-sequences "^25.2.6" - jest-get-type "^25.2.6" - pretty-format "^25.5.0" + strip-json-comments "^3.1.1" jest-diff@^26.0.0: version "26.6.2" @@ -12840,73 +12882,68 @@ jest-diff@^26.0.0: jest-get-type "^26.3.0" pretty-format "^26.6.2" -jest-diff@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.4.2.tgz#786b2a5211d854f848e2dcc1e324448e9481f36f" - integrity sha512-ujc9ToyUZDh9KcqvQDkk/gkbf6zSaeEg9AiBxtttXW59H/AcqEYp1ciXAtJp+jXWva5nAf/ePtSsgWwE5mqp4Q== +jest-diff@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" + integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw== dependencies: chalk "^4.0.0" - diff-sequences "^27.4.0" - jest-get-type "^27.4.0" - pretty-format "^27.4.2" + diff-sequences "^27.5.1" + jest-get-type "^27.5.1" + pretty-format "^27.5.1" -jest-docblock@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.4.0.tgz#06c78035ca93cbbb84faf8fce64deae79a59f69f" - integrity sha512-7TBazUdCKGV7svZ+gh7C8esAnweJoG+SvcF6Cjqj4l17zA2q1cMwx2JObSioubk317H+cjcHgP+7fTs60paulg== +jest-docblock@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" + integrity sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ== dependencies: detect-newline "^3.0.0" -jest-each@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.4.2.tgz#19364c82a692d0d26557642098d1f4619c9ee7d3" - integrity sha512-53V2MNyW28CTruB3lXaHNk6PkiIFuzdOC9gR3C6j8YE/ACfrPnz+slB0s17AgU1TtxNzLuHyvNlLJ+8QYw9nBg== +jest-each@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" + integrity sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" chalk "^4.0.0" - jest-get-type "^27.4.0" - jest-util "^27.4.2" - pretty-format "^27.4.2" - -jest-environment-jsdom@^27.4.4: - version "27.4.4" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.4.4.tgz#94f738e99514d7a880e8ed8e03e3a321d43b49db" - integrity sha512-cYR3ndNfHBqQgFvS1RL7dNqSvD//K56j/q1s2ygNHcfTCAp12zfIromO1w3COmXrxS8hWAh7+CmZmGCIoqGcGA== - dependencies: - "@jest/environment" "^27.4.4" - "@jest/fake-timers" "^27.4.2" - "@jest/types" "^27.4.2" + jest-get-type "^27.5.1" + jest-util "^27.5.1" + pretty-format "^27.5.1" + +jest-environment-jsdom@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" + integrity sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw== + dependencies: + "@jest/environment" "^27.5.1" + "@jest/fake-timers" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" - jest-mock "^27.4.2" - jest-util "^27.4.2" + jest-mock "^27.5.1" + jest-util "^27.5.1" jsdom "^16.6.0" -jest-environment-node@^27.4.4: - version "27.4.4" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.4.4.tgz#42fe5e3b224cb69b99811ebf6f5eaa5a59618514" - integrity sha512-D+v3lbJ2GjQTQR23TK0kY3vFVmSeea05giInI41HHOaJnAwOnmUHTZgUaZL+VxUB43pIzoa7PMwWtCVlIUoVoA== +jest-environment-node@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" + integrity sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw== dependencies: - "@jest/environment" "^27.4.4" - "@jest/fake-timers" "^27.4.2" - "@jest/types" "^27.4.2" + "@jest/environment" "^27.5.1" + "@jest/fake-timers" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" - jest-mock "^27.4.2" - jest-util "^27.4.2" - -jest-get-type@^25.2.6: - version "25.2.6" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-25.2.6.tgz#0b0a32fab8908b44d508be81681487dbabb8d877" - integrity sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig== + jest-mock "^27.5.1" + jest-util "^27.5.1" jest-get-type@^26.3.0: version "26.3.0" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== -jest-get-type@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.4.0.tgz#7503d2663fffa431638337b3998d39c5e928e9b5" - integrity sha512-tk9o+ld5TWq41DkK14L4wox4s2D9MtTpKaAVzXfr5CUKm5ZK2ExcaFE0qls2W71zE/6R2TxxrK9w2r6svAFDBQ== +jest-get-type@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" + integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== jest-haste-map@^26.6.2: version "26.6.2" @@ -12929,89 +12966,88 @@ jest-haste-map@^26.6.2: optionalDependencies: fsevents "^2.1.2" -jest-haste-map@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.4.5.tgz#c2921224a59223f91e03ec15703905978ef0cc1a" - integrity sha512-oJm1b5qhhPs78K24EDGifWS0dELYxnoBiDhatT/FThgB9yxqUm5F6li3Pv+Q+apMBmmPNzOBnZ7ZxWMB1Leq1Q== +jest-haste-map@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" + integrity sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" "@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 "^27.4.0" - jest-serializer "^27.4.0" - jest-util "^27.4.2" - jest-worker "^27.4.5" + graceful-fs "^4.2.9" + jest-regex-util "^27.5.1" + jest-serializer "^27.5.1" + jest-util "^27.5.1" + jest-worker "^27.5.1" micromatch "^4.0.4" walker "^1.0.7" optionalDependencies: fsevents "^2.3.2" -jest-jasmine2@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.4.5.tgz#ff79d11561679ff6c89715b0cd6b1e8c0dfbc6dc" - integrity sha512-oUnvwhJDj2LhOiUB1kdnJjkx8C5PwgUZQb9urF77mELH9DGR4e2GqpWQKBOYXWs5+uTN9BGDqRz3Aeg5Wts7aw== +jest-jasmine2@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" + integrity sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ== dependencies: - "@babel/traverse" "^7.1.0" - "@jest/environment" "^27.4.4" - "@jest/source-map" "^27.4.0" - "@jest/test-result" "^27.4.2" - "@jest/types" "^27.4.2" + "@jest/environment" "^27.5.1" + "@jest/source-map" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" - expect "^27.4.2" + expect "^27.5.1" is-generator-fn "^2.0.0" - jest-each "^27.4.2" - jest-matcher-utils "^27.4.2" - jest-message-util "^27.4.2" - jest-runtime "^27.4.5" - jest-snapshot "^27.4.5" - jest-util "^27.4.2" - pretty-format "^27.4.2" + jest-each "^27.5.1" + jest-matcher-utils "^27.5.1" + jest-message-util "^27.5.1" + jest-runtime "^27.5.1" + jest-snapshot "^27.5.1" + jest-util "^27.5.1" + pretty-format "^27.5.1" throat "^6.0.1" -jest-leak-detector@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.4.2.tgz#7fc3120893a7a911c553f3f2bdff9faa4454abbb" - integrity sha512-ml0KvFYZllzPBJWDei3mDzUhyp/M4ubKebX++fPaudpe8OsxUE+m+P6ciVLboQsrzOCWDjE20/eXew9QMx/VGw== +jest-leak-detector@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" + integrity sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ== dependencies: - jest-get-type "^27.4.0" - pretty-format "^27.4.2" + jest-get-type "^27.5.1" + pretty-format "^27.5.1" -jest-matcher-utils@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.4.2.tgz#d17c5038607978a255e0a9a5c32c24e984b6c60b" - integrity sha512-jyP28er3RRtMv+fmYC/PKG8wvAmfGcSNproVTW2Y0P/OY7/hWUOmsPfxN1jOhM+0u2xU984u2yEagGivz9OBGQ== +jest-matcher-utils@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" + integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== dependencies: chalk "^4.0.0" - jest-diff "^27.4.2" - jest-get-type "^27.4.0" - pretty-format "^27.4.2" + jest-diff "^27.5.1" + jest-get-type "^27.5.1" + pretty-format "^27.5.1" -jest-message-util@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.4.2.tgz#07f3f1bf207d69cf798ce830cc57f1a849f99388" - integrity sha512-OMRqRNd9E0DkBLZpFtZkAGYOXl6ZpoMtQJWTAREJKDOFa0M6ptB7L67tp+cszMBkvSgKOhNtQp2Vbcz3ZZKo/w== +jest-message-util@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" + integrity sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" micromatch "^4.0.4" - pretty-format "^27.4.2" + pretty-format "^27.5.1" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.4.2.tgz#184ff197a25491bfe4570c286daa5d62eb760b88" - integrity sha512-PDDPuyhoukk20JrQKeofK12hqtSka7mWH0QQuxSNgrdiPsrnYYLS6wbzu/HDlxZRzji5ylLRULeuI/vmZZDrYA== +jest-mock@^27.5.1: + 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.4.2" + "@jest/types" "^27.5.1" "@types/node" "*" jest-pnp-resolver@^1.2.2: @@ -13024,95 +13060,90 @@ jest-regex-util@^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@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.4.0.tgz#e4c45b52653128843d07ad94aec34393ea14fbca" - integrity sha512-WeCpMpNnqJYMQoOjm1nTtsgbR4XHAk1u00qDoNBQoykM280+/TmgA5Qh5giC1ecy6a5d4hbSsHzpBtu5yvlbEg== +jest-regex-util@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" + integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== -jest-resolve-dependencies@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.4.5.tgz#9398af854bdb12d6a9e5a8a536ee401f889a3ecf" - integrity sha512-elEVvkvRK51y037NshtEkEnukMBWvlPzZHiL847OrIljJ8yIsujD2GXRPqDXC4rEVKbcdsy7W0FxoZb4WmEs7w== +jest-resolve-dependencies@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" + integrity sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg== dependencies: - "@jest/types" "^27.4.2" - jest-regex-util "^27.4.0" - jest-snapshot "^27.4.5" + "@jest/types" "^27.5.1" + jest-regex-util "^27.5.1" + jest-snapshot "^27.5.1" -jest-resolve@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.4.5.tgz#8dc44f5065fb8d58944c20f932cb7b9fe9760cca" - integrity sha512-xU3z1BuOz/hUhVUL+918KqUgK+skqOuUsAi7A+iwoUldK6/+PW+utK8l8cxIWT9AW7IAhGNXjSAh1UYmjULZZw== +jest-resolve@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" + integrity sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" chalk "^4.0.0" - graceful-fs "^4.2.4" - jest-haste-map "^27.4.5" + graceful-fs "^4.2.9" + jest-haste-map "^27.5.1" jest-pnp-resolver "^1.2.2" - jest-util "^27.4.2" - jest-validate "^27.4.2" + jest-util "^27.5.1" + jest-validate "^27.5.1" resolve "^1.20.0" resolve.exports "^1.1.0" slash "^3.0.0" -jest-runner@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.4.5.tgz#daba2ba71c8f34137dc7ac45616add35370a681e" - integrity sha512-/irauncTfmY1WkTaRQGRWcyQLzK1g98GYG/8QvIPviHgO1Fqz1JYeEIsSfF+9mc/UTA6S+IIHFgKyvUrtiBIZg== +jest-runner@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" + integrity sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ== dependencies: - "@jest/console" "^27.4.2" - "@jest/environment" "^27.4.4" - "@jest/test-result" "^27.4.2" - "@jest/transform" "^27.4.5" - "@jest/types" "^27.4.2" + "@jest/console" "^27.5.1" + "@jest/environment" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" chalk "^4.0.0" emittery "^0.8.1" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-docblock "^27.4.0" - jest-environment-jsdom "^27.4.4" - jest-environment-node "^27.4.4" - jest-haste-map "^27.4.5" - jest-leak-detector "^27.4.2" - jest-message-util "^27.4.2" - jest-resolve "^27.4.5" - jest-runtime "^27.4.5" - jest-util "^27.4.2" - jest-worker "^27.4.5" + graceful-fs "^4.2.9" + jest-docblock "^27.5.1" + jest-environment-jsdom "^27.5.1" + jest-environment-node "^27.5.1" + jest-haste-map "^27.5.1" + jest-leak-detector "^27.5.1" + jest-message-util "^27.5.1" + jest-resolve "^27.5.1" + jest-runtime "^27.5.1" + jest-util "^27.5.1" + jest-worker "^27.5.1" source-map-support "^0.5.6" throat "^6.0.1" -jest-runtime@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.4.5.tgz#97703ad2a1799d4f50ab59049bd21a9ceaed2813" - integrity sha512-CIYqwuJQXHQtPd/idgrx4zgJ6iCb6uBjQq1RSAGQrw2S8XifDmoM1Ot8NRd80ooAm+ZNdHVwsktIMGlA1F1FAQ== - dependencies: - "@jest/console" "^27.4.2" - "@jest/environment" "^27.4.4" - "@jest/globals" "^27.4.4" - "@jest/source-map" "^27.4.0" - "@jest/test-result" "^27.4.2" - "@jest/transform" "^27.4.5" - "@jest/types" "^27.4.2" - "@types/yargs" "^16.0.0" +jest-runtime@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" + integrity sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A== + dependencies: + "@jest/environment" "^27.5.1" + "@jest/fake-timers" "^27.5.1" + "@jest/globals" "^27.5.1" + "@jest/source-map" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" chalk "^4.0.0" cjs-module-lexer "^1.0.0" collect-v8-coverage "^1.0.0" execa "^5.0.0" - exit "^0.1.2" glob "^7.1.3" - graceful-fs "^4.2.4" - jest-haste-map "^27.4.5" - jest-message-util "^27.4.2" - jest-mock "^27.4.2" - jest-regex-util "^27.4.0" - jest-resolve "^27.4.5" - jest-snapshot "^27.4.5" - jest-util "^27.4.2" - jest-validate "^27.4.2" + graceful-fs "^4.2.9" + jest-haste-map "^27.5.1" + jest-message-util "^27.5.1" + jest-mock "^27.5.1" + jest-regex-util "^27.5.1" + jest-resolve "^27.5.1" + jest-snapshot "^27.5.1" + jest-util "^27.5.1" slash "^3.0.0" strip-bom "^4.0.0" - yargs "^16.2.0" jest-serializer@^26.6.2: version "26.6.2" @@ -13122,42 +13153,40 @@ jest-serializer@^26.6.2: "@types/node" "*" graceful-fs "^4.2.4" -jest-serializer@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.4.0.tgz#34866586e1cae2388b7d12ffa2c7819edef5958a" - integrity sha512-RDhpcn5f1JYTX2pvJAGDcnsNTnsV9bjYPU8xcV+xPwOXnUPOQwf4ZEuiU6G9H1UztH+OapMgu/ckEVwO87PwnQ== +jest-serializer@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" + integrity sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w== dependencies: "@types/node" "*" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" -jest-snapshot@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.4.5.tgz#2ea909b20aac0fe62504bc161331f730b8a7ecc7" - integrity sha512-eCi/iM1YJFrJWiT9de4+RpWWWBqsHiYxFG9V9o/n0WXs6GpW4lUt4FAHAgFPTLPqCUVzrMQmSmTZSgQzwqR7IQ== +jest-snapshot@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" + integrity sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA== dependencies: "@babel/core" "^7.7.2" "@babel/generator" "^7.7.2" - "@babel/parser" "^7.7.2" "@babel/plugin-syntax-typescript" "^7.7.2" "@babel/traverse" "^7.7.2" "@babel/types" "^7.0.0" - "@jest/transform" "^27.4.5" - "@jest/types" "^27.4.2" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" "@types/babel__traverse" "^7.0.4" "@types/prettier" "^2.1.5" babel-preset-current-node-syntax "^1.0.0" chalk "^4.0.0" - expect "^27.4.2" - graceful-fs "^4.2.4" - jest-diff "^27.4.2" - jest-get-type "^27.4.0" - jest-haste-map "^27.4.5" - jest-matcher-utils "^27.4.2" - jest-message-util "^27.4.2" - jest-resolve "^27.4.5" - jest-util "^27.4.2" + expect "^27.5.1" + graceful-fs "^4.2.9" + jest-diff "^27.5.1" + jest-get-type "^27.5.1" + jest-haste-map "^27.5.1" + jest-matcher-utils "^27.5.1" + jest-message-util "^27.5.1" + jest-util "^27.5.1" natural-compare "^1.4.0" - pretty-format "^27.4.2" + pretty-format "^27.5.1" semver "^7.3.2" jest-util@^26.6.2: @@ -13172,41 +13201,41 @@ jest-util@^26.6.2: is-ci "^2.0.0" micromatch "^4.0.2" -jest-util@^27.0.0, jest-util@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.4.2.tgz#ed95b05b1adfd761e2cda47e0144c6a58e05a621" - integrity sha512-YuxxpXU6nlMan9qyLuxHaMMOzXAl5aGZWCSzben5DhLHemYQxCc4YK+4L3ZrCutT8GPQ+ui9k5D8rUJoDioMnA== +jest-util@^27.0.0, jest-util@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" + integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" "@types/node" "*" chalk "^4.0.0" ci-info "^3.2.0" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" picomatch "^2.2.3" -jest-validate@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.4.2.tgz#eecfcc1b1c9429aa007da08a2bae4e32a81bbbc3" - integrity sha512-hWYsSUej+Fs8ZhOm5vhWzwSLmVaPAxRy+Mr+z5MzeaHm9AxUpXdoVMEW4R86y5gOobVfBsMFLk4Rb+QkiEpx1A== +jest-validate@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" + integrity sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" camelcase "^6.2.0" chalk "^4.0.0" - jest-get-type "^27.4.0" + jest-get-type "^27.5.1" leven "^3.1.0" - pretty-format "^27.4.2" + pretty-format "^27.5.1" -jest-watcher@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.4.2.tgz#c9037edfd80354c9fe90de4b6f8b6e2b8e736744" - integrity sha512-NJvMVyyBeXfDezhWzUOCOYZrUmkSCiatpjpm+nFUid74OZEHk6aMLrZAukIiFDwdbqp6mTM6Ui1w4oc+8EobQg== +jest-watcher@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" + integrity sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw== dependencies: - "@jest/test-result" "^27.4.2" - "@jest/types" "^27.4.2" + "@jest/test-result" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" - jest-util "^27.4.2" + jest-util "^27.5.1" string-length "^4.0.1" jest-worker@^26.3.0, jest-worker@^26.6.2: @@ -13218,39 +13247,33 @@ jest-worker@^26.3.0, jest-worker@^26.6.2: merge-stream "^2.0.0" supports-color "^7.0.0" -jest-worker@^27.3.1, jest-worker@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.4.5.tgz#d696e3e46ae0f24cff3fa7195ffba22889262242" - integrity sha512-f2s8kEdy15cv9r7q4KkzGXvlY0JTcmCbMHZBfSQDwW77REr45IDWwd0lksDFeVHH2jJ5pqb90T77XscrjeGzzg== +jest-worker@^27.4.5, jest-worker@^27.5.1: + 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@^27.0.1: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest/-/jest-27.4.5.tgz#66e45acba44137fac26be9d3cc5bb031e136dc0f" - integrity sha512-uT5MiVN3Jppt314kidCk47MYIRilJjA/l2mxwiuzzxGUeJIvA8/pDaJOAX5KWvjAo7SCydcW0/4WEtgbLMiJkg== + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" + integrity sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ== dependencies: - "@jest/core" "^27.4.5" + "@jest/core" "^27.5.1" import-local "^3.0.2" - jest-cli "^27.4.5" + jest-cli "^27.5.1" -jimp@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/jimp/-/jimp-0.14.0.tgz#fde55f69bdb918c1b01ac633d89a25853af85625" - integrity sha512-8BXU+J8+SPmwwyq9ELihpSV4dWPTiOKBWCEgtkbnxxAVMjXdf3yGmyaLSshBfXc8sP/JQ9OZj5R8nZzz2wPXgA== - dependencies: - "@babel/runtime" "^7.7.2" - "@jimp/custom" "^0.14.0" - "@jimp/plugins" "^0.14.0" - "@jimp/types" "^0.14.0" - regenerator-runtime "^0.13.3" +jimp-compact@^0.16.1-2: + version "0.16.1-2" + resolved "https://registry.yarnpkg.com/jimp-compact/-/jimp-compact-0.16.1-2.tgz#a82ff9a5a81f15a4b61b5e2e50fae6a43305e5a9" + integrity sha512-b2A3rRT1TITzqmaO70U2/uunCh43BQVq7BfRwGPkD5xj8/WZsR3sPTy9DENt+dNZGsel3zBEm1UtYegUxjZW7A== joi@^17.4.2: - version "17.5.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.5.0.tgz#7e66d0004b5045d971cf416a55fb61d33ac6e011" - integrity sha512-R7hR50COp7StzLnDi4ywOXHrBrgNXuUUfJWIR5lPY5Bm/pOD3jZaTwpluUXVLRWcoWZxkrHBBJ5hLxgnlehbdw== + version "17.6.4" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.6.4.tgz#4d9536a059ef0762c718ae98673016b3ec151abd" + integrity sha512-tPzkTJHZQjSFCc842QpdVpOZ9LI2txApboNUbW70qgnRB14Lzl+oWQOPdF2N4yqyiY14wBGe8lc7f/2hZxbGmw== dependencies: "@hapi/hoek" "^9.0.0" "@hapi/topo" "^5.0.0" @@ -13263,11 +13286,6 @@ joycon@^3.0.1: resolved "https://registry.yarnpkg.com/joycon/-/joycon-3.1.1.tgz#bce8596d6ae808f8b68168f5fc69280996894f03" integrity sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw== -jpeg-js@^0.4.0: - version "0.4.4" - resolved "https://registry.yarnpkg.com/jpeg-js/-/jpeg-js-0.4.4.tgz#a9f1c6f1f9f0fa80cdb3484ed9635054d28936aa" - integrity sha512-WZzeDOEtTOBK4Mdsar0IqEU5sMr3vSV2RqkAIzUEV2BHnUfKGyswWFPFwK5EeDo93K3FohSHbLAjj0s1Wzd+dg== - js-levenshtein-esm@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/js-levenshtein-esm/-/js-levenshtein-esm-1.2.0.tgz#96532c34e0c90df198c9419963c64ca3cf43ae92" @@ -13281,7 +13299,7 @@ js-sdsl@^4.1.4: 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 sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8= + integrity sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg== "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" @@ -13344,24 +13362,24 @@ jsesc@^2.5.1: jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= + integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" - integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= + integrity sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ== 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-fixer@^1.5.1: - version "1.6.13" - resolved "https://registry.yarnpkg.com/json-fixer/-/json-fixer-1.6.13.tgz#27d2f0e837aec54afbc9ec1cd8c1dd965bf534c9" - integrity sha512-DKQ71M+0uwAG3QsUkeVgh6XREw/OkpnTfHfM+sdmxRjHvYZ8PlcMVF4ibsHQ1ckR63NROs68qUr1I0u6yPVePQ== +json-fixer@^1.6.8: + version "1.6.15" + resolved "https://registry.yarnpkg.com/json-fixer/-/json-fixer-1.6.15.tgz#f1f03b6771fcb383695d458c53e50b10999fba7f" + integrity sha512-TuDuZ5KrgyjoCIppdPXBMqiGfota55+odM+j2cQ5rt/XKyKmqGB3Whz1F8SN8+60yYGy/Nu5lbRZ+rx8kBIvBw== dependencies: - "@babel/runtime" "^7.14.6" + "@babel/runtime" "^7.18.9" chalk "^4.1.2" pegjs "^0.10.0" @@ -13388,14 +13406,12 @@ json-schema-traverse@^1.0.0: json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= + integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== -json5@2.x, json5@^2.1.2, json5@^2.1.3, json5@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" - integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== - dependencies: - minimist "^1.2.5" +json5@2.x, json5@^2.1.2, json5@^2.1.3, json5@^2.2.0, json5@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" + integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== json5@^1.0.1: version "1.0.1" @@ -13405,21 +13421,21 @@ json5@^1.0.1: minimist "^1.2.0" jsonc-parser@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.0.0.tgz#abdd785701c7e7eaca8a9ec8cf070ca51a745a22" - integrity sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA== + version "3.2.0" + resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" + integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== jsonfile@^2.1.0: version "2.4.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" - integrity sha1-NzaitCi4e72gzIO1P6PWM6NcKug= + integrity sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw== optionalDependencies: graceful-fs "^4.1.6" jsonfile@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg== optionalDependencies: graceful-fs "^4.1.6" @@ -13435,15 +13451,15 @@ jsonfile@^6.0.1: jsonparse@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" - integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= + integrity sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg== -"jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz#720b97bfe7d901b927d87c3773637ae8ea48781b" - integrity sha512-uP5vu8xfy2F9A6LGC22KO7e2/vGTS1MhP+18f++ZNlf0Ohaxbc9nIEwHAsejlJKyzfZzU5UIhe5ItYkitcZnZA== +"jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.3.2: + version "3.3.3" + resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz#76b3e6e6cece5c69d49a5792c3d01bd1a0cdc7ea" + integrity sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw== dependencies: - array-includes "^3.1.3" - object.assign "^4.1.2" + array-includes "^3.1.5" + object.assign "^4.1.3" junk@^3.1.0: version "3.1.0" @@ -13462,6 +13478,13 @@ keygrip@~1.1.0: dependencies: tsscmp "1.0.6" +keyv@*, keyv@^4.0.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.0.tgz#dbce9ade79610b6e641a9a65f2f6499ba06b9bc6" + integrity sha512-2YvuMsA+jnFGtBareKqgANOEKe1mk3HKiXu2fRmAfyxG0MJAywNhi5ttWA3PMjl4NmpyjZNbFifR2vNjW1znfA== + dependencies: + json-buffer "3.0.1" + keyv@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" @@ -13469,24 +13492,17 @@ keyv@^3.0.0: dependencies: json-buffer "3.0.0" -keyv@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.0.4.tgz#f040b236ea2b06ed15ed86fbef8407e1a1c8e376" - integrity sha512-vqNHbAc8BBsxk+7QBYLW0Y219rWcClspR6WSeoHYKG5mnsSoOH+BL1pWq02DDCVdvvuUny5rkBlzMRzoqc+GIg== - 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 sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= + 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 sha1-IIE989cSkosgc3hpGkUGb65y3Vc= + integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== dependencies: is-buffer "^1.1.5" @@ -13500,27 +13516,25 @@ kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== -klaw@^1.0.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" - integrity sha1-QIhDO0azsbolnXh4XY6W9zugJDk= - optionalDependencies: - graceful-fs "^4.1.9" - kleur@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== +kleur@^4.1.4: + version "4.1.5" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780" + integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== + klona@^2.0.4, klona@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.5.tgz#d166574d90076395d9963aa7a928fabb8d76afbc" integrity sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ== -known-css-properties@^0.24.0: - version "0.24.0" - resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.24.0.tgz#19aefd85003ae5698a5560d2b55135bf5432155c" - integrity sha512-RTSoaUAfLvpR357vWzAz/50Q/BmHfmE6ETSWfutT0AJiw10e6CmcdYRQJlLRd95B53D0Y2aD1jSxD3V3ySF+PA== +known-css-properties@^0.25.0: + version "0.25.0" + resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.25.0.tgz#6ebc4d4b412f602e5cfbeb4086bd544e34c0a776" + integrity sha512-b0/9J1O9Jcyik1GC6KC42hJ41jKwdO/Mq8Mdo5sYN+IuRTXs2YFHZC3kZSx6ueusqa95x3wLYe/ytKjbAfGixA== koa-compose@^4.1.0: version "4.1.0" @@ -13589,14 +13603,14 @@ koa@^2.13.0: vary "^1.1.2" language-subtag-registry@~0.3.2: - version "0.3.21" - resolved "https://registry.yarnpkg.com/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz#04ac218bea46f04cb039084602c6da9e788dd45a" - integrity sha512-L0IqwlIXjilBVVYKFT37X9Ih11Um5NEl9cbJIuU/SwP/zEEAbBPOnEeeuxVMf45ydWQRDQN3Nqc96OgbH1K+Pg== + version "0.3.22" + resolved "https://registry.yarnpkg.com/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz#2e1500861b2e457eba7e7ae86877cbd08fa1fd1d" + integrity sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w== language-tags@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/language-tags/-/language-tags-1.0.5.tgz#d321dbc4da30ba8bf3024e040fa5c14661f9193a" - integrity sha1-0yHbxNowuovzAk4ED6XBRmH5GTo= + integrity sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ== dependencies: language-subtag-registry "~0.3.2" @@ -13610,7 +13624,7 @@ latest-version@5.1.0, latest-version@^5.0.0, latest-version@^5.1.0: lazy-cache@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-2.0.2.tgz#b9190a4f913354694840859f8a8f7084d8822264" - integrity sha1-uRkKT5EzVGlIQIWfio9whNiCImQ= + integrity sha512-7vp2Acd2+Kz4XkzxGxaB1FWOi8KjWIWsgdfD5MCb86DWvlLqhRPM+d6Pro3iNEL5VT9mstz5hKAlcd+QR6H3aA== dependencies: set-getter "^0.1.0" @@ -13635,7 +13649,7 @@ lazystream@^1.0.0: lead@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lead/-/lead-1.0.0.tgz#6f14f99a37be3a9dd784f5495690e5903466ee42" - integrity sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI= + integrity sha512-IpSVCk9AYvLHo5ctcIXxOBpMWUe+4TKN3VPWAKUbJikkmsGp0VrSM8IttVc32D6J4WUsiPE6aEFRNmIoF/gdow== dependencies: flush-write-stream "^1.0.2" @@ -13655,7 +13669,7 @@ levn@^0.4.1: levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= + integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA== dependencies: prelude-ls "~1.1.2" type-check "~0.3.2" @@ -13668,10 +13682,15 @@ lighthouse-logger@^1.0.0: debug "^2.6.9" marky "^1.2.2" -lilconfig@2.0.4, lilconfig@^2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.4.tgz#f4507d043d7058b380b6a8f5cb7bcd4b34cee082" - integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA== +lilconfig@2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.5.tgz#19e57fd06ccc3848fd1891655b5a447092225b25" + integrity sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg== + +lilconfig@^2.0.3, lilconfig@^2.0.4: + version "2.0.6" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.6.tgz#32a384558bd58af3d4c6e077dd1ad1d397bc69d4" + integrity sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg== lines-and-columns@^1.1.6: version "1.2.4" @@ -13679,45 +13698,46 @@ lines-and-columns@^1.1.6: integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== lint-staged@^12.0.2: - version "12.1.4" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.1.4.tgz#a92ec8509f13018caaafade61d515c2d5873316e" - integrity sha512-RgDz9nsFsE0/5eL9Vat0AvCuk0+j5mEuzBIVfrRH5FRtt5wibYe8zTjZs2nuqLFrLAGQGYnj8+HJxolcj08i/A== + version "12.5.0" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.5.0.tgz#d6925747480ae0e380d13988522f9dd8ef9126e3" + integrity sha512-BKLUjWDsKquV/JuIcoQW4MSAI3ggwEImF1+sB4zaKvyVx1wBk3FsG7UK9bpnmBTN1pm7EH2BBcMwINJzCRv12g== dependencies: cli-truncate "^3.1.0" colorette "^2.0.16" - commander "^8.3.0" - debug "^4.3.3" + commander "^9.3.0" + debug "^4.3.4" execa "^5.1.1" - lilconfig "2.0.4" - listr2 "^3.13.5" - micromatch "^4.0.4" + lilconfig "2.0.5" + listr2 "^4.0.5" + micromatch "^4.0.5" normalize-path "^3.0.0" - object-inspect "^1.11.1" + object-inspect "^1.12.2" + pidtree "^0.5.0" string-argv "^0.3.1" - supports-color "^9.2.1" + supports-color "^9.2.2" yaml "^1.10.2" list-item@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/list-item/-/list-item-1.1.1.tgz#0c65d00e287cb663ccb3cb3849a77e89ec268a56" - integrity sha1-DGXQDih8tmPMs8s4Sad+iewmilY= + integrity sha512-S3D0WZ4J6hyM8o5SNKWaMYB1ALSacPZ2nHGEuCjmHZ+dc03gFeNZoNDcqfcnO4vDhTZmNrqrpYZCdXsRh22bzw== dependencies: expand-range "^1.8.1" extend-shallow "^2.0.1" is-number "^2.1.0" repeat-string "^1.5.2" -listr2@^3.13.5: - version "3.13.5" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.13.5.tgz#105a813f2eb2329c4aae27373a281d610ee4985f" - integrity sha512-3n8heFQDSk+NcwBn3CgxEibZGaRzx+pC64n3YjpMD1qguV4nWus3Al+Oo3KooqFKTQEJ1v7MmnbnyyNspgx3NA== +listr2@^4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-4.0.5.tgz#9dcc50221583e8b4c71c43f9c7dfd0ef546b75d5" + integrity sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA== dependencies: cli-truncate "^2.1.0" colorette "^2.0.16" log-update "^4.0.0" p-map "^4.0.0" rfdc "^1.3.0" - rxjs "^7.4.0" + rxjs "^7.5.5" through "^2.3.8" wrap-ansi "^7.0.0" @@ -13735,108 +13755,70 @@ lit-analyzer@1.2.1, lit-analyzer@^1.2.1: vscode-html-languageservice "3.1.0" web-component-analyzer "~1.1.1" -lit-element@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/lit-element/-/lit-element-3.0.2.tgz#6422b68ba166a32695f524d6f3eb41712610bf50" - integrity sha512-9vTJ47D2DSE4Jwhle7aMzEwO2ZcOPRikqfT3CVG7Qol2c9/I4KZwinZNW5Xv8hNm+G/enSSfIwqQhIXi6ioAUg== +lit-element@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/lit-element/-/lit-element-3.2.2.tgz#d148ab6bf4c53a33f707a5168e087725499e5f2b" + integrity sha512-6ZgxBR9KNroqKb6+htkyBwD90XGRiqKDHVrW/Eh0EZ+l+iC+u+v+w3/BA5NGi4nizAVHGYvQBHUDuSmLjPp7NQ== dependencies: - "@lit/reactive-element" "^1.0.0" - lit-html "^2.0.0" + "@lit/reactive-element" "^1.3.0" + lit-html "^2.2.0" -lit-html@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/lit-html/-/lit-html-2.0.2.tgz#6a17caac4135757710c5fb3e4becc622c476e431" - integrity sha512-dON7Zg8btb14/fWohQLQBdSgkoiQA4mIUy87evmyJHtxRq7zS6LlC32bT5EPWiof5PUQaDpF45v2OlrxHA5Clg== +lit-html@^2.0.0, lit-html@^2.2.0, lit-html@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/lit-html/-/lit-html-2.4.0.tgz#b510430f39a56ec959167ed1187241a4e3ab1574" + integrity sha512-G6qXu4JNUpY6aaF2VMfaszhO9hlWw0hOTRFDmuMheg/nDYGB+2RztUSOyrzALAbr8Nh0Y7qjhYkReh3rPnplVg== dependencies: "@types/trusted-types" "^2.0.2" lit@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/lit/-/lit-2.0.2.tgz#5e6f422924e0732258629fb379556b6d23f7179c" - integrity sha512-hKA/1YaSB+P+DvKWuR2q1Xzy/iayhNrJ3aveD0OQ9CKn6wUjsdnF/7LavDOJsKP/K5jzW/kXsuduPgRvTFrFJw== + version "2.4.0" + resolved "https://registry.yarnpkg.com/lit/-/lit-2.4.0.tgz#e33a0f463e17408f6e7f71464e6a266e60a5bb77" + integrity sha512-fdgzxEtLrZFQU/BqTtxFQCLwlZd9bdat+ltzSFjvWkZrs7eBmeX0L5MHUMb3kYIkuS8Xlfnii/iI5klirF8/Xg== dependencies: - "@lit/reactive-element" "^1.0.0" - lit-element "^3.0.0" - lit-html "^2.0.0" + "@lit/reactive-element" "^1.4.0" + lit-element "^3.2.0" + lit-html "^2.4.0" -lmdb-darwin-arm64@2.3.10: - version "2.3.10" - resolved "https://registry.yarnpkg.com/lmdb-darwin-arm64/-/lmdb-darwin-arm64-2.3.10.tgz#4e20f75770eeedc60af3d4630975fd105a89ffe8" - integrity sha512-LVXbH2MYu7/ZuQ8+P9rv+SwNyBKltxo7vHAGJS94HWyfwnCbKEYER9PImBvNBwzvgtaYk6x0RMX3oor6e6KdDQ== - -lmdb-darwin-x64@2.3.10: - version "2.3.10" - resolved "https://registry.yarnpkg.com/lmdb-darwin-x64/-/lmdb-darwin-x64-2.3.10.tgz#e53637a6735488eaa15feb7c0e9da142015b9476" - integrity sha512-gAc/1b/FZOb9yVOT+o0huA+hdW82oxLo5r22dFTLoRUFG1JMzxdTjmnW6ONVOHdqC9a5bt3vBCEY3jmXNqV26A== - -lmdb-linux-arm64@2.3.10: - version "2.3.10" - resolved "https://registry.yarnpkg.com/lmdb-linux-arm64/-/lmdb-linux-arm64-2.3.10.tgz#ac7db8bdfe0e9dbf2be1cc3362d6f2b79e2a9722" - integrity sha512-Ihr8mdICTK3jA4GXHxrXGK2oekn0mY6zuDSXQDNtyRSH19j3D2Y04A7SEI9S0EP/t5sjKSudYgZbiHDxRCsI5A== - -lmdb-linux-arm@2.3.10: - version "2.3.10" - resolved "https://registry.yarnpkg.com/lmdb-linux-arm/-/lmdb-linux-arm-2.3.10.tgz#74235418bbe7bf41e8ea5c9d52365c4ff5ca4b49" - integrity sha512-Rb8+4JjsThuEcJ7GLLwFkCFnoiwv/3hAAbELWITz70buQFF+dCZvCWWgEgmDTxwn5r+wIkdUjmFv4dqqiKQFmQ== - -lmdb-linux-x64@2.3.10: - version "2.3.10" - resolved "https://registry.yarnpkg.com/lmdb-linux-x64/-/lmdb-linux-x64-2.3.10.tgz#d790b95061d03c5c99a57b3ad5126f7723c60a2f" - integrity sha512-E3l3pDiCA9uvnLf+t3qkmBGRO01dp1EHD0x0g0iRnfpAhV7wYbayJGfG93BUt22Tj3fnq4HDo4dQ6ZWaDI1nuw== - -lmdb-store@^1.6.11: - version "1.6.14" - resolved "https://registry.yarnpkg.com/lmdb-store/-/lmdb-store-1.6.14.tgz#8aa5f36fb04195f8639a3b01b32f6696867f2bc9" - integrity sha512-4woZfvfgolMEngjoMJrwePjdLotr3QKGJsDWURlJmKBed5JtE00IfAKo7ryPowl4ksGcs21pcdLkwrPnKomIuA== +lmdb@2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/lmdb/-/lmdb-2.5.2.tgz#37e28a9fb43405f4dc48c44cec0e13a14c4a6ff1" + integrity sha512-V5V5Xa2Hp9i2XsbDALkBTeHXnBXh/lEmk9p22zdr7jtuOIY9TGhjK6vAvTpOOx9IKU4hJkRWZxn/HsvR1ELLtA== dependencies: - msgpackr "^1.5.0" - nan "^2.14.2" - node-gyp-build "^4.2.3" - ordered-binary "^1.0.0" - weak-lru-cache "^1.0.0" - -lmdb-win32-x64@2.3.10: - version "2.3.10" - resolved "https://registry.yarnpkg.com/lmdb-win32-x64/-/lmdb-win32-x64-2.3.10.tgz#bff73d12d94084343c569b16069d8d38626eb2d6" - integrity sha512-gspWk34tDANhjn+brdqZstJMptGiwj4qFNVg0Zey9ds+BUlif+Lgf5szrfOVzZ8gVRkk1Lgbz7i78+V7YK7SCA== - -lmdb@2.3.10: - version "2.3.10" - resolved "https://registry.yarnpkg.com/lmdb/-/lmdb-2.3.10.tgz#640fc60815846babcbe088d7f8ed0a51da857f6a" - integrity sha512-GtH+nStn9V59CfYeQ5ddx6YTfuFCmu86UJojIjJAweG+/Fm0PDknuk3ovgYDtY/foMeMdZa8/P7oSljW/d5UPw== + msgpackr "^1.5.4" + node-addon-api "^4.3.0" + node-gyp-build-optional-packages "5.0.3" + ordered-binary "^1.2.4" + weak-lru-cache "^1.2.2" + optionalDependencies: + "@lmdb/lmdb-darwin-arm64" "2.5.2" + "@lmdb/lmdb-darwin-x64" "2.5.2" + "@lmdb/lmdb-linux-arm" "2.5.2" + "@lmdb/lmdb-linux-arm64" "2.5.2" + "@lmdb/lmdb-linux-x64" "2.5.2" + "@lmdb/lmdb-win32-x64" "2.5.2" + +lmdb@2.5.3: + version "2.5.3" + resolved "https://registry.yarnpkg.com/lmdb/-/lmdb-2.5.3.tgz#cac845a8576ef0fd2dcc279faab6fdb383f07463" + integrity sha512-iBA0cb13CobBSoGJLfZgnrykLlfJipDAnvtf+YwIqqzBEsTeQYsXrHaSBkaHd5wCWeabwrNvhjZoFMUrlo+eLw== dependencies: msgpackr "^1.5.4" - nan "^2.14.2" node-addon-api "^4.3.0" - node-gyp-build-optional-packages "^4.3.2" + node-gyp-build-optional-packages "5.0.3" ordered-binary "^1.2.4" weak-lru-cache "^1.2.2" optionalDependencies: - lmdb-darwin-arm64 "2.3.10" - lmdb-darwin-x64 "2.3.10" - lmdb-linux-arm "2.3.10" - lmdb-linux-arm64 "2.3.10" - lmdb-linux-x64 "2.3.10" - lmdb-win32-x64 "2.3.10" - -load-bmfont@^1.3.1, load-bmfont@^1.4.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/load-bmfont/-/load-bmfont-1.4.1.tgz#c0f5f4711a1e2ccff725a7b6078087ccfcddd3e9" - integrity sha512-8UyQoYmdRDy81Brz6aLAUhfZLwr5zV0L3taTQ4hju7m6biuwiWiJXjPhBJxbUQJA8PrkvJ/7Enqmwk2sM14soA== - dependencies: - buffer-equal "0.0.1" - mime "^1.3.4" - parse-bmfont-ascii "^1.0.3" - parse-bmfont-binary "^1.0.5" - parse-bmfont-xml "^1.1.4" - phin "^2.9.1" - xhr "^2.0.1" - xtend "^4.0.0" + "@lmdb/lmdb-darwin-arm64" "2.5.3" + "@lmdb/lmdb-darwin-x64" "2.5.3" + "@lmdb/lmdb-linux-arm" "2.5.3" + "@lmdb/lmdb-linux-arm64" "2.5.3" + "@lmdb/lmdb-linux-x64" "2.5.3" + "@lmdb/lmdb-win32-x64" "2.5.3" 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 sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= + integrity sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A== dependencies: graceful-fs "^4.1.2" parse-json "^2.2.0" @@ -13855,9 +13837,9 @@ load-yaml-file@^0.2.0: strip-bom "^3.0.0" loader-runner@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" - integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw== + 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.2.3" @@ -13868,15 +13850,6 @@ loader-utils@1.2.3: emojis-list "^2.0.0" json5 "^1.0.1" -loader-utils@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0" - integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ== - dependencies: - big.js "^5.2.2" - emojis-list "^3.0.0" - json5 "^2.1.2" - loader-utils@^1.2.3, loader-utils@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" @@ -13887,21 +13860,18 @@ loader-utils@^1.2.3, loader-utils@^1.4.0: json5 "^1.0.1" loader-utils@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.2.tgz#d6e3b4fb81870721ae4e0868ab11dd638368c129" - integrity sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A== + version "2.0.3" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.3.tgz#d4b15b8504c63d1fc3f2ade52d41bc8459d6ede1" + integrity sha512-THWqIsn8QRnvLl0shHYVBN9syumU8pYWEHPTmkiVGd+7K5eFNVSY6AJhRvgGF70gg1Dz+l/k8WicvFCxdEs60A== 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" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" +loader-utils@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-3.2.0.tgz#bcecc51a7898bee7473d4bc6b845b23af8304d4f" + integrity sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ== locate-path@^3.0.0: version "3.0.0" @@ -13925,15 +13895,15 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" -lock@^1.0.0, lock@^1.1.0: +lock@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/lock/-/lock-1.1.0.tgz#53157499d1653b136ca66451071fca615703fa55" - integrity sha1-UxV0mdFlOxNspmRRBx/KYVcD+lU= + integrity sha512-NZQIJJL5Rb9lMJ0Yl1JoVr9GSdo4HTPsUEWsSFzB8dE8DSoiLCVavWZPi7Rnlv/o73u6I24S/XYc/NmG4l8EKA== lodash._basebind@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash._basebind/-/lodash._basebind-2.4.1.tgz#e940b9ebdd27c327e0a8dab1b55916c5341e9575" - integrity sha1-6UC5690nwyfgqNqxtVkWxTQelXU= + integrity sha512-VGHm6DH+1UiuafQdE/DNMqxOcSyhRu0xO9+jPDq7xITRn5YOorGrHVQmavMVXCYmTm80YRTZZCn/jTW7MokwLg== dependencies: lodash._basecreate "~2.4.1" lodash._setbinddata "~2.4.1" @@ -13943,7 +13913,7 @@ lodash._basebind@~2.4.1: lodash._basecreate@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash._basecreate/-/lodash._basecreate-2.4.1.tgz#f8e6f5b578a9e34e541179b56b8eeebf4a287e08" - integrity sha1-+Ob1tXip405UEXm1a47uv0oofgg= + integrity sha512-8JJ3FnMPm54t3BwPLk8q8mPyQKQXm/rt9df+awr4NGtyJrtcCXM3Of1I86S6jVy1b4yAyFBb8wbKPEauuqzRmQ== dependencies: lodash._isnative "~2.4.1" lodash.isobject "~2.4.1" @@ -13952,7 +13922,7 @@ lodash._basecreate@~2.4.1: lodash._basecreatecallback@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash._basecreatecallback/-/lodash._basecreatecallback-2.4.1.tgz#7d0b267649cb29e7a139d0103b7c11fae84e4851" - integrity sha1-fQsmdknLKeehOdAQO3wR+uhOSFE= + integrity sha512-SLczhg860fGW7AKlYcuOFstDtJuQhaANlJ4Y/jrOoRxhmVtK41vbJDH3OefVRSRkSCQo4HI82QVkAVsoGa5gSw== dependencies: lodash._setbinddata "~2.4.1" lodash.bind "~2.4.1" @@ -13962,7 +13932,7 @@ lodash._basecreatecallback@~2.4.1: lodash._basecreatewrapper@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash._basecreatewrapper/-/lodash._basecreatewrapper-2.4.1.tgz#4d31f2e7de7e134fbf2803762b8150b32519666f" - integrity sha1-TTHy595+E0+/KAN2K4FQsyUZZm8= + integrity sha512-x2ja1fa/qmzbizuXgVM4QAP9svtMbdxjG8Anl9bCeDAwLOVQ1vLrA0hLb/NkpbGi9evjtkl0aWLTEoOlUdBPQA== dependencies: lodash._basecreate "~2.4.1" lodash._setbinddata "~2.4.1" @@ -13972,7 +13942,7 @@ lodash._basecreatewrapper@~2.4.1: lodash._createwrapper@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash._createwrapper/-/lodash._createwrapper-2.4.1.tgz#51d6957973da4ed556e37290d8c1a18c53de1607" - integrity sha1-UdaVeXPaTtVW43KQ2MGhjFPeFgc= + integrity sha512-5TCfLt1haQpsa7bgLYRKNNE4yqhO4ZxIayN1btQmazMchO6Q8JYFRMqbJ3W+uNmMm4R0Jw7KGkZX5YfDDnywuw== dependencies: lodash._basebind "~2.4.1" lodash._basecreatewrapper "~2.4.1" @@ -13982,22 +13952,22 @@ lodash._createwrapper@~2.4.1: lodash._isnative@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash._isnative/-/lodash._isnative-2.4.1.tgz#3ea6404b784a7be836c7b57580e1cdf79b14832c" - integrity sha1-PqZAS3hKe+g2x7V1gOHN95sUgyw= + integrity sha512-BOlKGKNHhCHswGOWtmVb5zBygyxN7EmTuzVOSQI6QSoGhG+kvv71gICFS1TBpnqvT1n53txK8CDK3u5D2/GZxQ== lodash._objecttypes@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash._objecttypes/-/lodash._objecttypes-2.4.1.tgz#7c0b7f69d98a1f76529f890b0cdb1b4dfec11c11" - integrity sha1-fAt/admKH3ZSn4kLDNsbTf7BHBE= + integrity sha512-XpqGh1e7hhkOzftBfWE7zt+Yn9mVHFkDhicVttvKLsoCMLVVL+xTQjfjB4X4vtznauxv0QZ5ZAeqjvat0dh62Q== lodash._reinterpolate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= + integrity sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA== lodash._setbinddata@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash._setbinddata/-/lodash._setbinddata-2.4.1.tgz#f7c200cd1b92ef236b399eecf73c648d17aa94d2" - integrity sha1-98IAzRuS7yNrOZ7s9zxkjReqlNI= + integrity sha512-Vx0XKzpg2DFbQw4wrp1xSWd2sfl3W/BG6bucSRZmftS1AzbWRemCmBQDxyQTNhlLNec428PXkuuja+VNBZgu2A== dependencies: lodash._isnative "~2.4.1" lodash.noop "~2.4.1" @@ -14005,19 +13975,19 @@ lodash._setbinddata@~2.4.1: lodash._shimkeys@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash._shimkeys/-/lodash._shimkeys-2.4.1.tgz#6e9cc9666ff081f0b5a6c978b83e242e6949d203" - integrity sha1-bpzJZm/wgfC1psl4uD4kLmlJ0gM= + integrity sha512-lBrglYxLD/6KAJ8IEa5Lg+YHgNAL7FyKqXg4XOUI+Du/vtniLs1ZqS+yHNKPkK54waAgkdUnDOYaWf+rv4B+AA== dependencies: lodash._objecttypes "~2.4.1" lodash._slice@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash._slice/-/lodash._slice-2.4.1.tgz#745cf41a53597b18f688898544405efa2b06d90f" - integrity sha1-dFz0GlNZexj2iImFREBe+isG2Q8= + integrity sha512-+odPJa4PE2UgYnQgJgkLs0UD03QU78R2ivhrFnG9GdtYOZdE6ObxOj7KiUEUlqOOgatFT+ZqSypFjDSduTigKg== lodash.assign@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-2.4.1.tgz#84c39596dd71181a97b0652913a7c9675e49b1aa" - integrity sha1-hMOVlt1xGBqXsGUpE6fJZ15Jsao= + integrity sha512-AqQ4AJz5buSx9ELXWt5dONwJyVPd4NTADMKhoVYWCugjoVf172/LpvVhwmSJn4g8/Dc0S8hxTe8rt5Dob3X9KQ== dependencies: lodash._basecreatecallback "~2.4.1" lodash._objecttypes "~2.4.1" @@ -14026,17 +13996,17 @@ lodash.assign@^2.4.1: lodash.assignin@^4.0.9: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz#ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2" - integrity sha1-uo31+4QesKPoBEIysOJjqNxqKKI= + integrity sha512-yX/rx6d/UTVh7sSVWVSIMjfnz95evAgDFdb1ZozC35I9mSFCkmzptOzevxjgbQUsc78NR44LVHWjsoMQXy9FDg== lodash.bind@^4.1.4: version "4.2.1" resolved "https://registry.yarnpkg.com/lodash.bind/-/lodash.bind-4.2.1.tgz#7ae3017e939622ac31b7d7d7dcb1b34db1690d35" - integrity sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU= + integrity sha512-lxdsn7xxlCymgLYo1gGvVrfHmkjDiyqVv62FAeF2i5ta72BipE1SLxw8hPEPLhD4/247Ijw07UQH7Hq/chT5LA== lodash.bind@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash.bind/-/lodash.bind-2.4.1.tgz#5d19fa005c8c4d236faf4742c7b7a1fcabe29267" - integrity sha1-XRn6AFyMTSNvr0dCx7eh/Kvikmc= + integrity sha512-hn2VWYZ+N9aYncRad4jORvlGgpFrn+axnPIWRvFxjk6CWcZH5b5alI8EymYsHITI23Z9wrW/+ORq+azrVFpOfw== dependencies: lodash._createwrapper "~2.4.1" lodash._slice "~2.4.1" @@ -14044,94 +14014,84 @@ lodash.bind@~2.4.1: lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" - integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= + integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA== lodash.clonedeep@4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" - integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= + integrity sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ== lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= + integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== lodash.deburr@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/lodash.deburr/-/lodash.deburr-4.1.0.tgz#ddb1bbb3ef07458c0177ba07de14422cb033ff9b" - integrity sha1-3bG7s+8HRYwBd7oH3hRCLLAz/5s= + integrity sha512-m/M1U1f3ddMCs6Hq2tAsYThTBDaAKFDX3dwDo97GEYzamXi9SqUpjWi/Rrj/gf3X2n8ktwgZrlP1z6E3v/IExQ== lodash.defaults@^4.0.1: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" - integrity sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw= + integrity sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ== lodash.difference@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c" - integrity sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw= + integrity sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA== lodash.every@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.every/-/lodash.every-4.6.0.tgz#eb89984bebc4364279bb3aefbbd1ca19bfa6c6a7" - integrity sha1-64mYS+vENkJ5uzrvu9HKGb+mxqc= + integrity sha512-isF82d+65/sNvQ3aaQAW7LLHnnTxSN/2fm4rhYyuufLzA4VtHz6y6S5vFwe6PQVr2xdqUOyxBbTNKDpnmeu50w== lodash.filter@^4.4.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.filter/-/lodash.filter-4.6.0.tgz#668b1d4981603ae1cc5a6fa760143e480b4c4ace" - integrity sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4= + integrity sha512-pXYUy7PR8BCLwX5mgJ/aNtyOvuJTdZAo9EQFUvMIYugqmJxnrYaANvTbgndOzHSCSR0wnlBBfRXJL5SbWxo3FQ== -lodash.flatten@^4.2.0, lodash.flatten@^4.4.0: +lodash.flatten@^4.2.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" - integrity sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8= + integrity sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g== lodash.flattendeep@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" - integrity sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI= + integrity sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ== lodash.foreach@^4.3.0, lodash.foreach@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53" - integrity sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM= + integrity sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ== lodash.get@^4, lodash.get@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" - integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= + integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ== lodash.identity@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash.identity/-/lodash.identity-2.4.1.tgz#6694cffa65fef931f7c31ce86c74597cf560f4f1" - integrity sha1-ZpTP+mX++TH3wxzobHRZfPVg9PE= + integrity sha512-VRYX+8XipeLjorag5bz3YBBRJ+5kj8hVBzfnaHgXPZAVTYowBdY5l0M5ZnOmlAMCOXBFabQtm7f5VqjMKEji0w== lodash.isfunction@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash.isfunction/-/lodash.isfunction-2.4.1.tgz#2cfd575c73e498ab57e319b77fa02adef13a94d1" - integrity sha1-LP1XXHPkmKtX4xm3f6Aq3vE6lNE= + integrity sha512-6XcAB3izeQxPOQQNAJbbdjXbvWEt2Pn9ezPrjr4CwoLwmqsLVbsiEXD19cmmt4mbzOCOCdHzOQiUivUOJLra7w== lodash.isobject@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash.isobject/-/lodash.isobject-2.4.1.tgz#5a2e47fe69953f1ee631a7eba1fe64d2d06558f5" - integrity sha1-Wi5H/mmVPx7mMafrof5k0tBlWPU= + integrity sha512-sTebg2a1PoicYEZXD5PBdQcTlIJ6hUslrlWr7iV0O7n+i4596s2NQ9I5CaZ5FbXSfya/9WQsrYLANUJv9paYVA== dependencies: lodash._objecttypes "~2.4.1" -lodash.isplainobject@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" - integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= - -lodash.isstring@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" - integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= - lodash.keys@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-2.4.1.tgz#48dea46df8ff7632b10d706b8acb26591e2b3727" - integrity sha1-SN6kbfj/djKxDXBrissmWR4rNyc= + integrity sha512-ZpJhwvUXHSNL5wYd1RM6CUa2ZuqorG9ngoJ9Ix5Cce+uX7I5O/E06FCJdhSZ33b5dVyeQDnIlWH7B2s5uByZ7g== dependencies: lodash._isnative "~2.4.1" lodash._shimkeys "~2.4.1" @@ -14140,17 +14100,17 @@ lodash.keys@~2.4.1: lodash.map@^4.4.0, lodash.map@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3" - integrity sha1-dx7Hg540c9nEzeKLGTlMNWL09tM= + integrity sha512-worNHGKLDetmcEYDvh2stPCrrQRkP20E4l0iIS7F8EvzMqBBi7ltvFN5m1HvTf1P7Jk1txKhvFcmYsCr8O2F1Q== lodash.maxby@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.maxby/-/lodash.maxby-4.6.0.tgz#082240068f3c7a227aa00a8380e4f38cf0786e3d" - integrity sha1-CCJABo88eiJ6oAqDgOTzjPB4bj0= + integrity sha512-QfTqQTwzmKxLy7VZlbx2M/ipWv8DCQ2F5BI/MRxLharOQ5V78yMSuB+JE+EuUM22txYfj09R2Q7hUlEYj7KdNg== lodash.memoize@4.x, lodash.memoize@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= + integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== lodash.merge@^4.4.0, lodash.merge@^4.6.2: version "4.6.2" @@ -14160,37 +14120,37 @@ lodash.merge@^4.4.0, lodash.merge@^4.6.2: lodash.noop@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash.noop/-/lodash.noop-2.4.1.tgz#4fb54f816652e5ae10e8f72f717a388c7326538a" - integrity sha1-T7VPgWZS5a4Q6PcvcXo4jHMmU4o= + integrity sha512-uNcV98/blRhInPUGQEnj9ekXXfG+q+rfoNSFZgl/eBfog9yBDW9gfUv2AHX/rAF7zZRlzWhbslGhbGQFZlCkZA== lodash.pick@^4.2.1: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" - integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM= + integrity sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q== lodash.reduce@^4.4.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.reduce/-/lodash.reduce-4.6.0.tgz#f1ab6b839299ad48f784abbf476596f03b914d3b" - integrity sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs= + integrity sha512-6raRe2vxCYBhpBu+B+TtNGUzah+hQjVdu3E17wfusjyrXBka2nBS8OH/gjVZ5PvHOhWmIZTYri09Z6n/QfnNMw== lodash.reject@^4.4.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.reject/-/lodash.reject-4.6.0.tgz#80d6492dc1470864bbf583533b651f42a9f52415" - integrity sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU= + integrity sha512-qkTuvgEzYdyhiJBx42YPzPo71R1aEr0z79kAv7Ixg8wPFEjgRgJdUsGMG3Hf3OYSF/kHI79XhNlt+5Ar6OzwxQ== lodash.some@^4.4.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.some/-/lodash.some-4.6.0.tgz#1bb9f314ef6b8baded13b549169b2a945eb68e4d" - integrity sha1-G7nzFO9ri63tE7VJFpsqlF62jk0= + integrity sha512-j7MJE+TuT51q9ggt4fSgVqro163BEFjAt3u97IqU+JA2DkWl80nFTrowzLpZ/BnpN7rrl0JA/593NAdd8p/scQ== lodash.startcase@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.startcase/-/lodash.startcase-4.4.0.tgz#9436e34ed26093ed7ffae1936144350915d9add8" - integrity sha1-lDbjTtJgk+1/+uGTYUQ1CRXZrdg= + integrity sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg== lodash.support@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash.support/-/lodash.support-2.4.1.tgz#320e0b67031673c28d7a2bb5d9e0331a45240515" - integrity sha1-Mg4LZwMWc8KNeiu12eAzGkUkBRU= + integrity sha512-6SwqWwGFHhTXEiqB/yQgu8FYd//tm786d49y7kizHVCJH7zdzs191UQn3ES3tkkDbUddNRfkCRYqJFHtbLnbCw== dependencies: lodash._isnative "~2.4.1" @@ -14212,19 +14172,14 @@ lodash.templatesettings@^4.0.0: lodash.truncate@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" - integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= + integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== 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 sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= + integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== -lodash.without@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.without/-/lodash.without-4.4.0.tgz#3cd4574a00b67bae373a94b748772640507b7aac" - integrity sha1-PNRXSgC2e643OpS3SHcmQFB7eqw= - -lodash@^4.11.2, lodash@^4.17.10, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.7.0: +lodash@^4.11.2, lodash@^4.17.10, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.7.0, lodash@~4.17.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -14254,7 +14209,7 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.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 sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= + integrity sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ== dependencies: currently-unhandled "^0.4.1" signal-exit "^3.0.0" @@ -14262,14 +14217,21 @@ loud-rejection@^1.0.0: lower-case-first@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/lower-case-first/-/lower-case-first-1.0.2.tgz#e5da7c26f29a7073be02d52bac9980e5922adfa1" - integrity sha1-5dp8JvKacHO+AtUrrJmA5ZIq36E= + integrity sha512-UuxaYakO7XeONbKrZf5FEgkantPf5DUqDayzP5VXZrtRPdH86s4kN47I8B3TW10S4QKiE3ziHNf3kRN//okHjA== dependencies: lower-case "^1.1.2" +lower-case-first@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lower-case-first/-/lower-case-first-2.0.2.tgz#64c2324a2250bf7c37c5901e76a5b5309301160b" + integrity sha512-EVm/rR94FJTZi3zefZ82fLWab+GX14LJN4HrWBcuo6Evmsl9hEfnqxgcHCKb9q+mNf6EVdsjx/qucYFIIB84pg== + dependencies: + tslib "^2.0.3" + lower-case@^1.1.0, lower-case@^1.1.1, lower-case@^1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" - integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw= + integrity sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA== lower-case@^2.0.2: version "2.0.2" @@ -14299,7 +14261,7 @@ lowlight@^1.17.0: lru-cache@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.0.0.tgz#b5cbf01556c16966febe54ceec0fb4dc90df6c28" - integrity sha1-tcvwFVbBaWb+vlTO7A+03JDfbCg= + integrity sha512-WKhDkjlLwzE8jAQdQlsxLUQTPXLCKX/4cJk6s5AlRtJkDBk0IKH5O51bVDH61K9N4bhbbyvLM6EiOuE8ovApPA== dependencies: pseudomap "^1.0.1" yallist "^2.0.0" @@ -14322,16 +14284,16 @@ lru-cache@^6.0.0: lru-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3" - integrity sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM= + integrity sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ== dependencies: es5-ext "~0.10.2" magic-string@^0.25.0, magic-string@^0.25.1: - version "0.25.7" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051" - integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA== + version "0.25.9" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" + integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== dependencies: - sourcemap-codec "^1.4.4" + sourcemap-codec "^1.4.8" make-dir@^2.0.0, make-dir@^2.1.0: version "2.1.0" @@ -14360,15 +14322,15 @@ makeerror@1.0.12: dependencies: tmpl "1.0.5" -map-cache@^0.2.2: +map-cache@^0.2.0, map-cache@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= + 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 sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= + integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg== map-obj@^4.0.0: version "4.3.0" @@ -14378,12 +14340,12 @@ map-obj@^4.0.0: 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 sha1-beJlMXSt+12e3DPGnT6Sobdvrwg= + 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 sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= + integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== dependencies: object-visit "^1.0.0" @@ -14395,7 +14357,7 @@ markdown-escapes@^1.0.0: markdown-link@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/markdown-link/-/markdown-link-0.1.1.tgz#32c5c65199a6457316322d1e4229d13407c8c7cf" - integrity sha1-MsXGUZmmRXMWMi0eQinRNAfIx88= + integrity sha512-TurLymbyLyo+kAUUAV9ggR9EPcDjP/ctlv9QAFiqUH7c+t6FlsbivPo9OKTU8xdOx9oNd2drW/Fi5RRElQbUqA== markdown-table@^1.1.0: version "1.1.3" @@ -14433,9 +14395,9 @@ marked@^0.6.2, marked@^0.7.0: integrity sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg== marky@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/marky/-/marky-1.2.2.tgz#4456765b4de307a13d263a69b0c79bf226e68323" - integrity sha512-k1dB2HNeaNyORco8ulVEhctyEGkKHb2YWAhDsxeFlW2nROIirsctBYzKwwS3Vza+sKTS1zO4Z+n9/+9WbGLIxQ== + version "1.2.5" + resolved "https://registry.yarnpkg.com/marky/-/marky-1.2.5.tgz#55796b688cbd72390d2d399eaaf1832c9413e3c0" + integrity sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q== math-random@^1.0.1: version "1.0.4" @@ -14540,15 +14502,10 @@ mdn-data@2.0.14: resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== -mdn-data@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" - integrity sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA== - mdurl@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" - integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= + integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== meant@^1.0.3: version "1.0.3" @@ -14558,26 +14515,26 @@ meant@^1.0.3: media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= + integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== memfs@^3.1.2: - version "3.4.0" - resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.4.0.tgz#8bc12062b973be6b295d4340595736a656f0a257" - integrity sha512-o/RfP0J1d03YwsAxyHxAYs2kyJp55AFkMazlFAZFR2I2IXkxiUTXRabJ6RmNNCQ83LAD2jy52Khj0m3OffpNdA== - dependencies: - fs-monkey "1.0.3" - -memfs@^3.4.3: version "3.4.8" resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.4.8.tgz#4204fbd4cb72e2bbcf5941d784c6b6ce2be3dd52" integrity sha512-E8QAFfd4csESWOqKIpN+khILPFSAZwPR9S+DO/5UtJNcuanF1jLZz0oWUAPF7xd2c1r6dGjGx+jH1st+MFWufA== dependencies: fs-monkey "^1.0.3" +memfs@^3.4.3: + version "3.4.9" + resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.4.9.tgz#403bb953776d72fef4e39e1197a25ffa156d143a" + integrity sha512-3rm8kbrzpUGRyPKSGuk387NZOwQ90O4rI9tsWQkzNW7BLSnKGp23RsEsKK8N8QVCrtJoAMqy3spxHC4os4G6PQ== + dependencies: + fs-monkey "^1.0.3" + memoize-decorator@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/memoize-decorator/-/memoize-decorator-1.0.2.tgz#605a41715c4171db192a90098b00ab8d6e1102f5" - integrity sha1-YFpBcVxBcdsZKpAJiwCrjW4RAvU= + integrity sha512-G2vHcq4c+EwnBAOeWCH1mNz99QPCgm4ECjhHOd3SFZm66jVlwhBLdqhCvnHxptaRyZfm8ap3igoeDfrO92+uHQ== memoizee@^0.4.15: version "0.4.15" @@ -14596,14 +14553,14 @@ memoizee@^0.4.15: memoizerific@^1.11.3: version "1.11.3" resolved "https://registry.yarnpkg.com/memoizerific/-/memoizerific-1.11.3.tgz#7c87a4646444c32d75438570905f2dbd1b1a805a" - integrity sha1-fIekZGREwy11Q4VwkF8tvRsagFo= + integrity sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog== dependencies: map-or-similar "^1.5.0" meow@^3.1.0: version "3.7.0" resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= + integrity sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA== dependencies: camelcase-keys "^2.0.0" decamelize "^1.1.2" @@ -14671,7 +14628,7 @@ meow@^9.0.0: merge-descriptors@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= + integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== merge-stream@^2.0.0: version "2.0.0" @@ -14691,7 +14648,7 @@ meros@^1.1.4: methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= + integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== microevent.ts@~0.1.1: version "0.1.1" @@ -14725,39 +14682,27 @@ micromatch@^3.1.10, micromatch@^3.1.4: snapdragon "^0.8.1" to-regex "^3.0.2" -micromatch@^4.0.2, micromatch@^4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" - integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== +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== dependencies: - braces "^3.0.1" - picomatch "^2.2.3" + braces "^3.0.2" + picomatch "^2.3.1" -mime-db@1.51.0, "mime-db@>= 1.43.0 < 2": - version "1.51.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c" - integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g== - -mime-db@1.52.0: +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.12, mime-types@^2.1.18, mime-types@^2.1.27, mime-types@~2.1.24: - version "2.1.34" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" - integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== - dependencies: - mime-db "1.51.0" - -mime-types@^2.1.31: +mime-types@^2.1.12, mime-types@^2.1.18, 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== dependencies: mime-db "1.52.0" -mime@1.6.0, mime@^1.3.4: +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== @@ -14767,6 +14712,11 @@ mime@^2.4.4, mime@^2.4.6, mime@^2.5.2: resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== +mime@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-3.0.0.tgz#b374550dca3a0c18443b0c950a6a58f1931cf7a7" + integrity sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A== + mimic-fn@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" @@ -14785,7 +14735,7 @@ mimic-response@^3.1.0: min-document@^2.19.0: version "2.19.0" resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" - integrity sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU= + integrity sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ== dependencies: dom-walk "^0.1.0" @@ -14803,17 +14753,10 @@ mini-css-extract-plugin@1.6.2: schema-utils "^3.0.0" webpack-sources "^1.1.0" -mini-svg-data-uri@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/mini-svg-data-uri/-/mini-svg-data-uri-1.4.3.tgz#43177b2e93766ba338931a3e2a84a3dfd3a222b8" - integrity sha512-gSfqpMRC8IxghvMcxzzmMnWpXAChSA+vy4cia33RgerMS8Fex95akUyQZPbxJJmeBGiGmK7n/1OpUX8ksRjIdA== - -minimatch@3.0.4, minimatch@^3.0.2: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" +mini-svg-data-uri@^1.4.4: + version "1.4.4" + resolved "https://registry.yarnpkg.com/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz#8ab0aabcdf8c29ad5693ca595af19dd2ead09939" + integrity sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg== minimatch@4.2.1: version "4.2.1" @@ -14822,7 +14765,7 @@ minimatch@4.2.1: dependencies: brace-expansion "^1.1.7" -minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: +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== @@ -14838,10 +14781,10 @@ minimist-options@4.1.0, minimist-options@^4.0.2: is-plain-obj "^1.1.0" kind-of "^6.0.3" -minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@^1.2.6: - version "1.2.6" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" - integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== +minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.3, 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== mitt@^1.2.0: version "1.2.0" @@ -14866,7 +14809,7 @@ mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== -mkdirp@^0.5.1, mkdirp@^0.5.4, mkdirp@^0.5.5, mkdirp@~0.5.1: +mkdirp@^0.5.1, mkdirp@^0.5.4, mkdirp@^0.5.6: version "0.5.6" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== @@ -14891,7 +14834,7 @@ mri@^1.1.5: ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== ms@2.1.1: version "2.1.1" @@ -14908,53 +14851,37 @@ ms@2.1.3, ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -msgpackr-extract@^1.0.14: - version "1.0.16" - resolved "https://registry.yarnpkg.com/msgpackr-extract/-/msgpackr-extract-1.0.16.tgz#701c4f6e6f25c100ae84557092274e8fffeefe45" - integrity sha512-fxdRfQUxPrL/TizyfYfMn09dK58e+d65bRD/fcaVH4052vj30QOzzqxcQIS7B0NsqlypEQ/6Du3QmP2DhWFfCA== - dependencies: - nan "^2.14.2" - node-gyp-build "^4.2.3" - -msgpackr-extract@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/msgpackr-extract/-/msgpackr-extract-2.0.2.tgz#201a8d7ade47e99b3ba277c45736b00e195d4670" - integrity sha512-coskCeJG2KDny23zWeu+6tNy7BLnAiOGgiwzlgdm4oeSsTpqEJJPguHIuKZcCdB7tzhZbXNYSg6jZAXkZErkJA== +msgpackr-extract@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/msgpackr-extract/-/msgpackr-extract-2.1.2.tgz#56272030f3e163e1b51964ef8b1cd5e7240c03ed" + integrity sha512-cmrmERQFb19NX2JABOGtrKdHMyI6RUyceaPBQ2iRz9GnDkjBWFjNJC0jyyoOfZl2U/LZE3tQCCQc4dlRyA8mcA== dependencies: - node-gyp-build-optional-packages "5.0.2" + node-gyp-build-optional-packages "5.0.3" optionalDependencies: - "@msgpackr-extract/msgpackr-extract-darwin-arm64" "2.0.2" - "@msgpackr-extract/msgpackr-extract-darwin-x64" "2.0.2" - "@msgpackr-extract/msgpackr-extract-linux-arm" "2.0.2" - "@msgpackr-extract/msgpackr-extract-linux-arm64" "2.0.2" - "@msgpackr-extract/msgpackr-extract-linux-x64" "2.0.2" - "@msgpackr-extract/msgpackr-extract-win32-x64" "2.0.2" - -msgpackr@^1.5.0: - version "1.5.2" - resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.5.2.tgz#b400c9885642bdec27b284f8bdadbd6570b448b7" - integrity sha512-OCguCkbG34x1ddO4vAzEm/4J1GTo512k9SoxV8K+EGfI/onFdpemRf0HpsVRFpxadXr4JBFgHsQUitgTlw7ZYQ== - optionalDependencies: - msgpackr-extract "^1.0.14" + "@msgpackr-extract/msgpackr-extract-darwin-arm64" "2.1.2" + "@msgpackr-extract/msgpackr-extract-darwin-x64" "2.1.2" + "@msgpackr-extract/msgpackr-extract-linux-arm" "2.1.2" + "@msgpackr-extract/msgpackr-extract-linux-arm64" "2.1.2" + "@msgpackr-extract/msgpackr-extract-linux-x64" "2.1.2" + "@msgpackr-extract/msgpackr-extract-win32-x64" "2.1.2" msgpackr@^1.5.4: - version "1.6.1" - resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.6.1.tgz#4f3c94d6a5b819b838ffc736eddaf60eba436d20" - integrity sha512-Je+xBEfdjtvA4bKaOv8iRhjC8qX2oJwpYH4f7JrG4uMVJVmnmkAT4pjKdbztKprGj3iwjcxPzb5umVZ02Qq3tA== + version "1.7.2" + resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.7.2.tgz#68d6debf5999d6b61abb6e7046a689991ebf7261" + integrity sha512-mWScyHTtG6TjivXX9vfIy2nBtRupaiAj0HQ2mtmpmYujAmqZmaaEVPaSZ1NKLMvicaMLFzEaMk0ManxMRg8rMQ== optionalDependencies: - msgpackr-extract "^2.0.2" + msgpackr-extract "^2.1.2" -multer@^1.4.3: - version "1.4.4" - resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.4.tgz#e2bc6cac0df57a8832b858d7418ccaa8ebaf7d8c" - integrity sha512-2wY2+xD4udX612aMqMcB8Ws2Voq6NIUPEtD1be6m411T4uDH/VtL9i//xvcyFlTVfRdaBsk7hV5tgrGQqhuBiw== +multer@^1.4.5-lts.1: + version "1.4.5-lts.1" + resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.5-lts.1.tgz#803e24ad1984f58edffbc79f56e305aec5cfd1ac" + integrity sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ== dependencies: append-field "^1.0.0" - busboy "^0.2.11" + busboy "^1.0.0" concat-stream "^1.5.2" mkdirp "^0.5.4" object-assign "^4.1.1" - on-finished "^2.3.0" type-is "^1.6.4" xtend "^4.0.0" @@ -14972,7 +14899,7 @@ multimatch@^4.0.0: multipipe@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-1.0.2.tgz#cc13efd833c9cda99f224f868461b8e1a3fd939d" - integrity sha1-zBPv2DPJzamfIk+GhGG44aP9k50= + integrity sha512-6uiC9OvY71vzSGX8lZvSqscE7ft9nPupJ8fMjrCNRAUy2LREUW42UL+V/NTrogr6rFgRydUrCX4ZitfpSNkSCQ== dependencies: duplexer2 "^0.1.2" object-assign "^4.1.0" @@ -14982,22 +14909,12 @@ mute-stream@0.0.8, mute-stream@~0.0.4: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== -nan@^2.14.2: - version "2.15.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee" - integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ== - nanocolors@^0.2.1: version "0.2.13" resolved "https://registry.yarnpkg.com/nanocolors/-/nanocolors-0.2.13.tgz#dfd1ed0bfab05e9fe540eb6874525f0a1684099b" integrity sha512-0n3mSAQLPpGLV9ORXT5+C/D4mwew7Ebws69Hx4E2sgz2ZA5+32Q80B9tL8PbL7XHnRDiAxH/pnrUJ9a4fkTNTA== -nanoid@^3.1.25, nanoid@^3.1.30: - version "3.2.0" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.2.0.tgz#62667522da6673971cca916a6d3eff3f415ff80c" - integrity sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA== - -nanoid@^3.3.1: +nanoid@^3.1.25, nanoid@^3.2.0, 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== @@ -15019,10 +14936,10 @@ nanomatch@^1.2.9: snapdragon "^0.8.1" to-regex "^3.0.1" -nanospinner@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/nanospinner/-/nanospinner-0.6.0.tgz#1943a2668b1ff93a02847c1d9c4655647d52e578" - integrity sha512-G2QQwVJListXbtsBW5r5kJs8WXybsO9/SQxzcvSmPRSIOQOeR0v/ETI9hncOna0tzWscdjjcCZUVCJoR4eJlag== +nanospinner@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/nanospinner/-/nanospinner-1.1.0.tgz#d17ff621cb1784b0a206b400da88a0ef6db39b97" + integrity sha512-yFvNYMig4AthKYfHFl1sLj7B2nkHL4lzdig4osvl9/LdGbXwrdFRoqBS98gsEsOakr0yH+r5NZ/1Y9gdVB8trA== dependencies: picocolors "^1.0.0" @@ -15031,17 +14948,10 @@ napi-build-utils@^1.0.1: resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-1.0.2.tgz#b1fddc0b2c46e380a0b7a76f984dd47c41a13806" integrity sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg== -native-url@^0.2.6: - version "0.2.6" - resolved "https://registry.yarnpkg.com/native-url/-/native-url-0.2.6.tgz#ca1258f5ace169c716ff44eccbddb674e10399ae" - integrity sha512-k4bDC87WtgrdD362gZz6zoiXQrl40kYlBmpfmSjwRO1VU0V5ccwJTlxuE72F6m3V0vc1xOf6n3UCP9QyerRqmA== - dependencies: - querystring "^0.2.0" - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== needle@^2.5.2: version "2.9.1" @@ -15052,10 +14962,10 @@ needle@^2.5.2: iconv-lite "^0.4.4" sax "^1.2.4" -negotiator@0.6.2, negotiator@~0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" - integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== +negotiator@0.6.3, negotiator@~0.6.2: + 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.6.0, neo-async@^2.6.1, neo-async@^2.6.2: version "2.6.2" @@ -15063,32 +14973,27 @@ neo-async@^2.6.0, neo-async@^2.6.1, neo-async@^2.6.2: integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== nested-error-stacks@^2.0.0, nested-error-stacks@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz#0fbdcf3e13fe4994781280524f8b96b0cdff9c61" - integrity sha512-AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug== + version "2.1.1" + resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.1.1.tgz#26c8a3cee6cc05fbcf1e333cd2fc3e003326c0b5" + integrity sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw== next-tick@1, next-tick@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== -next-tick@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" - integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= - 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== nise@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/nise/-/nise-5.1.0.tgz#713ef3ed138252daef20ec035ab62b7a28be645c" - integrity sha512-W5WlHu+wvo3PaKLsJJkgPup2LrsXCcm7AWwyNZkUnn5rwPkuPBi3Iwk5SQtN0mv+K65k7nKKjwNQ30wg3wLAQQ== + version "5.1.1" + resolved "https://registry.yarnpkg.com/nise/-/nise-5.1.1.tgz#ac4237e0d785ecfcb83e20f389185975da5c31f3" + integrity sha512-yr5kW2THW1AkxVmCnKEh4nbYkJdB3I7LUkiUgOvEkOp414mc2UMaHMA7pjq1nYowhdoJZGwEKGaQVbxfpWj10A== dependencies: - "@sinonjs/commons" "^1.7.0" - "@sinonjs/fake-timers" "^7.0.4" + "@sinonjs/commons" "^1.8.3" + "@sinonjs/fake-timers" ">=5" "@sinonjs/text-encoding" "^0.7.1" just-extend "^4.0.2" path-to-regexp "^1.7.0" @@ -15114,26 +15019,31 @@ no-case@^3.0.4: tslib "^2.0.3" node-abi@^3.3.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.5.0.tgz#26e8b7b251c3260a5ac5ba5aef3b4345a0229248" - integrity sha512-LtHvNIBgOy5mO8mPEUtkCW/YCRWYEKshIvqhe1GHHyXEHEB5mgICyYnAcl4qan3uFeRROErKGzatFHPf6kDxWw== + version "3.28.0" + resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.28.0.tgz#b0df8b317e1c4f2f323756c5fc8ffccc5bca4718" + integrity sha512-fRlDb4I0eLcQeUvGq7IY3xHrSb0c9ummdvDSYWfT9+LKP+3jCKw/tKoqaM7r1BAoiAC6GtwyjaGnOz6B3OtF+A== dependencies: semver "^7.3.5" -node-addon-api@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.2.0.tgz#117cbb5a959dff0992e1c586ae0393573e4d2a87" - integrity sha512-eazsqzwG2lskuzBqCGPi7Ac2UgOoMz8JVOXVhTvvPDYhthvNpefx8jWD8Np7Gv+2Sz0FlPWZk0nJV0z598Wn8Q== +node-addon-api@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161" + integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A== node-addon-api@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.3.0.tgz#52a1a0b475193e0928e98e0426a0d1254782b77f" integrity sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ== +node-addon-api@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.0.0.tgz#7d7e6f9ef89043befdb20c1989c905ebde18c501" + integrity sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA== + node-dir@^0.1.10: version "0.1.17" resolved "https://registry.yarnpkg.com/node-dir/-/node-dir-0.1.17.tgz#5f5665d93351335caabef8f1c554516cf5f1e4e5" - integrity sha1-X1Zl2TNRM1yqvvjxxVRRbPXx5OU= + integrity sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg== dependencies: minimatch "^3.0.2" @@ -15142,51 +15052,35 @@ 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-eta@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/node-eta/-/node-eta-0.9.0.tgz#9fb0b099bcd2a021940e603c64254dc003d9a7a8" - integrity sha1-n7CwmbzSoCGUDmA8ZCVNwAPZp6g= - -node-fetch@2.6.5: - version "2.6.5" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.5.tgz#42735537d7f080a7e5f78b6c549b7146be1742fd" - integrity sha512-mmlIVHJEu5rnIxgEgez6b9GgWXbkZj5YZ7fx+2r94a2E+Uirsp6HsPTPlomfdHtpt/B0cdKviwkoaM6pyvUOpQ== - dependencies: - whatwg-url "^5.0.0" - -node-fetch@^2.5.0, node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.6: - version "2.6.6" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.6.tgz#1751a7c01834e8e1697758732e9efb6eeadfaf89" - integrity sha512-Z8/6vRlTUChSdIgMa51jxQ4lrw/Jy5SOW10ObaA47/RElsAN2c5Pn8bTgFGWn/ibwzXTE8qwr1Yzx28vsecXEA== - dependencies: - whatwg-url "^5.0.0" - -node-fetch@^2.6.7: +node-fetch@2.6.7, node-fetch@^2.5.0, node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.6, node-fetch@^2.6.7: version "2.6.7" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: whatwg-url "^5.0.0" -node-gyp-build-optional-packages@5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.2.tgz#3de7d30bd1f9057b5dfbaeab4a4442b7fe9c5901" - integrity sha512-PiN4NWmlQPqvbEFcH/omQsswWQbe5Z9YK/zdB23irp5j2XibaA2IrGvpSWmVVG4qMZdmPdwPctSy4a86rOMn6g== +node-gyp-build-optional-packages@5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.3.tgz#92a89d400352c44ad3975010368072b41ad66c17" + integrity sha512-k75jcVzk5wnnc/FMxsf4udAoTEUv2jY3ycfdSd3yWu6Cnd1oee6/CfZJApyscA4FJOmdoixWwiwOyf16RzD5JA== -node-gyp-build-optional-packages@^4.3.2: - version "4.3.5" - resolved "https://registry.yarnpkg.com/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-4.3.5.tgz#a1de0039f81ecacecefcbb4349cdb96842343b31" - integrity sha512-5ke7D8SiQsTQL7CkHpfR1tLwfqtKc0KYEmlnkwd40jHCASskZeS98qoZ1qDUns2aUQWikcjidRUs6PM/3iyN/w== +node-gyp-build@^4.3.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.5.0.tgz#7a64eefa0b21112f89f58379da128ac177f20e40" + integrity sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg== -node-gyp-build@^4.2.3: - version "4.3.0" - resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.3.0.tgz#9f256b03e5826150be39c764bf51e993946d71a3" - integrity sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q== +node-html-parser@^5.3.3: + version "5.4.2" + resolved "https://registry.yarnpkg.com/node-html-parser/-/node-html-parser-5.4.2.tgz#93e004038c17af80226c942336990a0eaed8136a" + integrity sha512-RaBPP3+51hPne/OolXxcz89iYvQvKOydaqoePpOgXcrOKZhjVIzmpKZz+Hd/RBO2/zN2q6CNJhQzucVz+u3Jyw== + dependencies: + css-select "^4.2.1" + he "1.2.0" node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= + integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== node-object-hash@^2.3.10: version "2.3.10" @@ -15221,7 +15115,7 @@ normalize-package-data@^3.0.0: normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= + integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== dependencies: remove-trailing-separator "^1.0.1" @@ -15233,19 +15127,14 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: normalize-range@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= - -normalize-selector@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/normalize-selector/-/normalize-selector-0.2.0.tgz#d0b145eb691189c63a78d201dc4fdb1293ef0c03" - integrity sha1-0LFF62kRicY6eNIB3E/bEpPvDAM= + integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== normalize-url@^4.1.0: version "4.5.1" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== -normalize-url@^6.0.1, normalize-url@^6.1.0: +normalize-url@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== @@ -15260,7 +15149,7 @@ now-and-later@^2.0.0: 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 sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= + integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== dependencies: path-key "^2.0.0" @@ -15271,16 +15160,6 @@ npm-run-path@^4.0.0, npm-run-path@^4.0.1: dependencies: path-key "^3.0.0" -npmlog@^4.0.1: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - npmlog@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-5.0.1.tgz#f06678e80e29419ad67ab964e0fa69959c1eb8b0" @@ -15291,10 +15170,10 @@ npmlog@^5.0.1: gauge "^3.0.0" set-blocking "^2.0.0" -nth-check@^1.0.2, nth-check@^2.0.1, nth-check@~1.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2" - integrity sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w== +nth-check@^2.0.1, nth-check@~1.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" @@ -15306,15 +15185,20 @@ null-loader@^4.0.1: loader-utils "^2.0.0" schema-utils "^3.0.0" +nullthrows@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/nullthrows/-/nullthrows-1.1.1.tgz#7818258843856ae971eae4208ad7d7eb19a431b1" + integrity sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw== + num2fraction@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= + integrity sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg== number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= + integrity sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ== nunjucks@^3.1.7: version "3.2.3" @@ -15326,45 +15210,40 @@ nunjucks@^3.1.7: commander "^5.1.0" nwsapi@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" - integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== + version "2.2.2" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.2.tgz#e5418863e7905df67d51ec95938d67bf801f0bb0" + integrity sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw== object-assign@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" - integrity sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I= + integrity sha512-jHP15vXVGeVh1HuaA2wY6lxk+whK/x4KBG88VXeRma7CCun7iGD5qPc4eYykQ9sdQvg8jkwFKsSxHln2ybW3xQ== object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + 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 sha1-fn2Fi3gb18mRpBupde04EnVOmYw= + integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== dependencies: copy-descriptor "^0.1.0" define-property "^0.2.5" kind-of "^3.0.3" -object-inspect@^1.11.0, object-inspect@^1.11.1: - version "1.12.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" - integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== - -object-inspect@^1.9.0: +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-keys@^1.0.12, object-keys@^1.1.1: +object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object-path@0.11.5, object-path@^0.11.8: +object-path@^0.11.8: version "0.11.8" resolved "https://registry.yarnpkg.com/object-path/-/object-path-0.11.8.tgz#ed002c02bbdd0070b78a27455e8ae01fc14d4742" integrity sha512-YJjNZrlXJFM42wTBn6zgOJVar9KFJvzx6sTWDte8sWZF//cnjl0BxHNpfZx+ZffXX63A9q0b1zsFiBX4g4X5KA== @@ -15372,18 +15251,18 @@ object-path@0.11.5, object-path@^0.11.8: object-visit@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= + integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== dependencies: isobject "^3.0.0" -object.assign@^4.0.4, object.assign@^4.1.0, object.assign@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" - integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== +object.assign@^4.0.4, object.assign@^4.1.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" + integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== dependencies: - call-bind "^1.0.0" - define-properties "^1.1.3" - has-symbols "^1.0.1" + call-bind "^1.0.2" + define-properties "^1.1.4" + has-symbols "^1.0.3" object-keys "^1.1.1" object.entries@^1.1.0, object.entries@^1.1.5: @@ -15404,27 +15283,28 @@ object.entries@^1.1.0, object.entries@^1.1.5: define-properties "^1.1.3" es-abstract "^1.19.1" -object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.0, object.getownpropertydescriptors@^2.1.2: - version "2.1.3" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz#b223cf38e17fefb97a63c10c91df72ccb386df9e" - integrity sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw== +object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.2: + version "2.1.4" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.4.tgz#7965e6437a57278b587383831a9b829455a4bc37" + integrity sha512-sccv3L/pMModT6dJAYF3fzGMVcb38ysQ0tEE6ixv2yXJDtEIPph268OlAdJj5/qZMZDq2g/jqvwppt36uS/uQQ== dependencies: + array.prototype.reduce "^1.0.4" call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.1" + define-properties "^1.1.4" + es-abstract "^1.20.1" -object.hasown@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.0.tgz#7232ed266f34d197d15cac5880232f7a4790afe5" - integrity sha512-MhjYRfj3GBlhSkDHo6QmvgjRLXQ2zndabdf3nX0yTyZK9rPfxb6uRpAac8HXNLy1GpqWtZ81Qh4v3uOls2sRAg== +object.hasown@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.1.tgz#ad1eecc60d03f49460600430d97f23882cf592a3" + integrity sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A== dependencies: - define-properties "^1.1.3" - es-abstract "^1.19.1" + define-properties "^1.1.4" + es-abstract "^1.19.5" object.pick@^1.2.0, object.pick@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== dependencies: isobject "^3.0.1" @@ -15447,15 +15327,10 @@ objectorarray@^1.0.5: resolved "https://registry.yarnpkg.com/objectorarray/-/objectorarray-1.0.5.tgz#2c05248bbefabd8f43ad13b41085951aac5e68a5" integrity sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg== -omggif@^1.0.10, omggif@^1.0.9: - version "1.0.10" - resolved "https://registry.yarnpkg.com/omggif/-/omggif-1.0.10.tgz#ddaaf90d4a42f532e9e7cb3a95ecdd47f17c7b19" - integrity sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw== - -on-finished@^2.3.0, on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= +on-finished@2.4.1, on-finished@^2.3.0: + 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" @@ -15481,9 +15356,9 @@ onetime@^5.1.0, onetime@^5.1.2: only@~0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/only/-/only-0.0.2.tgz#2afde84d03e50b9a8edc444e30610a70295edfb4" - integrity sha1-Kv3oTQPlC5qO3EROMGEKcCle37Q= + integrity sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ== -open@^7.0.2, open@^7.0.3: +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== @@ -15501,9 +15376,9 @@ open@^8.0.2, open@^8.4.0: is-wsl "^2.2.0" opentracing@^0.14.5: - version "0.14.5" - resolved "https://registry.yarnpkg.com/opentracing/-/opentracing-0.14.5.tgz#891fa92cd90a24e64f99bc964370227310926c85" - integrity sha512-XLKtEfHxqrWyF1fzxznsv78w3csW41ucHnjiKnfzZLD5FN8UBDZZL1i4q0FR29zjxXhm+2Hop+5Vr/b8tKIvEg== + version "0.14.7" + resolved "https://registry.yarnpkg.com/opentracing/-/opentracing-0.14.7.tgz#25d472bd0296dc0b64d7b94cbc995219031428f5" + integrity sha512-vz9iS7MJ5+Bp1URw8Khvdyw1H/hGvzHWlKQ7eRrQojSCDL1/SrWfrY9QebLw97n2deyRtzHRC3MkQfVNUCo91Q== optionator@^0.8.1: version "0.8.3" @@ -15529,27 +15404,22 @@ optionator@^0.9.1: type-check "^0.4.0" word-wrap "^1.2.3" -ordered-binary@^1.0.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/ordered-binary/-/ordered-binary-1.2.3.tgz#518f637692a74d372e56230effae37b811575e36" - integrity sha512-fEwMk8TNUtzQDjXKYS2ANW3fNZ/gMReCPOAsLHaqw+UDnq/8ddXAcX4lGRpTK7kAghAjkmJs1EXXbcrDbg+ruw== - ordered-binary@^1.2.4: - version "1.2.5" - resolved "https://registry.yarnpkg.com/ordered-binary/-/ordered-binary-1.2.5.tgz#6208c45067eae9d14b8f44791a1d7037adad9147" - integrity sha512-djRmZoEpOGvIRW7ufsCDHtvcUa18UC9TxnPbHhSVFZHsoyg0dtut1bWtBZ/fmxdPN62oWXrV6adM7NoWU+CneA== + version "1.4.0" + resolved "https://registry.yarnpkg.com/ordered-binary/-/ordered-binary-1.4.0.tgz#6bb53d44925f3b8afc33d1eed0fa15693b211389" + integrity sha512-EHQ/jk4/a9hLupIKxTfUsQRej1Yd/0QLQs3vGvIqg5ZtCYSzNhkzHoZc7Zf4e4kUlDaC3Uw8Q/1opOLNN2OKRQ== ordered-read-streams@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz#77c0cb37c41525d64166d990ffad7ec6a0e1363e" - integrity sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4= + integrity sha512-Z87aSjx3r5c0ZB7bcJqIgIRX5bxR7A4aSzvIbaxd0oTkWBCOoKfuGHiKj60CHVUgg1Phm5yMZzBdt8XqRs73Mw== dependencies: readable-stream "^2.0.1" os-homedir@^1.0.0, os-homedir@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= + integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ== os-tmpdir@~1.0.2: version "1.0.2" @@ -15600,7 +15470,7 @@ p-filter@^2.1.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 sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== p-limit@3.1.0, p-limit@^3.0.2: version "3.1.0" @@ -15609,13 +15479,6 @@ p-limit@3.1.0, p-limit@^3.0.2: dependencies: yocto-queue "^0.1.0" -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.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" @@ -15623,13 +15486,6 @@ p-limit@^2.0.0, p-limit@^2.2.0: dependencies: p-try "^2.0.0" -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= - 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" @@ -15678,11 +15534,6 @@ p-queue@^6.6.2: eventemitter3 "^4.0.4" p-timeout "^3.2.0" -p-throttle@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/p-throttle/-/p-throttle-4.1.1.tgz#80b1fbd358af40a8bfa1667f9dc8b72b714ad692" - integrity sha512-TuU8Ato+pRTPJoDzYD4s7ocJYcNSEZRvlxoq3hcPI2kZDZ49IQ1Wkj7/gDJc3X7XiEAAvRGtDzdXJI0tC3IL1g== - p-timeout@^3.1.0, p-timeout@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" @@ -15690,11 +15541,6 @@ p-timeout@^3.1.0, p-timeout@^3.2.0: 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" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -15710,15 +15556,10 @@ package-json@^6.3.0: registry-url "^5.0.0" semver "^6.2.0" -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== - param-case@2.1.x, param-case@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" - integrity sha1-35T9jPZTHs915r75oIWPvHK+Ikc= + integrity sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w== dependencies: no-case "^2.2.0" @@ -15737,24 +15578,6 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" -parse-bmfont-ascii@^1.0.3: - version "1.0.6" - resolved "https://registry.yarnpkg.com/parse-bmfont-ascii/-/parse-bmfont-ascii-1.0.6.tgz#11ac3c3ff58f7c2020ab22769079108d4dfa0285" - integrity sha1-Eaw8P/WPfCAgqyJ2kHkQjU36AoU= - -parse-bmfont-binary@^1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/parse-bmfont-binary/-/parse-bmfont-binary-1.0.6.tgz#d038b476d3e9dd9db1e11a0b0e53a22792b69006" - integrity sha1-0Di0dtPp3Z2x4RoLDlOiJ5K2kAY= - -parse-bmfont-xml@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/parse-bmfont-xml/-/parse-bmfont-xml-1.1.4.tgz#015319797e3e12f9e739c4d513872cd2fa35f389" - integrity sha512-bjnliEOmGv3y1aMEfREMBJ9tfL3WR0i0CKPj61DnSLaoxWR3nLrsQrEbCId/8rF4NyRF0cCqisSVXyQYWM+mCQ== - dependencies: - xml-parse-from-string "^1.0.0" - xml2js "^0.4.5" - parse-english@^4.0.0: version "4.2.0" resolved "https://registry.yarnpkg.com/parse-english/-/parse-english-4.2.0.tgz#037b68f34d1a1bdf3d33668b87791bdfc1f01e1e" @@ -15789,19 +15612,23 @@ parse-entities@^2.0.0: is-decimal "^1.0.0" is-hexadecimal "^1.0.0" -parse-headers@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/parse-headers/-/parse-headers-2.0.4.tgz#9eaf2d02bed2d1eff494331ce3df36d7924760bf" - integrity sha512-psZ9iZoCNFLrgRjZ1d8mn0h9WRqJwFxM9q3x7iUjN/YT2OksthDJ5TiPCu2F38kS4zutqfW+YdVVkBZZx3/1aw== +parse-filepath@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" + integrity sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q== + dependencies: + is-absolute "^1.0.0" + map-cache "^0.2.0" + path-root "^0.1.1" parse-json@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= + integrity sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ== dependencies: error-ex "^1.2.0" -parse-json@^5.0.0: +parse-json@^5.0.0, parse-json@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== @@ -15820,25 +15647,19 @@ parse-latin@^4.0.0: unist-util-modify-children "^2.0.0" unist-util-visit-children "^1.0.0" -parse-path@^4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.4.tgz#4bf424e6b743fb080831f03b536af9fc43f0ffea" - integrity sha512-Z2lWUis7jlmXC1jeOG9giRO2+FsuyNipeQ43HAjqAZjwSe3SEf+q/84FGPHoso3kyntbxa4c4i77t3m6fGf8cw== +parse-path@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-7.0.0.tgz#605a2d58d0a749c8594405d8cc3a2bf76d16099b" + integrity sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog== dependencies: - is-ssh "^1.3.0" - protocols "^1.4.0" - qs "^6.9.4" - query-string "^6.13.8" + protocols "^2.0.0" -parse-url@^6.0.0: - version "6.0.2" - resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-6.0.2.tgz#4a30b057bfc452af64512dfb1a7755c103db3ea1" - integrity sha512-uCSjOvD3T+6B/sPWhR+QowAZcU/o4bjPrVBQBGFxcDF6J6FraCGIaDBsdoQawiaaAVdHvtqBe3w3vKlfBKySOQ== +parse-url@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-8.1.0.tgz#972e0827ed4b57fc85f0ea6b0d839f0d8a57a57d" + integrity sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w== dependencies: - is-ssh "^1.3.0" - normalize-url "^6.1.0" - parse-path "^4.0.4" - protocols "^1.4.0" + parse-path "^7.0.0" parse5-htmlparser2-tree-adapter@^6.0.1: version "6.0.1" @@ -15847,6 +15668,14 @@ parse5-htmlparser2-tree-adapter@^6.0.1: dependencies: parse5 "^6.0.1" +parse5-htmlparser2-tree-adapter@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz#23c2cc233bcf09bb7beba8b8a69d46b08c62c2f1" + integrity sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g== + dependencies: + domhandler "^5.0.2" + parse5 "^7.0.0" + parse5@5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" @@ -15857,6 +15686,13 @@ parse5@6.0.1, parse5@^6.0.0, parse5@^6.0.1: resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== +parse5@^7.0.0: + version "7.1.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.1.tgz#4649f940ccfb95d8754f37f73078ea20afe0c746" + integrity sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg== + dependencies: + entities "^4.4.0" + parseqs@0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.6.tgz#8e4bb5a19d1cdc844a08ac974d34e273afa670d5" @@ -15875,7 +15711,7 @@ parseurl@^1.3.2, parseurl@^1.3.3, parseurl@~1.3.2, parseurl@~1.3.3: pascal-case@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-2.0.1.tgz#2d578d3455f660da65eca18ef95b4e0de912761e" - integrity sha1-LVeNNFX2YNpl7KGO+VtODekSdh4= + integrity sha512-qjS4s8rBOJa2Xm0jmxXiyh1+OFf6ekCWOvUaRgAQSktzlTbMotS0nmG9gyYAybCWBcuP4fsBeRCKNwGBnMe2OQ== dependencies: camel-case "^3.0.0" upper-case-first "^1.1.0" @@ -15891,7 +15727,7 @@ pascal-case@^3.1.2: pascalcase@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= + integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== password-prompt@^1.0.4: version "1.1.2" @@ -15909,7 +15745,7 @@ path-browserify@^1.0.1: path-case@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/path-case/-/path-case-2.1.1.tgz#94b8037c372d3fe2906e465bb45e25d226e8eea5" - integrity sha1-lLgDfDctP+KQbkZbtF4l0ibo7qU= + integrity sha512-Ou0N05MioItesaLr9q8TtHVWmJ6fxWdqKB2RohFmNWVyJ+2zeKIeDNWAN6B/Pe7wpzWChhZX6nONYmOnMeJQ/Q== dependencies: no-case "^2.2.0" @@ -15924,14 +15760,14 @@ path-case@^3.0.4: path-exists@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= + 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" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= + integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== path-exists@^4.0.0: version "4.0.0" @@ -15946,22 +15782,34 @@ path-is-absolute@1.0.1, path-is-absolute@^1.0.0: 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 sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= + 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" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== -path-parse@^1.0.6: +path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-root-regex@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" + integrity sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ== + +path-root@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7" + integrity sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg== + dependencies: + path-root-regex "^0.1.0" + 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 sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= + integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== path-to-regexp@^1.7.0: version "1.8.0" @@ -15973,7 +15821,7 @@ path-to-regexp@^1.7.0: path-type@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= + integrity sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg== dependencies: graceful-fs "^4.1.2" pify "^2.0.0" @@ -15991,30 +15839,25 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -peek-readable@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/peek-readable/-/peek-readable-4.0.2.tgz#a5cb847e347d3eccdc37642c82d2b4155c1ab8af" - integrity sha512-9fMaz6zoxw9ypO1KZy5RDJgSupEtu0Q+g/OqqsVHX3rKGR8qehRLYzsFARZ4bVvdvfknKiXvuDbkMnO1g6cRpQ== +peek-readable@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/peek-readable/-/peek-readable-4.1.0.tgz#4ece1111bf5c2ad8867c314c81356847e8a62e72" + integrity sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg== pegjs@^0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/pegjs/-/pegjs-0.10.0.tgz#cf8bafae6eddff4b5a7efb185269eaaf4610ddbd" - integrity sha1-z4uvrm7d/0tafvsYUmnqr0YQ3b0= + integrity sha512-qI5+oFNEGi3L5HAxDwN2LA4Gg7irF70Zs25edhjld9QemOgp0CbvMtbFcMvFtEo1OityPrcCzkQFB8JP/hxgow== pend@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" - integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= - -phin@^2.9.1: - version "2.9.3" - resolved "https://registry.yarnpkg.com/phin/-/phin-2.9.3.tgz#f9b6ac10a035636fb65dfc576aaaa17b8743125c" - integrity sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA== + integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== physical-cpu-count@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/physical-cpu-count/-/physical-cpu-count-2.0.0.tgz#18de2f97e4bf7a9551ad7511942b5496f7aba660" - integrity sha1-GN4vl+S/epVRrXURlCtUlverpmA= + integrity sha512-rxJOljMuWtYlvREBmd6TZYanfcPhNUKtGDZBjBBS8WG1dpN2iwPsRJZgQqN/OtJuiQckdRFOfzogqJClTrsi7g== picocolors@^0.2.1: version "0.2.1" @@ -16026,20 +15869,25 @@ picocolors@^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.2, picomatch@^2.2.3, picomatch@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972" - integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, 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== + +pidtree@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.5.0.tgz#ad5fbc1de78b8a5f99d6fbdd4f6e4eee21d1aca1" + integrity sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA== 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 sha1-7RQaasBDqEnqWISY59yosVMw6Qw= + integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== pify@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + integrity sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg== pify@^4.0.1: version "4.0.1" @@ -16054,26 +15902,19 @@ pify@^5.0.0: pinkie-promise@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= + 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 sha1-clVrgM+g1IqXToDnckjoDtT3+HA= + integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg== -pirates@^4.0.0, pirates@^4.0.1: - version "4.0.4" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.4.tgz#07df81e61028e402735cdd49db701e4885b4e6e6" - integrity sha512-ZIrVPH+A52Dw84R0L3/VS9Op04PuQ2SEoJL6bkshmiTic/HldyW9Tf7oH5mhJZBK7NmDx27vSMrYEXPXclpDKw== - -pixelmatch@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/pixelmatch/-/pixelmatch-4.0.2.tgz#8f47dcec5011b477b67db03c243bc1f3085e8854" - integrity sha1-j0fc7FARtHe2fbA8JDvB8wheiFQ= - dependencies: - pngjs "^3.0.0" +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@^4.1.0, pkg-dir@^4.2.0: version "4.2.0" @@ -16082,13 +15923,6 @@ pkg-dir@4.2.0, pkg-dir@^4.1.0, pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= - dependencies: - find-up "^2.1.0" - pkg-dir@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" @@ -16103,7 +15937,7 @@ pkg-dir@^5.0.0: dependencies: find-up "^5.0.0" -pkg-up@3.1.0: +pkg-up@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== @@ -16120,18 +15954,13 @@ playwright-core@1.27.1: resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.27.1.tgz#840ef662e55a3ed759d8b5d3d00a5f885a7184f4" integrity sha512-9EmeXDncC2Pmp/z+teoVYlvmPWUC6ejSSYZUln7YaP89Z6lpAaiaAnqroUt/BoLo8tn7WYShcfaCh+xofZa44Q== -playwright@^1.14.0, playwright@^1.17.1: +playwright@^1.17.1, playwright@^1.22.2: version "1.27.1" resolved "https://registry.yarnpkg.com/playwright/-/playwright-1.27.1.tgz#4eecac5899566c589d4220ca8acc16abe8a67450" integrity sha512-xXYZ7m36yTtC+oFgqH0eTgullGztKSRMb4yuwLPl8IYSmgBM88QiB+3IWb1mRIC9/NNwcgbG0RwtFlg+EAFQHQ== dependencies: playwright-core "1.27.1" -pngjs@^3.0.0, pngjs@^3.3.3: - version "3.4.0" - resolved "https://registry.yarnpkg.com/pngjs/-/pngjs-3.4.0.tgz#99ca7d725965fb655814eaf65f38f12bbdbf555f" - integrity sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w== - 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" @@ -16146,130 +15975,141 @@ polished@^4.2.2: dependencies: "@babel/runtime" "^7.17.8" -portfinder@^1.0.28: - version "1.0.28" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.28.tgz#67c4622852bd5374dd1dd900f779f53462fac778" - integrity sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA== +portfinder@^1.0.32: + version "1.0.32" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.32.tgz#2fe1b9e58389712429dc2bea5beb2146146c7f81" + integrity sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg== dependencies: - async "^2.6.2" - debug "^3.1.1" - mkdirp "^0.5.5" + async "^2.6.4" + debug "^3.2.7" + mkdirp "^0.5.6" 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 sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= + integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== -postcss-attribute-case-insensitive@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.0.tgz#39cbf6babf3ded1e4abf37d09d6eda21c644105c" - integrity sha512-b4g9eagFGq9T5SWX4+USfVyjIb3liPnjhHHRMP7FMB2kFVpYyfEscV0wP3eaXhKlcHKUut8lt5BGoeylWA/dBQ== +postcss-attribute-case-insensitive@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz#03d761b24afc04c09e757e92ff53716ae8ea2741" + integrity sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ== dependencies: - postcss-selector-parser "^6.0.2" + postcss-selector-parser "^6.0.10" -postcss-calc@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.0.0.tgz#a05b87aacd132740a5db09462a3612453e5df90a" - integrity sha512-5NglwDrcbiy8XXfPM11F3HeC6hoT9W7GUH/Zi5U/p7u3Irv4rHhdDcIZwG0llHXV4ftsBjpfWMXAnXNl4lnt8g== +postcss-calc@^8.2.3: + version "8.2.4" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.2.4.tgz#77b9c29bfcbe8a07ff6693dc87050828889739a5" + integrity sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q== dependencies: - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.0.2" + postcss-selector-parser "^6.0.9" + postcss-value-parser "^4.2.0" -postcss-color-functional-notation@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.0.tgz#e285e90bcef89e82e4ce3f6660dd20b2c4225ead" - integrity sha512-ptwZWYEN2w/3z7HeWbWQRr/7MjJDf2zFO/6CdJ5gsQlC5O6kvjU0RAC3UeKCdxRS8+4bs17CMbTH+hlNs93q1Q== +postcss-clamp@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/postcss-clamp/-/postcss-clamp-4.1.0.tgz#7263e95abadd8c2ba1bd911b0b5a5c9c93e02363" + integrity sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow== dependencies: postcss-value-parser "^4.2.0" -postcss-color-hex-alpha@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.1.tgz#ba0fbc4246a92c51a23b7ecbf66f7d9a956d246c" - integrity sha512-kzp95xRLSFnFdmVIWwbWa3QohE3v/G/wNBvW4U66Lt4wq119I6Bz1EVErrARWZ5+7HskgQ6M4mpiwjo+jOdApA== +postcss-color-functional-notation@^4.2.4: + version "4.2.4" + resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz#21a909e8d7454d3612d1659e471ce4696f28caec" + integrity sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg== dependencies: postcss-value-parser "^4.2.0" -postcss-color-rebeccapurple@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.0.1.tgz#59a9f5493dd7912079eac2aaeebccb076a6abdf8" - integrity sha512-uA5MAOoCwCK32VgYXWwPD3vBDDOi1oMOkLnO+U1Af6ex7JOE0xHVJqnc9w5QS+fPJ9yveXeHKVtdVqzP2WiCsQ== +postcss-color-hex-alpha@^8.0.4: + version "8.0.4" + resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz#c66e2980f2fbc1a63f5b079663340ce8b55f25a5" + integrity sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ== dependencies: postcss-value-parser "^4.2.0" -postcss-colormin@^5.2.2: - version "5.2.2" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.2.2.tgz#019cd6912bef9e7e0924462c5e4ffae241e2f437" - integrity sha512-tSEe3NpqWARUTidDlF0LntPkdlhXqfDFuA1yslqpvvGAfpZ7oBaw+/QXd935NKm2U9p4PED0HDZlzmMk7fVC6g== +postcss-color-rebeccapurple@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz#63fdab91d878ebc4dd4b7c02619a0c3d6a56ced0" + integrity sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-colormin@^5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.3.0.tgz#3cee9e5ca62b2c27e84fce63affc0cfb5901956a" + integrity sha512-WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg== dependencies: browserslist "^4.16.6" caniuse-api "^3.0.0" colord "^2.9.1" postcss-value-parser "^4.2.0" -postcss-convert-values@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.0.2.tgz#879b849dc3677c7d6bc94b6a2c1a3f0808798059" - integrity sha512-KQ04E2yadmfa1LqXm7UIDwW1ftxU/QWZmz6NKnHnUvJ3LEYbbcX6i329f/ig+WnEByHegulocXrECaZGLpL8Zg== +postcss-convert-values@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz#04998bb9ba6b65aa31035d669a6af342c5f9d393" + integrity sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA== dependencies: - postcss-value-parser "^4.1.0" + browserslist "^4.21.4" + postcss-value-parser "^4.2.0" -postcss-custom-media@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-8.0.0.tgz#1be6aff8be7dc9bf1fe014bde3b71b92bb4552f1" - integrity sha512-FvO2GzMUaTN0t1fBULDeIvxr5IvbDXcIatt6pnJghc736nqNgsGao5NT+5+WVLAQiTt6Cb3YUms0jiPaXhL//g== +postcss-custom-media@^8.0.2: + version "8.0.2" + resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz#c8f9637edf45fef761b014c024cee013f80529ea" + integrity sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg== + dependencies: + postcss-value-parser "^4.2.0" -postcss-custom-properties@^12.0.1: - version "12.0.1" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-12.0.1.tgz#9aab8686e73a899de9440ce27cc10595ad3b0e22" - integrity sha512-Z3WjuML7qn6ehesWD4vDqOmM5CZO/qfVknpI9/gDOwMNhcLg3OSgT5wENR4kFDZtCricAE7cxL97bsj5lFnuZQ== +postcss-custom-properties@^12.1.9: + version "12.1.10" + resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-12.1.10.tgz#624517179fd4cf50078a7a60f628d5782e7d4903" + integrity sha512-U3BHdgrYhCrwTVcByFHs9EOBoqcKq4Lf3kXwbTi4hhq0qWhl/pDWq2THbv/ICX/Fl9KqeHBb8OVrTf2OaYF07A== dependencies: postcss-value-parser "^4.2.0" -postcss-custom-selectors@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-6.0.0.tgz#022839e41fbf71c47ae6e316cb0e6213012df5ef" - integrity sha512-/1iyBhz/W8jUepjGyu7V1OPcGbc636snN1yXEQCinb6Bwt7KxsiU7/bLQlp8GwAXzCh7cobBU5odNn/2zQWR8Q== +postcss-custom-selectors@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz#1ab4684d65f30fed175520f82d223db0337239d9" + integrity sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg== dependencies: postcss-selector-parser "^6.0.4" -postcss-dir-pseudo-class@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.1.tgz#90958de910870b9c20bff4279a0b74d54c880224" - integrity sha512-nA6+XVUc5VDe6LrJ5KWFqJ05dxZXzoYiUQJFZSuwLW/8aI462w7gCEhB+RnOA+N3dtrj8B2WTSfcjCac6RJW0A== +postcss-dir-pseudo-class@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz#2bf31de5de76added44e0a25ecf60ae9f7c7c26c" + integrity sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA== dependencies: - postcss-selector-parser "^6.0.7" + postcss-selector-parser "^6.0.10" -postcss-discard-comments@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.0.1.tgz#9eae4b747cf760d31f2447c27f0619d5718901fe" - integrity sha512-lgZBPTDvWrbAYY1v5GYEv8fEO/WhKOu/hmZqmCYfrpD6eyDWWzAOsl2rF29lpvziKO02Gc5GJQtlpkTmakwOWg== +postcss-discard-comments@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz#8df5e81d2925af2780075840c1526f0660e53696" + integrity sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ== -postcss-discard-duplicates@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.0.1.tgz#68f7cc6458fe6bab2e46c9f55ae52869f680e66d" - integrity sha512-svx747PWHKOGpAXXQkCc4k/DsWo+6bc5LsVrAsw+OU+Ibi7klFZCyX54gjYzX4TH+f2uzXjRviLARxkMurA2bA== +postcss-discard-duplicates@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz#9eb4fe8456706a4eebd6d3b7b777d07bad03e848" + integrity sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw== -postcss-discard-empty@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.0.1.tgz#ee136c39e27d5d2ed4da0ee5ed02bc8a9f8bf6d8" - integrity sha512-vfU8CxAQ6YpMxV2SvMcMIyF2LX1ZzWpy0lqHDsOdaKKLQVQGVP1pzhrI9JlsO65s66uQTfkQBKBD/A5gp9STFw== +postcss-discard-empty@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz#e57762343ff7f503fe53fca553d18d7f0c369c6c" + integrity sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A== -postcss-discard-overridden@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.0.1.tgz#454b41f707300b98109a75005ca4ab0ff2743ac6" - integrity sha512-Y28H7y93L2BpJhrdUR2SR2fnSsT+3TVx1NmVQLbcnZWwIUpJ7mfcTC6Za9M2PG6w8j7UQRfzxqn8jU2VwFxo3Q== +postcss-discard-overridden@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz#7e8c5b53325747e9d90131bb88635282fb4a276e" + integrity sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw== -postcss-double-position-gradients@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-3.0.3.tgz#4c528dacfe3b7a52ea99665866912072184322b0" - integrity sha512-x3DYDhCsKS/sjH6t+sM9R+pq4lCwdHGVeUOpE/gDybfY33acJJie+NzRigKJVze7E/jH/1WGl/qPRV90Lso7Mg== +postcss-double-position-gradients@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz#b96318fdb477be95997e86edd29c6e3557a49b91" + integrity sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ== dependencies: + "@csstools/postcss-progressive-custom-properties" "^1.1.0" postcss-value-parser "^4.2.0" -postcss-env-function@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-env-function/-/postcss-env-function-4.0.3.tgz#cd56e3898d87b69c35d9b44b1df050a59757b803" - integrity sha512-RQ0CwXX161FLuC525Lx7VqsHXSPQvgErgOMcbfuAKPq1hgHDPJLemowVaPuWF4E3IO8rgUbStaRLGTM5VlN/vw== +postcss-env-function@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/postcss-env-function/-/postcss-env-function-4.0.6.tgz#7b2d24c812f540ed6eda4c81f6090416722a8e7a" + integrity sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA== dependencies: postcss-value-parser "^4.2.0" @@ -16285,41 +16125,41 @@ postcss-flexbugs-fixes@^5.0.2: resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-5.0.2.tgz#2028e145313074fc9abe276cb7ca14e5401eb49d" integrity sha512-18f9voByak7bTktR2QgDveglpn9DTbBWPUzSOe9g0N4WR/2eSt6Vrcbf0hmspvMI6YWGywz6B9f7jzpFNJJgnQ== -postcss-focus-visible@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-6.0.2.tgz#b5034899d098c26c68e6f901e2674c88ee1aaede" - integrity sha512-KYztrdQRRr+pPJQRAyr9HAEr8I8TUfpSyqOo8qddrjtMLap7Ud1FAF8szi4ZWrhMmch3EwL4RQMqsneOByWZIA== +postcss-focus-visible@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz#50c9ea9afa0ee657fb75635fabad25e18d76bf9e" + integrity sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw== dependencies: - postcss-selector-parser "^6.0.7" + postcss-selector-parser "^6.0.9" -postcss-focus-within@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-5.0.2.tgz#ba9229b68c03ad65aa4ead81ca29717b5b4dbf62" - integrity sha512-0zm8gM/fpFZtWM8drbj5M6HKVztHgLqtHygCMB494SOkudtnePpq5nv0ie2Jx/BrD+A5nhj0uK3tuMnEpjKonA== +postcss-focus-within@^5.0.4: + version "5.0.4" + resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz#5b1d2ec603195f3344b716c0b75f61e44e8d2e20" + integrity sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ== dependencies: - postcss-selector-parser "^6.0.7" + postcss-selector-parser "^6.0.9" postcss-font-variant@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz#efd59b4b7ea8bb06127f2d031bfbb7f24d32fa66" integrity sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA== -postcss-gap-properties@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-3.0.1.tgz#c663a2f116d980d8901f33c583e7205109acc87f" - integrity sha512-t7ztwUmG17KQRTHDWeekeSQ41ZsjYK+OJagee3E3hFS46n9RD5QcT/NRxwbc2DWjVSL5GQf46al3wEiH6FRSKg== +postcss-gap-properties@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz#f7e3cddcf73ee19e94ccf7cb77773f9560aa2fff" + integrity sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg== -postcss-image-set-function@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-4.0.3.tgz#1be9324adf679226980c554542ea3fe5d056856f" - integrity sha512-+EZRaCg/MzsKW2ggTy26mG/uoHnEAjCcGICCkUYgg2PPguZaRjSBKY4KHiWcdH6ydsR7enlnO3i7bQ+Fpbx7vQ== +postcss-image-set-function@^4.0.7: + version "4.0.7" + resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz#08353bd756f1cbfb3b6e93182c7829879114481f" + integrity sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw== dependencies: postcss-value-parser "^4.2.0" postcss-import@^14.0.0: - version "14.0.2" - resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-14.0.2.tgz#60eff77e6be92e7b67fe469ec797d9424cae1aa1" - integrity sha512-BJ2pVK4KhUyMcqjuKs9RijV5tatNzNa73e/32aBVE/ejYPe37iH+6vAu9WvqUkB5OAYgLHzbSvzHnorybJCm9g== + version "14.1.0" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-14.1.0.tgz#a7333ffe32f0b8795303ee9e40215dac922781f0" + integrity sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw== dependencies: postcss-value-parser "^4.0.0" read-cache "^1.0.0" @@ -16330,11 +16170,12 @@ postcss-initial@^4.0.1: resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-4.0.1.tgz#529f735f72c5724a0fb30527df6fb7ac54d7de42" integrity sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ== -postcss-lab-function@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-4.0.2.tgz#6b91acb5f44e3ddc283c2c593b8858e5c261bda4" - integrity sha512-IkX1S1CROQF9uCu5F4/Ib5SRFDJXlJg3ig9x4OJkKIF16y0o7WRKfFje2ym+yThfwYjozwHZgf37Xwbnscpipg== +postcss-lab-function@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz#6fe4c015102ff7cd27d1bd5385582f67ebdbdc98" + integrity sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w== dependencies: + "@csstools/postcss-progressive-custom-properties" "^1.1.0" postcss-value-parser "^4.2.0" postcss-loader@^4.2.0: @@ -16366,10 +16207,10 @@ postcss-loader@^6.1.0: klona "^2.0.5" semver "^7.3.5" -postcss-logical@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-5.0.1.tgz#48dcdfca520d00ac5a450289d37d5db8f532de70" - integrity sha512-cKekWCoZrxdQktbj8PyCOqQWxsYAPyHjoeBPedkQzfWuEqRm0KVFRHypsHAiH2dDVUae52yx8PBtWS+V3BqT5w== +postcss-logical@^5.0.4: + version "5.0.4" + resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-5.0.4.tgz#ec75b1ee54421acc04d5921576b7d8db6b0e6f73" + integrity sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g== postcss-media-minmax@^5.0.0: version "5.0.0" @@ -16379,58 +16220,56 @@ postcss-media-minmax@^5.0.0: postcss-media-query-parser@^0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#27b39c6f4d94f81b1a73b8f76351c609e5cef244" - integrity sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ= + integrity sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig== -postcss-merge-longhand@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.0.4.tgz#41f4f3270282ea1a145ece078b7679f0cef21c32" - integrity sha512-2lZrOVD+d81aoYkZDpWu6+3dTAAGkCKbV5DoRhnIR7KOULVrI/R7bcMjhrH9KTRy6iiHKqmtG+n/MMj1WmqHFw== +postcss-merge-longhand@^5.1.7: + version "5.1.7" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz#24a1bdf402d9ef0e70f568f39bdc0344d568fb16" + integrity sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ== dependencies: - postcss-value-parser "^4.1.0" - stylehacks "^5.0.1" + postcss-value-parser "^4.2.0" + stylehacks "^5.1.1" -postcss-merge-rules@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.0.3.tgz#b5cae31f53129812a77e3eb1eeee448f8cf1a1db" - integrity sha512-cEKTMEbWazVa5NXd8deLdCnXl+6cYG7m2am+1HzqH0EnTdy8fRysatkaXb2dEnR+fdaDxTvuZ5zoBdv6efF6hg== +postcss-merge-rules@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.1.3.tgz#8f97679e67cc8d08677a6519afca41edf2220894" + integrity sha512-LbLd7uFC00vpOuMvyZop8+vvhnfRGpp2S+IMQKeuOZZapPRY4SMq5ErjQeHbHsjCUgJkRNrlU+LmxsKIqPKQlA== dependencies: - browserslist "^4.16.6" + browserslist "^4.21.4" caniuse-api "^3.0.0" - cssnano-utils "^2.0.1" + cssnano-utils "^3.1.0" postcss-selector-parser "^6.0.5" -postcss-minify-font-values@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.0.1.tgz#a90cefbfdaa075bd3dbaa1b33588bb4dc268addf" - integrity sha512-7JS4qIsnqaxk+FXY1E8dHBDmraYFWmuL6cgt0T1SWGRO5bzJf8sUoelwa4P88LEWJZweHevAiDKxHlofuvtIoA== +postcss-minify-font-values@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz#f1df0014a726083d260d3bd85d7385fb89d1f01b" + integrity sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA== dependencies: - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-minify-gradients@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.0.3.tgz#f970a11cc71e08e9095e78ec3a6b34b91c19550e" - integrity sha512-Z91Ol22nB6XJW+5oe31+YxRsYooxOdFKcbOqY/V8Fxse1Y3vqlNRpi1cxCqoACZTQEhl+xvt4hsbWiV5R+XI9Q== +postcss-minify-gradients@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz#f1fe1b4f498134a5068240c2f25d46fcd236ba2c" + integrity sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw== dependencies: colord "^2.9.1" - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -postcss-minify-params@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.0.2.tgz#1b644da903473fbbb18fbe07b8e239883684b85c" - integrity sha512-qJAPuBzxO1yhLad7h2Dzk/F7n1vPyfHfCCh5grjGfjhi1ttCnq4ZXGIW77GSrEbh9Hus9Lc/e/+tB4vh3/GpDg== +postcss-minify-params@^5.1.4: + version "5.1.4" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz#c06a6c787128b3208b38c9364cfc40c8aa5d7352" + integrity sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw== dependencies: - alphanum-sort "^1.0.2" - browserslist "^4.16.6" - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + browserslist "^4.21.4" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -postcss-minify-selectors@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.1.0.tgz#4385c845d3979ff160291774523ffa54eafd5a54" - integrity sha512-NzGBXDa7aPsAcijXZeagnJBKBPMYLaJJzB8CQh6ncvyl2sIndLVWfbcDi0SBjRWk5VqEjXvf8tYwzoKf4Z07og== +postcss-minify-selectors@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz#d4e7e6b46147b8117ea9325a915a801d5fe656c6" + integrity sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg== dependencies: - alphanum-sort "^1.0.2" postcss-selector-parser "^6.0.5" postcss-modules-extract-imports@^2.0.0: @@ -16494,165 +16333,185 @@ postcss-modules-values@^4.0.0: dependencies: icss-utils "^5.0.0" -postcss-nesting@^10.0.3: - version "10.1.0" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-10.1.0.tgz#4e3deab5b18cd443495cf6be818ab758a9c3d71d" - integrity sha512-HQ8kc/kLid2YjTOjlUC2Lk9JCGTJ/WDqRtEbJWWTQNs0KObgp3a1DFQhS19toVK8d/2q2YmVasjdQaWqZhotPg== +postcss-nesting@^10.2.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-10.2.0.tgz#0b12ce0db8edfd2d8ae0aaf86427370b898890be" + integrity sha512-EwMkYchxiDiKUhlJGzWsD9b2zvq/r2SSubcRrgP+jujMXFzqvANLt16lJANC+5uZ6hjI7lpRmI6O8JIl+8l1KA== dependencies: - postcss-selector-parser "^6.0.7" + "@csstools/selector-specificity" "^2.0.0" + postcss-selector-parser "^6.0.10" -postcss-normalize-charset@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.0.1.tgz#121559d1bebc55ac8d24af37f67bd4da9efd91d0" - integrity sha512-6J40l6LNYnBdPSk+BHZ8SF+HAkS4q2twe5jnocgd+xWpz/mx/5Sa32m3W1AA8uE8XaXN+eg8trIlfu8V9x61eg== +postcss-normalize-charset@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz#9302de0b29094b52c259e9b2cf8dc0879879f0ed" + integrity sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg== -postcss-normalize-display-values@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.0.1.tgz#62650b965981a955dffee83363453db82f6ad1fd" - integrity sha512-uupdvWk88kLDXi5HEyI9IaAJTE3/Djbcrqq8YgjvAVuzgVuqIk3SuJWUisT2gaJbZm1H9g5k2w1xXilM3x8DjQ== +postcss-normalize-display-values@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz#72abbae58081960e9edd7200fcf21ab8325c3da8" + integrity sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA== dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-normalize-positions@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.0.1.tgz#868f6af1795fdfa86fbbe960dceb47e5f9492fe5" - integrity sha512-rvzWAJai5xej9yWqlCb1OWLd9JjW2Ex2BCPzUJrbaXmtKtgfL8dBMOOMTX6TnvQMtjk3ei1Lswcs78qKO1Skrg== +postcss-normalize-positions@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz#ef97279d894087b59325b45c47f1e863daefbb92" + integrity sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg== dependencies: - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-normalize-repeat-style@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.0.1.tgz#cbc0de1383b57f5bb61ddd6a84653b5e8665b2b5" - integrity sha512-syZ2itq0HTQjj4QtXZOeefomckiV5TaUO6ReIEabCh3wgDs4Mr01pkif0MeVwKyU/LHEkPJnpwFKRxqWA/7O3w== +postcss-normalize-repeat-style@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz#e9eb96805204f4766df66fd09ed2e13545420fb2" + integrity sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g== dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-normalize-string@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.0.1.tgz#d9eafaa4df78c7a3b973ae346ef0e47c554985b0" - integrity sha512-Ic8GaQ3jPMVl1OEn2U//2pm93AXUcF3wz+OriskdZ1AOuYV25OdgS7w9Xu2LO5cGyhHCgn8dMXh9bO7vi3i9pA== +postcss-normalize-string@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz#411961169e07308c82c1f8c55f3e8a337757e228" + integrity sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w== dependencies: - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-normalize-timing-functions@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.0.1.tgz#8ee41103b9130429c6cbba736932b75c5e2cb08c" - integrity sha512-cPcBdVN5OsWCNEo5hiXfLUnXfTGtSFiBU9SK8k7ii8UD7OLuznzgNRYkLZow11BkQiiqMcgPyh4ZqXEEUrtQ1Q== +postcss-normalize-timing-functions@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz#d5614410f8f0b2388e9f240aa6011ba6f52dafbb" + integrity sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg== dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-normalize-unicode@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.0.1.tgz#82d672d648a411814aa5bf3ae565379ccd9f5e37" - integrity sha512-kAtYD6V3pK0beqrU90gpCQB7g6AOfP/2KIPCVBKJM2EheVsBQmx/Iof+9zR9NFKLAx4Pr9mDhogB27pmn354nA== +postcss-normalize-unicode@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz#f67297fca3fea7f17e0d2caa40769afc487aa030" + integrity sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA== dependencies: - browserslist "^4.16.0" - postcss-value-parser "^4.1.0" + browserslist "^4.21.4" + postcss-value-parser "^4.2.0" -postcss-normalize-url@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.0.4.tgz#3b0322c425e31dd275174d0d5db0e466f50810fb" - integrity sha512-cNj3RzK2pgQQyNp7dzq0dqpUpQ/wYtdDZM3DepPmFjCmYIfceuD9VIAcOdvrNetjIU65g1B4uwdP/Krf6AFdXg== +postcss-normalize-url@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz#ed9d88ca82e21abef99f743457d3729a042adcdc" + integrity sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew== dependencies: normalize-url "^6.0.1" postcss-value-parser "^4.2.0" -postcss-normalize-whitespace@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.0.1.tgz#b0b40b5bcac83585ff07ead2daf2dcfbeeef8e9a" - integrity sha512-iPklmI5SBnRvwceb/XH568yyzK0qRVuAG+a1HFUsFRf11lEJTiQQa03a4RSCQvLKdcpX7XsI1Gen9LuLoqwiqA== +postcss-normalize-whitespace@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz#08a1a0d1ffa17a7cc6efe1e6c9da969cc4493cfa" + integrity sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA== dependencies: - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-ordered-values@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.0.2.tgz#1f351426977be00e0f765b3164ad753dac8ed044" - integrity sha512-8AFYDSOYWebJYLyJi3fyjl6CqMEG/UVworjiyK1r573I56kb3e879sCJLGvR3merj+fAdPpVplXKQZv+ey6CgQ== +postcss-opacity-percentage@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz#bd698bb3670a0a27f6d657cc16744b3ebf3b1145" + integrity sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w== + +postcss-ordered-values@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz#b6fd2bd10f937b23d86bc829c69e7732ce76ea38" + integrity sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ== dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -postcss-overflow-shorthand@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.1.tgz#d0d0a9e2bbf3428a31e0a9d81e4a0dc1164ce356" - integrity sha512-/ajDNoTF+LiuhIZjenjb/ndBoKP/WYy/dTT8BCCtLU1wrezkax+lXw5r3c5qR4cadNNMbksAnhWJXNjd9xNTHA== +postcss-overflow-shorthand@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz#7ed6486fec44b76f0eab15aa4866cda5d55d893e" + integrity sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A== + dependencies: + postcss-value-parser "^4.2.0" postcss-page-break@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-3.0.4.tgz#7fbf741c233621622b68d435babfb70dd8c1ee5f" integrity sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ== -postcss-place@^7.0.2: - version "7.0.2" - resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-7.0.2.tgz#f54e971a348e8fa76d65d94420a83302fc9416e1" - integrity sha512-XsZCU8X8M9dHKGlxdycihxPajSkRd4u+cIUJz/FgC61Mr/swStI3xAvsYai9Fh22kU+VVAn7ihoZk8h9pQhDfA== +postcss-place@^7.0.5: + version "7.0.5" + resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-7.0.5.tgz#95dbf85fd9656a3a6e60e832b5809914236986c4" + integrity sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g== dependencies: postcss-value-parser "^4.2.0" postcss-preset-env@^7.0.1: - version "7.1.0" - resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-7.1.0.tgz#bb91486e15aa30307292acfcea07e871f30714d5" - integrity sha512-YZI44uxVJQQu18TeHEoDtdLsjKLQpCpzt/4FAzadIcnNYwvKSQqvxaHE6uWobEWQrcfU42zIddMPUKgYQxZs8g== - dependencies: - autoprefixer "^10.4.0" - browserslist "^4.19.1" - caniuse-lite "^1.0.30001291" - css-blank-pseudo "^3.0.0" - css-has-pseudo "^3.0.0" - css-prefers-color-scheme "^6.0.0" - cssdb "^5.0.0" - postcss-attribute-case-insensitive "^5.0.0" - postcss-color-functional-notation "^4.1.0" - postcss-color-hex-alpha "^8.0.1" - postcss-color-rebeccapurple "^7.0.1" - postcss-custom-media "^8.0.0" - postcss-custom-properties "^12.0.1" - postcss-custom-selectors "^6.0.0" - postcss-dir-pseudo-class "^6.0.1" - postcss-double-position-gradients "^3.0.3" - postcss-env-function "^4.0.3" - postcss-focus-visible "^6.0.2" - postcss-focus-within "^5.0.2" + version "7.8.2" + resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-7.8.2.tgz#4c834d5cbd2e29df2abf59118947c456922b79ba" + integrity sha512-rSMUEaOCnovKnwc5LvBDHUDzpGP+nrUeWZGWt9M72fBvckCi45JmnJigUr4QG4zZeOHmOCNCZnd2LKDvP++ZuQ== + dependencies: + "@csstools/postcss-cascade-layers" "^1.1.0" + "@csstools/postcss-color-function" "^1.1.1" + "@csstools/postcss-font-format-keywords" "^1.0.1" + "@csstools/postcss-hwb-function" "^1.0.2" + "@csstools/postcss-ic-unit" "^1.0.1" + "@csstools/postcss-is-pseudo-class" "^2.0.7" + "@csstools/postcss-nested-calc" "^1.0.0" + "@csstools/postcss-normalize-display-values" "^1.0.1" + "@csstools/postcss-oklab-function" "^1.1.1" + "@csstools/postcss-progressive-custom-properties" "^1.3.0" + "@csstools/postcss-stepped-value-functions" "^1.0.1" + "@csstools/postcss-text-decoration-shorthand" "^1.0.0" + "@csstools/postcss-trigonometric-functions" "^1.0.2" + "@csstools/postcss-unset-value" "^1.0.2" + autoprefixer "^10.4.11" + browserslist "^4.21.3" + css-blank-pseudo "^3.0.3" + css-has-pseudo "^3.0.4" + css-prefers-color-scheme "^6.0.3" + cssdb "^7.0.1" + postcss-attribute-case-insensitive "^5.0.2" + postcss-clamp "^4.1.0" + postcss-color-functional-notation "^4.2.4" + postcss-color-hex-alpha "^8.0.4" + postcss-color-rebeccapurple "^7.1.1" + postcss-custom-media "^8.0.2" + postcss-custom-properties "^12.1.9" + postcss-custom-selectors "^6.0.3" + postcss-dir-pseudo-class "^6.0.5" + postcss-double-position-gradients "^3.1.2" + postcss-env-function "^4.0.6" + postcss-focus-visible "^6.0.4" + postcss-focus-within "^5.0.4" postcss-font-variant "^5.0.0" - postcss-gap-properties "^3.0.1" - postcss-image-set-function "^4.0.3" + postcss-gap-properties "^3.0.5" + postcss-image-set-function "^4.0.7" postcss-initial "^4.0.1" - postcss-lab-function "^4.0.2" - postcss-logical "^5.0.1" + postcss-lab-function "^4.2.1" + postcss-logical "^5.0.4" postcss-media-minmax "^5.0.0" - postcss-nesting "^10.0.3" - postcss-overflow-shorthand "^3.0.1" + postcss-nesting "^10.2.0" + postcss-opacity-percentage "^1.1.2" + postcss-overflow-shorthand "^3.0.4" postcss-page-break "^3.0.4" - postcss-place "^7.0.2" - postcss-pseudo-class-any-link "^7.0.1" + postcss-place "^7.0.5" + postcss-pseudo-class-any-link "^7.1.6" postcss-replace-overflow-wrap "^4.0.0" - postcss-selector-not "^5.0.0" + postcss-selector-not "^6.0.1" + postcss-value-parser "^4.2.0" -postcss-pseudo-class-any-link@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.0.1.tgz#9b7b3572b78b0d6e2016bcc8762b254e341ebdde" - integrity sha512-Zt+VMw9qX7Um/cYOaywOQvXipDw/U3U83L6MFHocbjVIhLd+x5G4SSDmKm8sW2/HlaTno2Cazub8USrDvJ4DLA== +postcss-pseudo-class-any-link@^7.1.6: + version "7.1.6" + resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz#2693b221902da772c278def85a4d9a64b6e617ab" + integrity sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w== dependencies: - postcss-selector-parser "^6.0.7" + postcss-selector-parser "^6.0.10" -postcss-reduce-initial@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.0.2.tgz#fa424ce8aa88a89bc0b6d0f94871b24abe94c048" - integrity sha512-v/kbAAQ+S1V5v9TJvbGkV98V2ERPdU6XvMcKMjqAlYiJ2NtsHGlKYLPjWWcXlaTKNxooId7BGxeraK8qXvzKtw== +postcss-reduce-initial@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.1.1.tgz#c18b7dfb88aee24b1f8e4936541c29adbd35224e" + integrity sha512-//jeDqWcHPuXGZLoolFrUXBDyuEGbr9S2rMo19bkTIjBQ4PqkaO+oI8wua5BOUxpfi97i3PCoInsiFIEBfkm9w== dependencies: - browserslist "^4.16.6" + browserslist "^4.21.4" caniuse-api "^3.0.0" -postcss-reduce-transforms@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.0.1.tgz#93c12f6a159474aa711d5269923e2383cedcf640" - integrity sha512-a//FjoPeFkRuAguPscTVmRQUODP+f3ke2HqFNgGPwdYnpeC29RZdCBvGRGTsKpMURb/I3p6jdKoBQ2zI+9Q7kA== +postcss-reduce-transforms@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz#333b70e7758b802f3dd0ddfe98bb1ccfef96b6e9" + integrity sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ== dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" postcss-replace-overflow-wrap@^4.0.0: version "4.0.0" @@ -16662,7 +16521,7 @@ postcss-replace-overflow-wrap@^4.0.0: postcss-resolve-nested-selector@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz#29ccbc7c37dedfac304e9fff0bf1596b3f6a0e4e" - integrity sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4= + integrity sha512-HvExULSwLqHLgUy1rl3ANIqCsvMS0WHss2UOsXhXnQaZ9VCc2oBvIpXrl00IUFT5ZDITME0o6oiXeiHr2SAIfw== postcss-safe-parser@^6.0.0: version "6.0.0" @@ -16670,42 +16529,41 @@ postcss-safe-parser@^6.0.0: integrity sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ== postcss-scss@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-4.0.2.tgz#39ddcc0ab32f155d5ab328ee91353d67a52d537b" - integrity sha512-xfdkU128CkKKKVAwkyt0M8OdnelJ3MRcIRAPPQkRpoPeuzWY3RIeg7piRCpZ79MK7Q16diLXMMAD9dN5mauPlQ== + version "4.0.5" + resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-4.0.5.tgz#8ee33c1dda8d9d4753b565ec79014803dc6edabf" + integrity sha512-F7xpB6TrXyqUh3GKdyB4Gkp3QL3DDW1+uI+gxx/oJnUt/qXI4trj5OGlp9rOKdoABGULuqtqeG+3HEVQk4DjmA== -postcss-selector-not@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-5.0.0.tgz#ac5fc506f7565dd872f82f5314c0f81a05630dc7" - integrity sha512-/2K3A4TCP9orP4TNS7u3tGdRFVKqz/E6pX3aGnriPG0jU78of8wsUcqE4QAhWEU0d+WnMSF93Ah3F//vUtK+iQ== +postcss-selector-not@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz#8f0a709bf7d4b45222793fc34409be407537556d" + integrity sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ== dependencies: - balanced-match "^1.0.0" + postcss-selector-parser "^6.0.10" -postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.6, postcss-selector-parser@^6.0.7, postcss-selector-parser@^6.0.8: - version "6.0.8" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.8.tgz#f023ed7a9ea736cd7ef70342996e8e78645a7914" - integrity sha512-D5PG53d209Z1Uhcc0qAZ5U3t5HagH3cxu+WLZ22jt3gLUpXM4eXXfiO14jiDWST3NNooX/E8wISfOhZ9eIjGTQ== +postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.6, postcss-selector-parser@^6.0.9: + version "6.0.10" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz#79b61e2c0d1bfc2602d549e11d0876256f8df88d" + integrity sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w== dependencies: cssesc "^3.0.0" util-deprecate "^1.0.2" -postcss-svgo@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.0.3.tgz#d945185756e5dfaae07f9edb0d3cae7ff79f9b30" - integrity sha512-41XZUA1wNDAZrQ3XgWREL/M2zSw8LJPvb5ZWivljBsUQAGoEKMYm6okHsTjJxKYI4M75RQEH4KYlEM52VwdXVA== +postcss-svgo@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.1.0.tgz#0a317400ced789f233a28826e77523f15857d80d" + integrity sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA== dependencies: - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" svgo "^2.7.0" -postcss-unique-selectors@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.0.2.tgz#5d6893daf534ae52626708e0d62250890108c0c1" - integrity sha512-w3zBVlrtZm7loQWRPVC0yjUwwpty7OM6DnEHkxcSQXO1bMS3RJ+JUS5LFMSDZHJcvGsRwhZinCWVqn8Kej4EDA== +postcss-unique-selectors@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz#a9f273d1eacd09e9aa6088f4b0507b18b1b541b6" + integrity sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA== dependencies: - alphanum-sort "^1.0.2" postcss-selector-parser "^6.0.5" -postcss-value-parser@^4.0.0, postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: +postcss-value-parser@^4.0.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== @@ -16727,35 +16585,27 @@ postcss@^7.0.14, postcss@^7.0.26, postcss@^7.0.32, postcss@^7.0.35, postcss@^7.0 picocolors "^0.2.1" source-map "^0.6.1" -postcss@^8.2.15, postcss@^8.2.9, postcss@^8.3.11, postcss@^8.4.0: - version "8.4.5" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.5.tgz#bae665764dfd4c6fcc24dc0fdf7e7aa00cc77f95" - integrity sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg== +postcss@^8.2.15, postcss@^8.2.9, postcss@^8.3.11, postcss@^8.4.0, postcss@^8.4.17, postcss@^8.4.7: + version "8.4.18" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.18.tgz#6d50046ea7d3d66a85e0e782074e7203bc7fbca2" + integrity sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA== dependencies: - nanoid "^3.1.30" + nanoid "^3.3.4" picocolors "^1.0.0" - source-map-js "^1.0.1" - -potrace@^2.1.8: - version "2.1.8" - resolved "https://registry.yarnpkg.com/potrace/-/potrace-2.1.8.tgz#50f6fba92e1e39ddef6f979b0a0f841809e0acf2" - integrity sha512-V9hI7UMJyEhNZjM8CbZaP/804ZRLgzWkCS9OOYnEZkszzj3zKR/erRdj0uFMcN3pp6x4B+AIZebmkQgGRinG/g== - dependencies: - jimp "^0.14.0" + source-map-js "^1.0.2" -prebuild-install@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-7.0.0.tgz#3c5ce3902f1cb9d6de5ae94ca53575e4af0c1574" - integrity sha512-IvSenf33K7JcgddNz2D5w521EgO+4aMMjFt73Uk9FRzQ7P+QZPKrp7qPsDydsSwjGt3T5xRNnM1bj1zMTD5fTA== +prebuild-install@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-7.1.1.tgz#de97d5b34a70a0c81334fd24641f2a1702352e45" + integrity sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw== dependencies: - detect-libc "^1.0.3" + detect-libc "^2.0.0" expand-template "^2.0.3" github-from-package "0.0.0" minimist "^1.2.3" mkdirp-classic "^0.5.3" napi-build-utils "^1.0.1" node-abi "^3.3.0" - npmlog "^4.0.1" pump "^3.0.0" rc "^1.2.7" simple-get "^4.0.0" @@ -16780,12 +16630,12 @@ prelude-ls@^1.2.1: prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= + integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w== prepend-http@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" - integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= + integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA== prettier-linter-helpers@^1.0.0: version "1.0.0" @@ -16799,15 +16649,10 @@ prettier-linter-helpers@^1.0.0: resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.0.tgz#b6a5bf1284026ae640f17f7ff5658a7567fc0d18" integrity sha512-kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w== -prettier@^1.19.1: - version "1.19.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" - integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== - -prettier@^2.5.0, prettier@^2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.5.1.tgz#fff75fa9d519c54cf0fce328c1017d94546bc56a" - integrity sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg== +prettier@^2.5.0, prettier@^2.7.1: + version "2.7.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64" + integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g== pretty-bytes@^5.1.0, pretty-bytes@^5.3.0, pretty-bytes@^5.4.1: version "5.6.0" @@ -16830,16 +16675,6 @@ pretty-error@^4.0.0: lodash "^4.17.20" renderkid "^3.0.0" -pretty-format@^25.5.0: - version "25.5.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.5.0.tgz#7873c1d774f682c34b8d48b6743a2bf2ac55791a" - integrity sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ== - dependencies: - "@jest/types" "^25.5.0" - ansi-regex "^5.0.0" - ansi-styles "^4.0.0" - react-is "^16.12.0" - pretty-format@^26.0.0, pretty-format@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" @@ -16850,12 +16685,11 @@ pretty-format@^26.0.0, pretty-format@^26.6.2: ansi-styles "^4.0.0" react-is "^17.0.1" -pretty-format@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.4.2.tgz#e4ce92ad66c3888423d332b40477c87d1dac1fb8" - integrity sha512-p0wNtJ9oLuvgOQDEIZ9zQjZffK7KtyR6Si0jnXULIDwrlNF8Cuir3AZP0hHv0jmKuNN/edOnbMjnzd4uTcmWiw== +pretty-format@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" + integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== dependencies: - "@jest/types" "^27.4.2" ansi-regex "^5.0.1" ansi-styles "^5.0.0" react-is "^17.0.1" @@ -16863,7 +16697,7 @@ pretty-format@^27.4.2: pretty-hrtime@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" - integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE= + integrity sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A== pretty-quick@^3.1.1: version "3.1.3" @@ -16878,26 +16712,26 @@ pretty-quick@^3.1.1: multimatch "^4.0.0" prism-react-renderer@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/prism-react-renderer/-/prism-react-renderer-1.2.1.tgz#392460acf63540960e5e3caa699d851264e99b89" - integrity sha512-w23ch4f75V1Tnz8DajsYKvY5lF7H1+WvzvLUcF0paFxkTHSp42RS0H5CttdN2Q8RR3DRGZ9v5xD/h3n8C8kGmg== + 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== prismjs@^1.27.0: - version "1.28.0" - resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.28.0.tgz#0d8f561fa0f7cf6ebca901747828b149147044b6" - integrity sha512-8aaXdYvl1F7iC7Xm1spqSaY/OJBpYW3v+KJ+F17iYxvdc8sfjW194COK5wVhMZX45tGteiBQgdvD/nhxcRwylw== + version "1.29.0" + resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.29.0.tgz#f113555a8fa9b57c35e637bba27509dcf802dd12" + integrity sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q== prismjs@~1.27.0: version "1.27.0" resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.27.0.tgz#bb6ee3138a0b438a3653dd4d6ce0cc6510a45057" integrity sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA== -probe-image-size@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/probe-image-size/-/probe-image-size-6.0.0.tgz#4a85b19d5af4e29a8de7d53a9aa036f6fd02f5f4" - integrity sha512-99PZ5+RU4gqiTfK5ZDMDkZtn6eL4WlKfFyVJV7lFQvH3iGmQ85DqMTOdxorERO26LHkevR2qsxnHp0x/2UDJPA== +probe-image-size@^7.2.3: + version "7.2.3" + resolved "https://registry.yarnpkg.com/probe-image-size/-/probe-image-size-7.2.3.tgz#d49c64be540ec8edea538f6f585f65a9b3ab4309" + integrity sha512-HubhG4Rb2UH8YtV4ba0Vp5bQ7L78RTONYu/ujmCu5nBI8wGv24s4E9xSKBi0N1MowRpxk76pFCpJtW0KPzOK0w== dependencies: - deepmerge "^4.0.0" + lodash.merge "^4.6.2" needle "^2.5.2" stream-parser "~0.3.1" @@ -16909,7 +16743,7 @@ process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: process@^0.11.10: version "0.11.10" resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= + integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== progress@2.0.3, progress@^2.0.0, progress@^2.0.3: version "2.0.3" @@ -16937,13 +16771,12 @@ promise.prototype.finally@^3.1.0: define-properties "^1.1.3" es-abstract "^1.19.1" -prompts@2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.0.tgz#4aa5de0723a231d1ee9121c40fdf663df73f61d7" - integrity sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ== +promise@^7.1.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" + integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== dependencies: - kleur "^3.0.3" - sisteransi "^1.0.5" + asap "~2.0.3" prompts@^2.0.1, prompts@^2.4.0, prompts@^2.4.2: version "2.4.2" @@ -16953,10 +16786,10 @@ prompts@^2.0.1, prompts@^2.4.0, prompts@^2.4.2: kleur "^3.0.3" sisteransi "^1.0.5" -prop-types@^15.0.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: - version "15.8.0" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.0.tgz#d237e624c45a9846e469f5f31117f970017ff588" - integrity sha512-fDGekdaHh65eI3lMi5OnErU6a8Ighg2KjcjQxO7m8VHyWjcPyj5kiOgV1LQDOOOgVy3+5FgjXvdSSX7B8/5/4g== +prop-types@^15.0.0, prop-types@^15.6.1, prop-types@^15.6.2, 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== dependencies: loose-envify "^1.4.0" object-assign "^4.1.1" @@ -16978,12 +16811,7 @@ property-information@^5.0.0, property-information@^5.3.0: dependencies: xtend "^4.0.0" -protocols@^1.4.0: - version "1.4.8" - resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" - integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg== - -protocols@^2.0.1: +protocols@^2.0.0, protocols@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/protocols/-/protocols-2.0.1.tgz#8f155da3fc0f32644e83c5782c8e8212ccf70a86" integrity sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q== @@ -17004,12 +16832,12 @@ proxy-from-env@1.1.0: pseudomap@^1.0.1, pseudomap@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== psl@^1.1.33: - version "1.8.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" - integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== + version "1.9.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" + integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== pump@^2.0.0: version "2.0.1" @@ -17039,7 +16867,7 @@ pumpify@^1.3.5: punycode@1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= + integrity sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw== punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" @@ -17053,23 +16881,23 @@ pupa@^2.0.1, pupa@^2.1.1: dependencies: escape-goat "^2.0.0" -puppeteer-core@^11.0.0: - version "11.0.0" - resolved "https://registry.yarnpkg.com/puppeteer-core/-/puppeteer-core-11.0.0.tgz#d7aa19634948671fa35d14027fa45be807c340cb" - integrity sha512-hfQ39KNP0qKplQ86iaCNXHH9zpWlV01UFdggt2qffgWeCBF9KMavwP/k/iK/JidPPWfOnKZhDLSHZVSUr73DtA== +puppeteer-core@^13.1.3: + version "13.7.0" + resolved "https://registry.yarnpkg.com/puppeteer-core/-/puppeteer-core-13.7.0.tgz#3344bee3994163f49120a55ddcd144a40575ba5b" + integrity sha512-rXja4vcnAzFAP1OVLq/5dWNfwBGuzcOARJ6qGV7oAZhnLmVRU8G5MsdeQEAOy332ZhkIOnn9jp15R89LKHyp2Q== dependencies: - debug "4.3.2" - devtools-protocol "0.0.901419" + cross-fetch "3.1.5" + debug "4.3.4" + devtools-protocol "0.0.981744" extract-zip "2.0.1" - https-proxy-agent "5.0.0" - node-fetch "2.6.5" + https-proxy-agent "5.0.1" pkg-dir "4.2.0" progress "2.0.3" proxy-from-env "1.1.0" rimraf "3.0.2" tar-fs "2.1.1" unbzip2-stream "1.4.3" - ws "8.2.3" + ws "8.5.0" pvtsutils@^1.3.2: version "1.3.2" @@ -17083,31 +16911,19 @@ pvutils@^1.1.3: resolved "https://registry.yarnpkg.com/pvutils/-/pvutils-1.1.3.tgz#f35fc1d27e7cd3dfbd39c0826d173e806a03f5a3" integrity sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ== -q@1.*, q@^1.1.2, q@^1.5.1: +q@1.*, q@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" - integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= + integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw== -qs@6.9.6: - version "6.9.6" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.6.tgz#26ed3c8243a431b2924aca84cc90471f35d5a0ee" - integrity sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ== - -qs@^6.10.0, qs@^6.5.2: - version "6.10.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.2.tgz#c1431bea37fc5b24c5bdbafa20f16bdf2a4b9ffe" - integrity sha512-mSIdjzqznWgfd4pMii7sHtaYF8rx8861hBO80SraY5GT0XQibWZWJSid0avzHGkDIZLImux2S5mXO0Hfct2QCw== - dependencies: - side-channel "^1.0.4" - -qs@^6.9.4: +qs@6.11.0, qs@^6.10.0, qs@^6.5.2: 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" -query-string@^6.13.8, query-string@^6.14.1: +query-string@^6.14.1: version "6.14.1" resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw== @@ -17120,12 +16936,12 @@ query-string@^6.13.8, query-string@^6.14.1: querystring@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= + integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== -querystring@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.1.tgz#40d77615bb09d16902a85c3e38aa8b5ed761c2dd" - integrity sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg== +querystringify@^2.1.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" + integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== queue-microtask@^1.2.2: version "1.2.3" @@ -17142,10 +16958,10 @@ 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== -ramda@^0.21.0: - version "0.21.0" - resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.21.0.tgz#a001abedb3ff61077d4ff1d577d44de77e8d0a35" - integrity sha1-oAGr7bP/YQd9T/HVd9RN536NCjU= +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== randomatic@^3.0.0: version "3.1.1" @@ -17168,13 +16984,13 @@ range-parser@^1.2.1, range-parser@~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.4.2, raw-body@^2.3.3, raw-body@^2.4.1: - version "2.4.2" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.2.tgz#baf3e9c21eebced59dd6533ac872b71f7b61cb32" - integrity sha512-RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ== +raw-body@2.5.1, raw-body@^2.3.0, raw-body@^2.3.3, raw-body@^2.4.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" + integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== dependencies: - bytes "3.1.1" - http-errors "1.8.1" + bytes "3.1.2" + http-errors "2.0.0" iconv-lite "0.4.24" unpipe "1.0.0" @@ -17186,7 +17002,7 @@ raw-loader@^4.0.2: loader-utils "^2.0.0" schema-utils "^3.0.0" -rc@^1.2.7, rc@^1.2.8: +rc@1.2.8, rc@^1.2.7, rc@^1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== @@ -17196,35 +17012,35 @@ rc@^1.2.7, rc@^1.2.8: minimist "^1.2.0" strip-json-comments "~2.0.1" -react-dev-utils@^11.0.4: - version "11.0.4" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-11.0.4.tgz#a7ccb60257a1ca2e0efe7a83e38e6700d17aa37a" - integrity sha512-dx0LvIGHcOPtKbeiSUM4jqpBl3TcY7CDjZdfOIcKeznE7BWr9dg0iPG90G5yfVQ+p/rGNMXdbfStvzQZEVEi4A== +react-dev-utils@^12.0.1: + version "12.0.1" + resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-12.0.1.tgz#ba92edb4a1f379bd46ccd6bcd4e7bc398df33e73" + integrity sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ== dependencies: - "@babel/code-frame" "7.10.4" - address "1.1.2" - browserslist "4.14.2" - chalk "2.4.2" - cross-spawn "7.0.3" - detect-port-alt "1.1.6" - escape-string-regexp "2.0.0" - filesize "6.1.0" - find-up "4.1.0" - fork-ts-checker-webpack-plugin "4.1.6" - global-modules "2.0.0" - globby "11.0.1" - gzip-size "5.1.1" - immer "8.0.1" - is-root "2.1.0" - loader-utils "2.0.0" - open "^7.0.2" - pkg-up "3.1.0" - prompts "2.4.0" - react-error-overlay "^6.0.9" - recursive-readdir "2.2.2" - shell-quote "1.7.2" - strip-ansi "6.0.0" - text-table "0.2.0" + "@babel/code-frame" "^7.16.0" + address "^1.1.2" + browserslist "^4.18.1" + chalk "^4.1.2" + cross-spawn "^7.0.3" + detect-port-alt "^1.1.6" + escape-string-regexp "^4.0.0" + filesize "^8.0.6" + find-up "^5.0.0" + fork-ts-checker-webpack-plugin "^6.5.0" + global-modules "^2.0.0" + globby "^11.0.4" + gzip-size "^6.0.0" + immer "^9.0.7" + is-root "^2.1.0" + loader-utils "^3.2.0" + open "^8.4.0" + pkg-up "^3.1.0" + prompts "^2.4.2" + react-error-overlay "^6.0.11" + recursive-readdir "^2.2.2" + shell-quote "^1.7.3" + strip-ansi "^6.0.1" + text-table "^0.2.0" react-docgen-typescript@^2.1.1: version "2.2.2" @@ -17232,9 +17048,9 @@ react-docgen-typescript@^2.1.1: integrity sha512-tvg2ZtOpOi6QDwsb3GZhOjDkkX0h8Z2gipvTg6OVMUyoYoURhEiRNePT8NZItTVCDh39JJHnLdfCOkzoLbFnTg== react-docgen@^5.0.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/react-docgen/-/react-docgen-5.4.0.tgz#2cd7236720ec2769252ef0421f23250b39a153a1" - integrity sha512-JBjVQ9cahmNlfjMGxWUxJg919xBBKAoy3hgDgKERbR+BcF4ANpDuzWAScC7j27hZfd8sJNmMPOLWo9+vB/XJEQ== + 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" @@ -17275,10 +17091,10 @@ react-element-to-jsx-string@^14.3.4: is-plain-object "5.0.0" react-is "17.0.2" -react-error-overlay@^6.0.9: - version "6.0.10" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.10.tgz#0fe26db4fa85d9dbb8624729580e90e7159a59a6" - integrity sha512-mKR90fX7Pm5seCOfz8q9F+66VCc1PGsWSBxKbITjfKVQHMNF2zudxHnMdJiB1fRCb+XsbQV9sO9DCkgsMQgBIA== +react-error-overlay@^6.0.11: + version "6.0.11" + resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.11.tgz#92835de5841c5cf08ba00ddd2d677b6d17ff9adb" + integrity sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg== react-fast-compare@^3.1.1: version "3.2.0" @@ -17314,7 +17130,7 @@ react-is@17.0.2, react-is@^17.0.1: resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== -react-is@^16.12.0, react-is@^16.13.1: +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== @@ -17325,9 +17141,9 @@ react-lifecycles-compat@^3.0.4: integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== react-live@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/react-live/-/react-live-2.3.0.tgz#09fbac361903970e7cf51cee60729eeb164a5d87" - integrity sha512-b+Nc7x/bLu2sPX/If1uncrmUvYtXTqxY8QpzBw/X76SA3QJ1ggU0Ld6X5phLXZ469+XWO5lOU7OpAt0JoTyZPQ== + version "2.4.1" + resolved "https://registry.yarnpkg.com/react-live/-/react-live-2.4.1.tgz#65e674ff9ca9a9a95f83117acc21ffd968aca619" + integrity sha512-r+32f7oV/kBs3QZBRvaT+9vOkQW47UZrDpgwUe5FiIMOl7sdo5pmISgb7Zpj5PGHgY6XQaiXs3FEh+IWw3KbRg== dependencies: "@types/buble" "^0.20.0" buble "0.19.6" @@ -17343,20 +17159,29 @@ react-refresh@^0.11.0: resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.11.0.tgz#77198b944733f0f1f1a90e791de4541f9f074046" integrity sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A== -react-refresh@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.9.0.tgz#71863337adc3e5c2f8a6bfddd12ae3bfe32aafbf" - integrity sha512-Gvzk7OZpiqKSkxsQvO/mbTN1poglhmAV7gR/DdIrRrSMXraRQQlfikRJOr3Nb9GTMPC5kof948Zy6jJZIFtDvQ== +react-refresh@^0.14.0: + version "0.14.0" + resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.14.0.tgz#4e02825378a5f227079554d4284889354e5f553e" + integrity sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ== + +react-server-dom-webpack@0.0.0-experimental-c8b778b7f-20220825: + version "0.0.0-experimental-c8b778b7f-20220825" + resolved "https://registry.yarnpkg.com/react-server-dom-webpack/-/react-server-dom-webpack-0.0.0-experimental-c8b778b7f-20220825.tgz#b147886ed7cff5b31d9452d6ffe6987bfd876ceb" + integrity sha512-JyCjbp6ZvkH/T0EuVPdceYlC8u5WqWDSJr2KxDvc81H2eJ+7zYUN++IcEycnR2F+HmER8QVgxfotnIx352zi+w== + dependencies: + acorn "^6.2.1" + loose-envify "^1.1.0" + neo-async "^2.6.1" react-side-effect@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/react-side-effect/-/react-side-effect-2.1.1.tgz#66c5701c3e7560ab4822a4ee2742dee215d72eb3" - integrity sha512-2FoTQzRNTncBVtnzxFOk2mCpcfxQpenBMbk5kSVBg5UcPqV9fRbgY2zhb7GTWWOlpFmAxhClBDlIq8Rsubz1yQ== + version "2.1.2" + resolved "https://registry.yarnpkg.com/react-side-effect/-/react-side-effect-2.1.2.tgz#dc6345b9e8f9906dc2eeb68700b615e0b4fe752a" + integrity sha512-PVjOcvVOyIILrYoyGEpDN3vmYNLdy1CajSFNt4TDsVQC5KpTijDvWVoR+/7Rz2xT978D8/ZtFceXxzsPwZEDvw== react-simple-code-editor@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/react-simple-code-editor/-/react-simple-code-editor-0.11.0.tgz#bb57c7c29b570f2ab229872599eac184f5bc673c" - integrity sha512-xGfX7wAzspl113ocfKQAR8lWPhavGWHL3xSzNLeseDRHysT+jzRBi/ExdUqevSMos+7ZtdfeuBOXtgk9HTwsrw== + version "0.11.3" + resolved "https://registry.yarnpkg.com/react-simple-code-editor/-/react-simple-code-editor-0.11.3.tgz#6e5af1c2e51588aded2c89b86e98fac144212f61" + integrity sha512-7bVI4Yd1aNCeuldErXUt8ksaAG5Fi+GZ6vp3mtFBnckKdzsQtrgkDvdwMFXIhwTGG+mUYmk5ZpMo0axSW9JBzA== react-sizeme@^3.0.1: version "3.0.2" @@ -17399,14 +17224,14 @@ react@^17.0.1: read-cache@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" - integrity sha1-5mTvMRYRZsl1HNvo28+GtftY93Q= + integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA== dependencies: pify "^2.3.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 sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= + integrity sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A== dependencies: find-up "^1.0.0" read-pkg "^1.0.0" @@ -17423,7 +17248,7 @@ read-pkg-up@^7.0.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 sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= + integrity sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ== dependencies: load-json-file "^1.0.0" normalize-package-data "^2.3.2" @@ -17452,20 +17277,10 @@ read-yaml-file@^1.1.0: read@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" - integrity sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ= + integrity sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ== dependencies: mute-stream "~0.0.4" -readable-stream@1.1.x, "readable-stream@>=1.1.13-1 <1.2.0-0": - version "1.1.14" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" - integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - 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.1.1, 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" @@ -17475,7 +17290,17 @@ 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.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: +"readable-stream@>=1.1.13-1 <1.2.0-0": + version "1.1.14" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" + integrity sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, 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== @@ -17502,17 +17327,17 @@ readdirp@~3.6.0: dependencies: picomatch "^2.2.1" -recursive-readdir@2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.2.tgz#9946fb3274e1628de6e36b2f6714953b4845094f" - integrity sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg== +recursive-readdir@^2.2.2: + version "2.2.3" + resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.3.tgz#e726f328c0d69153bcabd5c322d3195252379372" + integrity sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA== dependencies: - minimatch "3.0.4" + minimatch "^3.0.5" redent@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= + integrity sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g== dependencies: indent-string "^2.1.0" strip-indent "^1.0.1" @@ -17551,6 +17376,13 @@ refractor@^3.6.0: parse-entities "^2.0.0" prismjs "~1.27.0" +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-unicode-properties@^9.0.0: version "9.0.0" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-9.0.0.tgz#54d09c7115e1f53dc2314a974b32c1c344efe326" @@ -17568,20 +17400,15 @@ regenerator-runtime@^0.11.0: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== -regenerator-runtime@^0.13.10: +regenerator-runtime@^0.13.10, regenerator-runtime@^0.13.7: version "0.13.10" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz#ed07b19616bcbec5da6274ebc75ae95634bfc2ee" integrity sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw== -regenerator-runtime@^0.13.3, regenerator-runtime@^0.13.4, regenerator-runtime@^0.13.7: - version "0.13.9" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" - integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== - -regenerator-transform@^0.14.2: - version "0.14.5" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4" - integrity sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw== +regenerator-transform@^0.15.0: + version "0.15.0" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.0.tgz#cbd9ead5d77fae1a48d957cf889ad0586adb6537" + integrity sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg== dependencies: "@babel/runtime" "^7.8.4" @@ -17598,20 +17425,21 @@ regex-parser@^2.2.11: resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58" integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q== -regexp.prototype.flags@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz#7ef352ae8d159e758c0eadca6f8fcb4eef07be26" - integrity sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA== +regexp.prototype.flags@^1.4.1, 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" + integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== dependencies: call-bind "^1.0.2" define-properties "^1.1.3" + functions-have-names "^1.2.2" regexpp@^3.1.0, regexpp@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== -regexpu-core@^4.2.0, regexpu-core@^4.7.1: +regexpu-core@^4.2.0: version "4.8.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.8.0.tgz#e5605ba361b67b1718478501327502f4479a98f0" integrity sha512-1F6bYsoYiz6is+oz70NWur2Vlh9KWtswuRuzJOfeYUrfPX2o8n74AnUVaOGDbUqVGO9fNHu48/pjJO4sNVwsOg== @@ -17623,12 +17451,24 @@ regexpu-core@^4.2.0, regexpu-core@^4.7.1: unicode-match-property-ecmascript "^2.0.0" unicode-match-property-value-ecmascript "^2.0.0" +regexpu-core@^5.1.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.2.1.tgz#a69c26f324c1e962e9ffd0b88b055caba8089139" + integrity sha512-HrnlNtpvqP1Xkb28tMhBUO2EbyUHdQlsnlAhzWcwHy8WJR53UWr7/MAvqrsQKMbV4qdpv03oTMG8iIhfsPFktQ== + 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.0.0" + registry-auth-token@^4.0.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.1.tgz#6d7b4006441918972ccd5fedcd41dc322c79b250" - integrity sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw== + version "4.2.2" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.2.tgz#f02d49c3668884612ca031419491a13539e21fac" + integrity sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg== dependencies: - rc "^1.2.8" + rc "1.2.8" registry-url@^5.0.0: version "5.1.0" @@ -17642,6 +17482,11 @@ regjsgen@^0.5.2: resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== +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.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.7.0.tgz#a6b667b54c885e18b52554cb4960ef71187e9968" @@ -17649,10 +17494,26 @@ regjsparser@^0.7.0: dependencies: jsesc "~0.5.0" +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.x, relateurl@^0.2.7: version "0.2.7" resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= + integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog== + +relay-runtime@12.0.0: + version "12.0.0" + resolved "https://registry.yarnpkg.com/relay-runtime/-/relay-runtime-12.0.0.tgz#1e039282bdb5e0c1b9a7dc7f6b9a09d4f4ff8237" + integrity sha512-QU6JKr1tMsry22DXNy9Whsq5rmvwr3LSZiiWV/9+DFpuTWvp+WFhobWMc8TC4OjKFfNhEZy7mOiqUAn5atQtug== + dependencies: + "@babel/runtime" "^7.0.0" + fbjs "^3.0.0" + invariant "^2.2.4" remark-external-links@^8.0.0: version "8.0.0" @@ -17682,29 +17543,7 @@ remark-mdx@1.6.22, remark-mdx@^1.6.22: "@mdx-js/util" "1.6.22" is-alphabetical "1.0.4" remark-parse "8.0.3" - unified "9.2.0" - -remark-mdx@2.0.0-next.7: - version "2.0.0-next.7" - resolved "https://registry.yarnpkg.com/remark-mdx/-/remark-mdx-2.0.0-next.7.tgz#e8d4e4fe2c2a98bb34e10304c6e6f2823ba56dfb" - integrity sha512-JHYCfxJzvjTw8h5y10f+mCvbfIt5klAkWlULqPu1nM/r6ghF3tzJl0AFQFj5b/m/7U553+yYb/y4n0julMERYA== - dependencies: - parse-entities "^2.0.0" - remark-stringify "^8.1.0" - stringify-entities "^3.0.1" - strip-indent "^3.0.0" - unist-util-stringify-position "^2.0.3" - -remark-mdxjs@^2.0.0-next.4: - version "2.0.0-next.8" - resolved "https://registry.yarnpkg.com/remark-mdxjs/-/remark-mdxjs-2.0.0-next.8.tgz#ff603ebfcb17f19503ee3fab78447445eaa08783" - integrity sha512-Z/+0eWc7pBEABwg3a5ptL+vCTWHYMFnYzpLoJxTm2muBSk8XyB/CL+tEJ6SV3Q/fScHX2dtG4JRcGSpbZFLazQ== - dependencies: - "@babel/core" "7.10.5" - "@babel/helper-plugin-utils" "7.10.4" - "@babel/plugin-proposal-object-rest-spread" "7.10.4" - "@babel/plugin-syntax-jsx" "7.10.4" - "@mdx-js/util" "^2.0.0-next.8" + unified "9.2.0" remark-parse@8.0.3, remark-parse@^8.0.3: version "8.0.3" @@ -17728,7 +17567,7 @@ remark-parse@8.0.3, remark-parse@^8.0.3: vfile-location "^3.0.0" xtend "^4.0.1" -remark-parse@^6.0.0, remark-parse@^6.0.3: +remark-parse@^6.0.0: version "6.0.3" resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-6.0.3.tgz#c99131052809da482108413f87b0ee7f52180a3a" integrity sha512-QbDXWN4HfKTUC0hHa4teU463KclLAnwpn/FBn87j9cKYJWWawbiLgMfP2Q4XwhxxuuuOxHlw+pSN0OKuJwyVvg== @@ -17792,7 +17631,7 @@ remark-stringify@^6.0.0: unherit "^1.0.4" xtend "^4.0.1" -remark-stringify@^8.1.0, remark-stringify@^8.1.1: +remark-stringify@^8.1.1: version "8.1.1" resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-8.1.1.tgz#e2a9dc7a7bf44e46a155ec78996db896780d8ce5" integrity sha512-q4EyPZT3PcA3Eq7vPpT6bIdokXzFGp9i85igjmhRyXWmPs0Y6/d2FYwUNotKAWyLch7g0ASZJn/KHHcHZQ163A== @@ -17840,7 +17679,7 @@ remove-bom-buffer@^3.0.0: remove-bom-stream@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz#05f1a593f16e42e1fb90ebf59de8e569525f9523" - integrity sha1-BfGlk/FuQuH7kOv1nejlaVJflSM= + integrity sha512-wigO8/O08XHb8YPzpDDT+QmRANfW6vLqxfaXm1YXhnFf3AkSLyjfG3GEFg4McZkmgL7KvCj5u2KczkvSP6NfHA== dependencies: remove-bom-buffer "^3.0.0" safe-buffer "^5.1.0" @@ -17849,7 +17688,7 @@ remove-bom-stream@^1.2.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 sha1-wkvOKig62tW8P1jg1IJJuSN52O8= + integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== renderkid@^2.0.4: version "2.0.7" @@ -17881,24 +17720,24 @@ repeat-element@^1.1.2: repeat-string@^1.0.0, repeat-string@^1.5.2, 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 sha1-jcrkcOHIirwtYA//Sndihtp15jc= + 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 sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= + integrity sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A== dependencies: is-finite "^1.0.0" replace-ext@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" - integrity sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ= + integrity sha512-AFBWBy9EVRTa/LhEcG8QDP3FvpwZqmvN2QFDuJswFeaVhWnZMp8q3E6Zd90SR04PlIwfGdyVjNyLPyen/ek5CQ== replace-ext@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" - integrity sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs= + integrity sha512-vuNYXC7gG7IeVNBC1xUllqCcZKRbJoSPOBhnTEcAIiKCsbuef6zO3F0Rve3isPMMoNoQRWjQwbAgAjHUHniyEA== replace-ext@^1.0.0: version "1.0.1" @@ -17906,9 +17745,9 @@ replace-ext@^1.0.0: integrity sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw== replace-in-file@^6.3.2: - version "6.3.2" - resolved "https://registry.yarnpkg.com/replace-in-file/-/replace-in-file-6.3.2.tgz#0f19835137177c89932f45df319f3539a019484f" - integrity sha512-Dbt5pXKvFVPL3WAaEB3ZX+95yP0CeAtIPJDwYzHbPP5EAHn+0UoegH/Wg3HKflU9dYBH8UnBC2NvY3P+9EZtTg== + version "6.3.5" + resolved "https://registry.yarnpkg.com/replace-in-file/-/replace-in-file-6.3.5.tgz#ff956b0ab5bc96613207d603d197cd209400a654" + integrity sha512-arB9d3ENdKva2fxRnSjwBEXfK1npgyci7ZZuwysgAp7ORjHSyxz6oqIjTEv8R0Ydl4Ll7uOAZXL4vbkhGIizCg== dependencies: chalk "^4.1.2" glob "^7.2.0" @@ -17917,7 +17756,7 @@ replace-in-file@^6.3.2: require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== require-from-string@^2.0.2: version "2.0.2" @@ -17927,7 +17766,7 @@ require-from-string@^2.0.2: "require-like@>= 0.1.1": version "0.1.2" resolved "https://registry.yarnpkg.com/require-like/-/require-like-0.1.2.tgz#ad6f30c13becd797010c468afa775c0c0a6b47fa" - integrity sha1-rW8wwTvs15cBDEaK+ndcDAprR/o= + integrity sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A== require-main-filename@^2.0.0: version "2.0.0" @@ -17937,7 +17776,7 @@ require-main-filename@^2.0.0: require-package-name@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/require-package-name/-/require-package-name-2.0.1.tgz#c11e97276b65b8e2923f75dabf5fb2ef0c3841b9" - integrity sha1-wR6XJ2tluOKSP3Xav1+y7ww4Qbk= + integrity sha512-uuoJ1hU/k6M0779t3VMVIYpb2VMJk05cehCaABFhXaibcbvfgR8wKiozLjVFSzJPmQMRqIcO0HMyTFqfV09V6Q== requireindex@^1.2.0: version "1.2.0" @@ -17947,7 +17786,7 @@ requireindex@^1.2.0: requires-port@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= + integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== resolve-alpn@^1.0.0: version "1.2.1" @@ -17981,19 +17820,19 @@ resolve-global@1.0.0, resolve-global@^1.0.0: resolve-options@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/resolve-options/-/resolve-options-1.1.0.tgz#32bb9e39c06d67338dc9378c0d6d6074566ad131" - integrity sha1-MrueOcBtZzONyTeMDW1gdFZq0TE= + integrity sha512-NYDgziiroVeDC29xq7bp/CacZERYsA9bXYd1ZmcJlF3BcrZv5pTb4NG7SjdyKDnXZ84aC4vo2u6sNKIA1LCu/A== dependencies: value-or-function "^3.0.0" resolve-path@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/resolve-path/-/resolve-path-1.4.0.tgz#c4bda9f5efb2fce65247873ab36bb4d834fe16f7" - integrity sha1-xL2p9e+y/OZSR4c6s2u02DT+Fvc= + integrity sha512-i1xevIst/Qa+nA9olDxLWnLk8YZbi8R/7JPbCMcgyWaFR6bKWaexgJgEB5oc2PKMjYdrHynyz0NY+if+H98t1w== dependencies: http-errors "~1.6.2" path-is-absolute "1.0.1" -resolve-url-loader@^3.1.2: +resolve-url-loader@^3.1.4: version "3.1.4" resolved "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-3.1.4.tgz#3c16caebe0b9faea9c7cc252fa49d2353c412320" integrity sha512-D3sQ04o0eeQEySLrcz4DsX3saHfsr8/N6tfhblxgZKXxMT2Louargg12oGNfoTRLV09GXhVUe5/qgA5vdgNigg== @@ -18012,40 +17851,42 @@ resolve-url-loader@^3.1.2: resolve-url@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= + 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.7, resolve@^1.10.0, resolve@^1.12.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.3.2: - version "1.20.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" - integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== +resolve@^1.1.7, 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== dependencies: - is-core-module "^2.2.0" - path-parse "^1.0.6" + is-core-module "^2.9.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" resolve@^2.0.0-next.3: - version "2.0.0-next.3" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.3.tgz#d41016293d4a8586a39ca5d9b5f15cbea1f55e46" - integrity sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q== + version "2.0.0-next.4" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.4.tgz#3d37a113d6429f496ec4752d2a2e58efb1fd4660" + integrity sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ== dependencies: - is-core-module "^2.2.0" - path-parse "^1.0.6" + is-core-module "^2.9.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" responselike@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" - integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= + integrity sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ== dependencies: lowercase-keys "^1.0.0" responselike@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.0.tgz#26391bcc3174f750f9a79eacc40a12a5c42d7723" - integrity sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw== + version "2.0.1" + resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.1.tgz#9a0bc8fdc252f3fb1cca68b016591059ba1422bc" + integrity sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw== dependencies: lowercase-keys "^2.0.0" @@ -18073,7 +17914,7 @@ retext-english@^3.0.4: retry@^0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" - integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= + integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== reusify@^1.0.4: version "1.0.4" @@ -18083,12 +17924,12 @@ reusify@^1.0.4: rework-visit@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/rework-visit/-/rework-visit-1.0.0.tgz#9945b2803f219e2f7aca00adb8bc9f640f842c9a" - integrity sha1-mUWygD8hni96ygCtuLyfZA+ELJo= + integrity sha512-W6V2fix7nCLUYX1v6eGPrBOZlc03/faqzP4sUxMAJMBMOPYhfV/RyLegTufn5gJKaOITyi+gvf0LXDZ9NzkHnQ== rework@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/rework/-/rework-1.0.1.tgz#30806a841342b54510aa4110850cd48534144aa7" - integrity sha1-MIBqhBNCtUUQqkEQhQzUhTQUSqc= + integrity sha512-eEjL8FdkdsxApd0yWVZgBGzfCQiT8yqSc2H1p4jpZpQdtz7ohETiDMoje5PlM8I9WgkqkreVxFUKYOiJdVWDXw== dependencies: convert-source-map "^0.3.3" css "^2.0.0" @@ -18098,7 +17939,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.*, rimraf@^2.2.8, rimraf@^2.6.2: +rimraf@2.*, rimraf@^2.6.2: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== @@ -18112,10 +17953,10 @@ rimraf@3.0.2, rimraf@^3.0.0, rimraf@^3.0.2: dependencies: glob "^7.1.3" -rollup@^2.58.0: - version "2.62.0" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.62.0.tgz#9e640b419fc5b9e0241844f6d55258bd79986ecc" - integrity sha512-cJEQq2gwB0GWMD3rYImefQTSjrPYaC6s4J9pYqnstVLJ1CHa/aZNVkD4Epuvg4iLeMA4KRiq7UM7awKK6j7jcw== +rollup@^2.67.0: + version "2.79.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.79.1.tgz#bedee8faef7c9f93a2647ac0108748f497f081c7" + integrity sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw== optionalDependencies: fsevents "~2.3.2" @@ -18143,10 +17984,10 @@ rxjs@^6.6.0, rxjs@^6.6.3: dependencies: tslib "^1.9.0" -rxjs@^7.4.0: - version "7.5.1" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.1.tgz#af73df343cbcab37628197f43ea0c8256f54b157" - integrity sha512-KExVEeZWxMZnZhUZtsJcFwz8IvPvgu4G2Z2QyqjZQzUGr32KDYuSxrEYO4w3tFFNbfLozcrKUTvTPi+E9ywJkQ== +rxjs@^7.5.5: + version "7.5.7" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.7.tgz#2ec0d57fdc89ece220d2e702730ae8f1e49def39" + integrity sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA== dependencies: tslib "^2.1.0" @@ -18165,10 +18006,19 @@ safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== +safe-regex-test@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295" + integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA== + dependencies: + call-bind "^1.0.2" + 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 sha1-QKNmnzsHfR6UPURinhV91IAjvy4= + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== dependencies: ret "~0.1.10" @@ -18204,7 +18054,7 @@ sane@^4.0.3: sass-convert@^0.5.0: version "0.5.2" resolved "https://registry.yarnpkg.com/sass-convert/-/sass-convert-0.5.2.tgz#b1ed42b0e8d6fe98ec7ed6e78a38e26564860f06" - integrity sha1-se1CsOjW/pjsftbnijjiZWSGDwY= + integrity sha512-eV9wXZg7MrHmnKLD6WojC/WX7lhLm+PSSLrOukzRIECa04fGbkmFDO9Ot9/82KjzSe+VEClYe9WDKzCuBz30Dg== dependencies: concat-stream "^1.4.7" dargs "^4.0.0" @@ -18219,9 +18069,9 @@ sass-convert@^0.5.0: which "^1.0.5" sass-loader@^10.1.1: - version "10.2.0" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-10.2.0.tgz#3d64c1590f911013b3fa48a0b22a83d5e1494716" - integrity sha512-kUceLzC1gIHz0zNJPpqRsJyisWatGYNFRmv2CKZK2/ngMJgLqxTbXwe/hJ85luyvZkgqU3VlJ33UVF2T/0g6mw== + version "10.3.1" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-10.3.1.tgz#a45f0d1dd7ea90de7eb099239a18c83dea6e6341" + integrity sha512-y2aBdtYkbqorVavkC3fcJIUDGIegzDWPn3/LAFhsf3G+MzPKTJx37sROf5pXtUeggSVbNbmfj8TgRaSLMelXRA== dependencies: klona "^2.0.4" loader-utils "^2.0.0" @@ -18230,17 +18080,17 @@ sass-loader@^10.1.1: semver "^7.3.2" sass-loader@^12.3.0: - version "12.4.0" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-12.4.0.tgz#260b0d51a8a373bb8e88efc11f6ba5583fea0bcf" - integrity sha512-7xN+8khDIzym1oL9XyS6zP6Ges+Bo2B2xbPrjdMHEYyV3AQYhd/wXeru++3ODHF0zMjYmVadblSKrPrjEkL8mg== + version "12.6.0" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-12.6.0.tgz#5148362c8e2cdd4b950f3c63ac5d16dbfed37bcb" + integrity sha512-oLTaH0YCtX4cfnJZxKSLAyglED0naiYfNG1iXfU5w1LNZ+ukoA5DtyDIN5zmKVZwYNJP4KRc5Y3hkWga+7tYfA== dependencies: klona "^2.0.4" neo-async "^2.6.2" sass@^1.42.1: - version "1.45.1" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.45.1.tgz#fa03951f924d1ba5762949567eaf660e608a1ab0" - integrity sha512-pwPRiq29UR0o4X3fiQyCtrESldXvUQAAE0QmcJTpsI4kuHHcLzZ54M1oNBVIXybQv8QF2zfkpFcTxp8ta97dUA== + version "1.55.0" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.55.0.tgz#0c4d3c293cfe8f8a2e8d3b666e1cf1bff8065d1c" + integrity sha512-Pk+PMy7OGLs9WaxZGJMn7S96dvlyVBwwtToX895WmCpAOr5YiJYEUJfiJidMuKb613z2xNWcXCHEuOvjZbqC6A== dependencies: chokidar ">=3.0.0 <4.0.0" immutable "^4.0.0" @@ -18254,9 +18104,9 @@ sassdoc-extras@^2.5.0: marked "^0.6.2" sassdoc-theme-default@^2.8.3: - version "2.8.4" - resolved "https://registry.yarnpkg.com/sassdoc-theme-default/-/sassdoc-theme-default-2.8.4.tgz#4ce50f7790f98e89e283428ec4b81d834701f9c7" - integrity sha512-kFwAMTrTB7YBfcyUEujgOWkhfA0i1vZ1RhPq4wE5HyeG3/FJZdF2lC4IQRGU6lieABXalijcHflG3gWQuu+aNw== + version "2.8.5" + resolved "https://registry.yarnpkg.com/sassdoc-theme-default/-/sassdoc-theme-default-2.8.5.tgz#a6ad99afab689ec97c51b56c255d250e82d67ae3" + integrity sha512-9lGpeCONCKVOkljh0C8CCo9jArKbLi1YKKJ4t6w8gsp8O8zFf2ES/l8rKVI4oMnfaJxa7bOmFKoGvrVHcmVERg== dependencies: babel-runtime "^6.22.0" chroma-js "^1.2.2" @@ -18269,9 +18119,9 @@ sassdoc-theme-default@^2.8.3: sassdoc-extras "^2.5.0" sassdoc@^2.7.3: - version "2.7.3" - resolved "https://registry.yarnpkg.com/sassdoc/-/sassdoc-2.7.3.tgz#dfde10e6cc090c28578298f985f92df7d4c6ddbc" - integrity sha512-ccHlaOVoyGHF41xzj09n9WrECRHSGesFVq2EwX6DGMQdG0+avrxaLiuMLD26QfGyF2qcXVt07w5ifP5KZqy1Qw== + version "2.7.4" + resolved "https://registry.yarnpkg.com/sassdoc/-/sassdoc-2.7.4.tgz#9803a3e69f1e31847809c8b3f5044d4740960bc9" + integrity sha512-/HEjX9pMILkePyC4ZKGhkLqZHJZpsTxFwQIQNsLhV4XHiPKoWHrSmam1pMntM79tcdtBII3JX7ShfyZjHnrkyw== dependencies: ansi-styles "^4.2.1" babel-runtime "^6.26.0" @@ -18298,7 +18148,7 @@ sassdoc@^2.7.3: vinyl-source-stream "1.1.2" vinyl-string "^1.0.2" -sax@>=0.6.0, sax@^1.2.4, sax@~1.2.4: +sax@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== @@ -18390,7 +18240,7 @@ semver-regex@^1.0.0, semver-regex@^3.1.3: resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-3.1.4.tgz#13053c0d4aa11d070a2f2872b6b1e3ae1e1971b4" integrity sha512-6IiqeZNgq01qGf0TId0t3NvKzSvUsjcpdEO3AQNeIjR6A2+ckTnQlDpl4qu1bjRv0RzN3FP9hzFmws3lKqRWkA== -"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0: +"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.1: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -18400,48 +18250,48 @@ semver@7.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== -semver@7.3.5, semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: +semver@7.3.5: version "7.3.5" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== dependencies: lru-cache "^6.0.0" -semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, 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== - -semver@^7.3.7: +semver@7.x, semver@^7.2.1, 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" -send@0.17.2: - version "0.17.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.17.2.tgz#926622f76601c41808012c8bf1688fe3906f7820" - integrity sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww== +semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, 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 "~1.1.2" - destroy "~1.0.4" + 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 "1.8.1" + http-errors "2.0.0" mime "1.6.0" ms "2.1.3" - on-finished "~2.3.0" + on-finished "2.4.1" range-parser "~1.2.1" - statuses "~1.5.0" + statuses "2.0.1" sentence-case@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-2.1.1.tgz#1f6e2dda39c168bf92d13f86d4a918933f667ed4" - integrity sha1-H24t2jnBaL+S0T+G1KkYkz9mftQ= + integrity sha512-ENl7cYHaK/Ktwk5OTD+aDbQ3uC8IByu/6Bkg+HDv8Mm+XnBnppVNalcfJTNsp1ibstKh030/JKQQWglDvtKwEQ== dependencies: no-case "^2.2.0" upper-case-first "^1.1.2" @@ -18472,7 +18322,7 @@ serialize-javascript@^6.0.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 sha1-k10kDN/g9YBTB/3+ln2IlCosvPA= + integrity sha512-FMW2RvqNr03x+C0WxTyu6sOv21oOjkq5j8tjquWccwa6ScNyGFOGJVpuS1NmTVGBAHS07xnSKotgf2ehQmf9iA== dependencies: etag "~1.8.1" fresh "0.5.2" @@ -18480,20 +18330,20 @@ serve-favicon@^2.5.0: parseurl "~1.3.2" safe-buffer "5.1.1" -serve-static@1.14.2: - version "1.14.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.2.tgz#722d6294b1d62626d41b43a013ece4598d292bfa" - integrity sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ== +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.17.2" + send "0.18.0" -set-blocking@^2.0.0, set-blocking@~2.0.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 sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== set-getter@^0.1.0: version "0.1.1" @@ -18512,6 +18362,11 @@ set-value@^2.0.0, set-value@^2.0.1: is-plain-object "^2.0.3" split-string "^3.0.1" +setimmediate@^1.0.5: + 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.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" @@ -18539,24 +18394,24 @@ shallowequal@^1.1.0: resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== -sharp@^0.29.3: - version "0.29.3" - resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.29.3.tgz#0da183d626094c974516a48fab9b3e4ba92eb5c2" - integrity sha512-fKWUuOw77E4nhpyzCCJR1ayrttHoFHBT2U/kR/qEMRhvPEcluG4BKj324+SCO1e84+knXHwhJ1HHJGnUt4ElGA== +sharp@^0.30.7: + version "0.30.7" + resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.30.7.tgz#7862bda98804fdd1f0d5659c85e3324b90d94c7c" + integrity sha512-G+MY2YW33jgflKPTXXptVO28HvNOo9G3j0MybYAHeEmby+QuD2U98dT6ueht9cv/XDqZspSpIhoSW+BAKJ7Hig== dependencies: - color "^4.0.1" - detect-libc "^1.0.3" - node-addon-api "^4.2.0" - prebuild-install "^7.0.0" - semver "^7.3.5" - simple-get "^4.0.0" + color "^4.2.3" + detect-libc "^2.0.1" + node-addon-api "^5.0.0" + prebuild-install "^7.1.1" + semver "^7.3.7" + simple-get "^4.0.1" tar-fs "^2.1.1" tunnel-agent "^0.6.0" shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= + integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== dependencies: shebang-regex "^1.0.0" @@ -18570,17 +18425,17 @@ shebang-command@^2.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 sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= + 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" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shell-quote@1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.2.tgz#67a7d02c76c9da24f99d20808fcaded0e0e04be2" - integrity sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg== +shell-quote@^1.7.3: + version "1.7.4" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.4.tgz#33fe15dee71ab2a81fcbd3a52106c5cfb9fb75d8" + integrity sha512-8o/QEhSSRb1a5i7TFR0iM4G16Z0vYB2OQVs4G3aAFXjn3T6yEx8AZxy1PgDF7I00LZHYA3WxaSYIf5e5sAX8Rw== side-channel@^1.0.4: version "1.0.4" @@ -18591,17 +18446,22 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.5, signal-exit@^3.0.6: - version "3.0.6" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.6.tgz#24e630c4b0f03fea446a2bd299e62b4a6ca8d0af" - integrity sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ== +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.5, signal-exit@^3.0.6, 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== + +signedsource@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/signedsource/-/signedsource-1.0.0.tgz#1ddace4981798f93bd833973803d80d52e93ad6a" + integrity sha512-6+eerH9fEnNmi/hyM1DXcRK3pWdoMQtlkQ+ns0ntzunjKqp5i3sKCc80ym8Fib3iaYhdJUOPdhlJWj1tvge2Ww== simple-concat@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== -simple-get@^4.0.0: +simple-get@^4.0.0, simple-get@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-4.0.1.tgz#4a39db549287c979d352112fa03fd99fd6bc3543" integrity sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA== @@ -18613,17 +18473,10 @@ simple-get@^4.0.0: simple-swizzle@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= + integrity sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg== dependencies: is-arrayish "^0.3.1" -single-trailing-newline@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/single-trailing-newline/-/single-trailing-newline-1.0.0.tgz#81f0ad2ad645181945c80952a5c1414992ee9664" - integrity sha1-gfCtKtZFGBlFyAlSpcFBSZLulmQ= - dependencies: - detect-newline "^1.0.3" - sinon@^12.0.1: version "12.0.1" resolved "https://registry.yarnpkg.com/sinon/-/sinon-12.0.1.tgz#331eef87298752e1b88a662b699f98e403c859e9" @@ -18642,17 +18495,17 @@ sisteransi@^1.0.5: integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== size-limit@^7.0.4: - version "7.0.5" - resolved "https://registry.yarnpkg.com/size-limit/-/size-limit-7.0.5.tgz#0a211825b540595805111c45d88a39a9d0dc8b4e" - integrity sha512-dve+Vaq/a6H7QZhFbozAUBKNO9ZnZkPX3EF1ETI8yv3YCMdC7e63HmVZDXKB//o3FCTHqtZQ0p3ZtOwN/PSiqQ== + version "7.0.8" + resolved "https://registry.yarnpkg.com/size-limit/-/size-limit-7.0.8.tgz#bf0c656da9e6bc3b8eb5b8a5a634df4634309811" + integrity sha512-3h76c9E0e/nNhYLSR7IBI/bSoXICeo7EYkYjlyVqNIsu7KvN/PQmMbIXeyd2QKIF8iZKhaiZQoXLkGWbyPDtvQ== dependencies: bytes-iec "^3.1.1" - chokidar "^3.5.2" + chokidar "^3.5.3" ci-job-number "^1.2.2" - globby "^11.0.4" - lilconfig "^2.0.3" + globby "^11.1.0" + lilconfig "^2.0.4" mkdirp "^1.0.4" - nanospinner "^0.6.0" + nanospinner "^1.0.0" picocolors "^1.0.0" slash@^2.0.0: @@ -18697,15 +18550,16 @@ slice-ansi@^5.0.0: is-fullwidth-code-point "^4.0.0" slugify@^1.4.4, slugify@^1.6.1: - version "1.6.4" - resolved "https://registry.yarnpkg.com/slugify/-/slugify-1.6.4.tgz#33d84cc9e859ca3852e6537af6a5ff5bb9e439aa" - integrity sha512-Pcz296CK0uGnTf4iNQId79Uv6/5G16t0g0x3OsxWS8qVSOW+JXNnNHKVcuDiMgEGTWyK6zjlWXo2dvzV/FLf9Q== + version "1.6.5" + resolved "https://registry.yarnpkg.com/slugify/-/slugify-1.6.5.tgz#c8f5c072bf2135b80703589b39a3d41451fbe8c8" + integrity sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ== -smartwrap@^1.2.3: - version "1.2.5" - resolved "https://registry.yarnpkg.com/smartwrap/-/smartwrap-1.2.5.tgz#45ee3e09ac234e5f7f17c16e916f511834f3cd23" - integrity sha512-bzWRwHwu0RnWjwU7dFy7tF68pDAx/zMSu3g7xr9Nx5J0iSImYInglwEVExyHLxXljy6PWMjkSAbwF7t2mPnRmg== +smartwrap@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/smartwrap/-/smartwrap-2.0.2.tgz#7e25d3dd58b51c6ca4aba3a9e391650ea62698a4" + integrity sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA== dependencies: + array.prototype.flat "^1.2.3" breakword "^1.0.5" grapheme-splitter "^1.0.4" strip-ansi "^6.0.0" @@ -18715,7 +18569,7 @@ smartwrap@^1.2.3: snake-case@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-2.1.0.tgz#41bdb1b73f30ec66a04d4e2cad1b76387d4d6d9f" - integrity sha1-Qb2xtz8w7GagTU4srRt2OH1NbZ8= + integrity sha512-FMR5YoPFwOLuh4rRz92dywJjyKYZNLpMn1R5ujVpIYkbA9p01fq8RMg0FkO4M+Yobt4MjHeLTJVm5xFFBHSV2Q== dependencies: no-case "^2.2.0" @@ -18776,9 +18630,9 @@ socket.io-client@3.1.3: socket.io-parser "~4.0.4" socket.io-parser@~4.0.3, socket.io-parser@~4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-4.0.4.tgz#9ea21b0d61508d18196ef04a2c6b9ab630f4c2b0" - integrity sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g== + version "4.0.5" + resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-4.0.5.tgz#cb404382c32324cc962f27f3a44058cf6e0552df" + integrity sha512-sNjbT9dX63nqUFIOv95tTVm6elyIU4RvB1m8dOeZt+IgWwcWklFDOdmGcfo3zSiRsnR/3pJkjY5lfoGqEe4Eig== dependencies: "@types/component-emitter" "^1.2.10" component-emitter "~1.3.0" @@ -18802,17 +18656,17 @@ socket.io@3.1.2: source-list-map@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-1.1.2.tgz#9889019d1024cce55cdc069498337ef6186a11a1" - integrity sha1-mIkBnRAkzOVc3AaUmDN+9hhqEaE= + integrity sha512-FqR2O+cX+toUD3ULVIgTtiqYIqPnA62ehJD47mf4LG1PZCB+xmIa3gcTEhegGbP22aRPh88dJSdgDIolrvSxBQ== source-list-map@^2.0.0, source-list-map@^2.0.1: 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-js@>=0.6.2 <2.0.0", source-map-js@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.1.tgz#a1741c131e3c77d048252adfa24e23b908670caf" - integrity sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA== +"source-map-js@>=0.6.2 <2.0.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-resolve@^0.5.0, source-map-resolve@^0.5.2: version "0.5.3" @@ -18825,7 +18679,7 @@ source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.5.16, source-map-support@^0.5.17, source-map-support@^0.5.20, source-map-support@^0.5.6, source-map-support@~0.5.20: +source-map-support@^0.5.16, source-map-support@^0.5.17, source-map-support@^0.5.6, 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== @@ -18843,17 +18697,17 @@ source-map@0.6.1, source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, sourc resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@0.7.3, source-map@^0.7.3: - version "0.7.3" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== - source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.3: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== -sourcemap-codec@^1.4.4: +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== @@ -18866,7 +18720,7 @@ space-separated-tokens@^1.0.0: spawn-command@^0.0.2-1: version "0.0.2-1" resolved "https://registry.yarnpkg.com/spawn-command/-/spawn-command-0.0.2-1.tgz#62f5e9466981c1b796dc5929937e11c9c6921bd0" - integrity sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A= + integrity sha512-n98l9E2RMSJ9ON1AKisHzz7V42VDiBQGY6PB1BwRglz99wpVsSuGzQ+jOi6lFXBGVTCrRpltvjm+/XA+tpeJrg== spawndamnit@^2.0.0: version "2.0.0" @@ -18898,14 +18752,9 @@ spdx-expression-parse@^3.0.0: spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.11" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz#50c0d8c40a14ec1bf449bae69a0ea4685a9d9f95" - integrity sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g== - -specificity@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/specificity/-/specificity-0.4.1.tgz#aab5e645012db08ba182e151165738d00887b019" - integrity sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg== + version "3.0.12" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz#69077835abe2710b65f03969898b6637b505a779" + integrity sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA== split-on-first@^1.0.0: version "1.1.0" @@ -18926,7 +18775,14 @@ split2@^3.0.0: dependencies: readable-stream "^3.0.0" -sprintf-js@^1.0.3: +sponge-case@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/sponge-case/-/sponge-case-1.0.1.tgz#260833b86453883d974f84854cdb63aecc5aef4c" + integrity sha512-dblb9Et4DAtiZ5YSUZHLl4XhH4uK80GhAZrVXdN4O2P4gQ40Wa5UIOPUHlA/nFd2PLblBZWUioLMMAVrgpoYcA== + dependencies: + tslib "^2.0.3" + +sprintf-js@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673" integrity sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug== @@ -18934,7 +18790,7 @@ sprintf-js@^1.0.3: sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== st@^2.0.0: version "2.0.0" @@ -18957,7 +18813,7 @@ stable@^0.1.8: stack-trace@^0.0.10: version "0.0.10" resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" - integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= + integrity sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg== stack-utils@^2.0.3: version "2.0.5" @@ -18966,10 +18822,10 @@ stack-utils@^2.0.3: dependencies: escape-string-regexp "^2.0.0" -stackframe@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.2.0.tgz#52429492d63c62eb989804c11552e3d22e779303" - integrity sha512-GrdeshiRmS1YLMYgzF16olf2jJ/IzxXY9lhKOskuVziubpTYcYqyOwYeJKzQkwy7uN0fYSsbsC4RQaXf9LCrYA== +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" @@ -18979,7 +18835,7 @@ state-toggle@^1.0.0: static-extend@^0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= + integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== dependencies: define-property "^0.2.5" object-copy "^0.1.0" @@ -18995,20 +18851,25 @@ static-site-generator-webpack-plugin@^3.4.2: url "^0.11.0" webpack-sources "^0.2.0" -"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0, statuses@~1.5.0: +statuses@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== + +"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= + integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== store2@^2.12.0: - version "2.13.1" - resolved "https://registry.yarnpkg.com/store2/-/store2-2.13.1.tgz#fae7b5bb9d35fc53dc61cd262df3abb2f6e59022" - integrity sha512-iJtHSGmNgAUx0b/MCS6ASGxb//hGrHHRgzvN+K5bvkBTN7A9RTpPSf1WSp+nPGvWCJ1jRnvY7MKnuqfoi3OEqg== + version "2.14.2" + resolved "https://registry.yarnpkg.com/store2/-/store2-2.14.2.tgz#56138d200f9fe5f582ad63bc2704dbc0e4a45068" + integrity sha512-siT1RiqlfQnGqgT/YzXVUNsom9S0H1OX+dpdGN1xkyYATo4I6sep5NmsRD/40s3IIOvlCq6akxkqG82urIZW1w== stream-parser@~0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/stream-parser/-/stream-parser-0.3.1.tgz#1618548694420021a1182ff0af1911c129761773" - integrity sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M= + integrity sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ== dependencies: debug "2" @@ -19024,11 +18885,6 @@ stream-transform@^2.1.3: dependencies: mixme "^0.5.1" -streamsearch@0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-0.1.2.tgz#808b9d0e56fc273d809ba57338e929919a1a9f1a" - integrity sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo= - streamsearch@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764" @@ -19073,15 +18929,6 @@ string-similarity@^1.2.2: lodash.map "^4.6.0" lodash.maxby "^4.6.0" -string-width@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - "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" @@ -19091,35 +18938,27 @@ string-width@^1.0.1: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -string-width@^2.0.0, string-width@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - string-width@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.0.1.tgz#0d8158335a6cfd8eb95da9b6b262ce314a036ffd" - integrity sha512-5ohWO/M4//8lErlUUtrFy3b11GtNOuMOU0ysKCDXFcfXuuvUXu95akgj/i8ofmaGdN0hCqyl6uu9i8dS/mQp5g== + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== dependencies: + eastasianwidth "^0.2.0" emoji-regex "^9.2.2" - is-fullwidth-code-point "^4.0.0" strip-ansi "^7.0.1" -"string.prototype.matchall@^4.0.0 || ^3.0.1", string.prototype.matchall@^4.0.2, string.prototype.matchall@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz#5abb5dabc94c7b0ea2380f65ba610b3a544b15fa" - integrity sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg== +"string.prototype.matchall@^4.0.0 || ^3.0.1", string.prototype.matchall@^4.0.2, string.prototype.matchall@^4.0.7: + version "4.0.7" + resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz#8e6ecb0d8a1fb1fda470d81acecb2dba057a481d" + integrity sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg== dependencies: call-bind "^1.0.2" define-properties "^1.1.3" es-abstract "^1.19.1" get-intrinsic "^1.1.1" - has-symbols "^1.0.2" + has-symbols "^1.0.3" internal-slot "^1.0.3" - regexp.prototype.flags "^1.3.1" + regexp.prototype.flags "^1.4.1" side-channel "^1.0.4" string.prototype.padend@^3.0.0: @@ -19140,21 +18979,23 @@ string.prototype.padstart@^3.0.0: define-properties "^1.1.3" es-abstract "^1.19.1" -string.prototype.trimend@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" - integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== +string.prototype.trimend@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0" + integrity sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" + define-properties "^1.1.4" + es-abstract "^1.19.5" -string.prototype.trimstart@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" - integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== +string.prototype.trimstart@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef" + integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" + define-properties "^1.1.4" + es-abstract "^1.19.5" string_decoder@^1.1.1: version "1.3.0" @@ -19166,7 +19007,7 @@ string_decoder@^1.1.1: string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= + integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== string_decoder@~1.1.1: version "1.1.1" @@ -19185,7 +19026,7 @@ stringify-entities@^1.0.1: is-alphanumerical "^1.0.0" is-hexadecimal "^1.0.0" -stringify-entities@^3.0.0, stringify-entities@^3.0.1: +stringify-entities@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-3.1.0.tgz#b8d3feac256d9ffcc9fa1fefdcf3ca70576ee903" integrity sha512-3FP+jGMmMV/ffZs86MoghGqAoqXAdxLrJP4GUdrDN1aIScYih5tuIO3eF4To5AJZ79KDZ8Fpdy7QJnK8SsL1Vg== @@ -19203,27 +19044,13 @@ stringify-object@^3.3.0: is-obj "^1.0.1" is-regexp "^1.0.0" -strip-ansi@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" - integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== - dependencies: - ansi-regex "^5.0.0" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: +strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== dependencies: ansi-regex "^2.0.0" -strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= - dependencies: - ansi-regex "^3.0.0" - strip-ansi@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" @@ -19248,19 +19075,19 @@ strip-ansi@^7.0.1: strip-bom-string@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92" - integrity sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI= + integrity sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g== strip-bom@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= + 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" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== strip-bom@^4.0.0: version "4.0.0" @@ -19270,7 +19097,7 @@ strip-bom@^4.0.0: strip-color@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/strip-color/-/strip-color-0.1.0.tgz#106f65d3d3e6a2d9401cac0eb0ce8b8a702b4f7b" - integrity sha1-EG9l09PmotlAHKwOsM6LinArT3s= + integrity sha512-p9LsUieSjWNNAxVCXLeilaDlmuUOrDS5/dF9znM1nZc7EGX5+zEFC0bEevsNIaldjlks+2jns5Siz6F9iK6jwA== strip-comments@^1.0.2: version "1.0.2" @@ -19283,7 +19110,7 @@ strip-comments@^1.0.2: strip-eof@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= + integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== strip-final-newline@^2.0.0: version "2.0.0" @@ -19293,7 +19120,7 @@ strip-final-newline@^2.0.0: strip-indent@^1.0.0, strip-indent@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= + integrity sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA== dependencies: get-stdin "^4.0.1" @@ -19312,7 +19139,7 @@ strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= + integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== strip-outer@^1.0.1: version "1.0.1" @@ -19322,24 +19149,24 @@ strip-outer@^1.0.1: escape-string-regexp "^1.0.2" strtok3@^6.2.4: - version "6.2.4" - resolved "https://registry.yarnpkg.com/strtok3/-/strtok3-6.2.4.tgz#302aea64c0fa25d12a0385069ba66253fdc38a81" - integrity sha512-GO8IcFF9GmFDvqduIspUBwCzCbqzegyVKIsSymcMgiZKeCfrN9SowtUoi8+b59WZMAjIzVZic/Ft97+pynR3Iw== + version "6.3.0" + resolved "https://registry.yarnpkg.com/strtok3/-/strtok3-6.3.0.tgz#358b80ffe6d5d5620e19a073aa78ce947a90f9a0" + integrity sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw== dependencies: "@tokenizer/token" "^0.3.0" - peek-readable "^4.0.1" + peek-readable "^4.1.0" style-dictionary@^3.0.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/style-dictionary/-/style-dictionary-3.1.1.tgz#780ffebc64a537b877ee5580bd9a937a4ea9ae0a" - integrity sha512-Dpugx2wH3ElMvq1GOaSsfUChr8dwujx2/eBUUd0vaSFkP16LRp5XOJMTHF0f8QuPGkpBfVPXDWCkb3oJ3oJjxg== + version "3.7.1" + resolved "https://registry.yarnpkg.com/style-dictionary/-/style-dictionary-3.7.1.tgz#d61c980513d7bb0a1946a9fab31491a672d0f6a2" + integrity sha512-yYU9Z/J8Znj9T9oJVjo8VOYamrOxv0UbBKPjhSt+PharxrhyQCM4RWb71fgEfv2pK9KO8G83/0ChDNQZ1mn0wQ== dependencies: chalk "^4.0.0" change-case "^4.1.2" - commander "^5.1.0" - fs-extra "^8.1.0" - glob "^7.1.6" - json5 "^2.1.3" + commander "^8.3.0" + fs-extra "^10.0.0" + glob "^7.2.0" + json5 "^2.2.0" jsonc-parser "^3.0.0" lodash "^4.17.15" tinycolor2 "^1.4.1" @@ -19368,7 +19195,7 @@ style-loader@^3.3.1: style-search@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz#7958c793e47e32e07d2b5cafe5c0bf8e12e77902" - integrity sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI= + integrity sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg== style-to-object@0.3.0, style-to-object@^0.3.0: version "0.3.0" @@ -19377,12 +19204,12 @@ style-to-object@0.3.0, style-to-object@^0.3.0: dependencies: inline-style-parser "0.1.1" -stylehacks@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.0.1.tgz#323ec554198520986806388c7fdaebc38d2c06fb" - integrity sha512-Es0rVnHIqbWzveU1b24kbw92HsebBepxfcqe5iix7t9j0PQqhs0IxXVXv0pY2Bxa08CgMkzD6OWql7kbGOuEdA== +stylehacks@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.1.1.tgz#7934a34eb59d7152149fa69d6e9e56f2fc34bcc9" + integrity sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw== dependencies: - browserslist "^4.16.0" + browserslist "^4.21.4" postcss-selector-parser "^6.0.4" stylelint-config-prettier@^9.0.3: @@ -19420,9 +19247,9 @@ stylelint-config-standard@^24.0.0: stylelint-config-recommended "^6.0.0" stylelint-scss@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/stylelint-scss/-/stylelint-scss-4.1.0.tgz#39b808696f8152081163d970449257ff80b5c041" - integrity sha512-BNYTo7MMamhFOlcaAWp2dMpjg6hPyM/FFqfDIYzmYVLMmQJqc8lWRIiTqP4UX5bresj9Vo0dKC6odSh43VP2NA== + version "4.3.0" + resolved "https://registry.yarnpkg.com/stylelint-scss/-/stylelint-scss-4.3.0.tgz#638800faf823db11fff60d537c81051fe74c90fa" + integrity sha512-GvSaKCA3tipzZHoz+nNO7S02ZqOsdBzMiCx9poSmLlb3tdJlGddEX/8QzCOD8O7GQan9bjsvLMsO5xiw6IhhIQ== dependencies: lodash "^4.17.21" postcss-media-query-parser "^0.2.3" @@ -19431,54 +19258,53 @@ stylelint-scss@^4.0.0: postcss-value-parser "^4.1.0" stylelint@^14.0.0: - version "14.2.0" - resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-14.2.0.tgz#da4f0f4580e66911c38c376ed82447b78e32b0fb" - integrity sha512-i0DrmDXFNpDsWiwx6SPRs4/pyw4kvZgqpDGvsTslQMY7hpUl6r33aQvNSn6cnTg2wtZ9rreFElI7XAKpOWi1vQ== + version "14.14.0" + resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-14.14.0.tgz#1acb52497c9a921f23f9c4014d4e0ee6eba768d0" + integrity sha512-yUI+4xXfPHVnueYddSQ/e1GuEA/2wVhWQbGj16AmWLtQJtn28lVxfS4b0CsWyVRPgd3Auzi0NXOthIEUhtQmmA== dependencies: + "@csstools/selector-specificity" "^2.0.2" balanced-match "^2.0.0" - colord "^2.9.2" + colord "^2.9.3" cosmiconfig "^7.0.1" - debug "^4.3.3" - execall "^2.0.0" - fast-glob "^3.2.7" - fastest-levenshtein "^1.0.12" + css-functions-list "^3.1.0" + debug "^4.3.4" + fast-glob "^3.2.12" + fastest-levenshtein "^1.0.16" file-entry-cache "^6.0.1" - get-stdin "^8.0.0" global-modules "^2.0.0" - globby "^11.0.4" + globby "^11.1.0" globjoin "^0.1.4" - html-tags "^3.1.0" + html-tags "^3.2.0" ignore "^5.2.0" import-lazy "^4.0.0" imurmurhash "^0.1.4" is-plain-object "^5.0.0" - known-css-properties "^0.24.0" + known-css-properties "^0.25.0" mathml-tag-names "^2.1.3" meow "^9.0.0" - micromatch "^4.0.4" + micromatch "^4.0.5" normalize-path "^3.0.0" - normalize-selector "^0.2.0" picocolors "^1.0.0" - postcss "^8.3.11" + postcss "^8.4.17" postcss-media-query-parser "^0.2.3" postcss-resolve-nested-selector "^0.1.1" postcss-safe-parser "^6.0.0" - postcss-selector-parser "^6.0.7" - postcss-value-parser "^4.1.0" + postcss-selector-parser "^6.0.10" + postcss-value-parser "^4.2.0" resolve-from "^5.0.0" - specificity "^0.4.1" string-width "^4.2.3" strip-ansi "^6.0.1" style-search "^0.1.0" + supports-hyperlinks "^2.3.0" svg-tags "^1.0.0" - table "^6.7.5" + table "^6.8.0" v8-compile-cache "^2.3.0" - write-file-atomic "^3.0.3" + write-file-atomic "^4.0.2" -stylis@4.0.13: - version "4.0.13" - resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.0.13.tgz#f5db332e376d13cc84ecfe5dace9a2a51d954c91" - integrity sha512-xGPXiFVl4YED9Jh7Euv2V220mriG9u4B2TA6Ybjc1catrstKD2PpIdU3U0RKpkVBC2EhmL/F0sPCr9vrFTNRag== +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== sudo-prompt@^8.2.0: version "8.2.5" @@ -19513,44 +19339,30 @@ supports-color@^8.0.0, supports-color@^8.1.0: dependencies: has-flag "^4.0.0" -supports-color@^9.2.1: - version "9.2.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.2.1.tgz#599dc9d45acf74c6176e0d880bab1d7d718fe891" - integrity sha512-Obv7ycoCTG51N7y175StI9BlAXrmgZrFhZOb0/PyjHBher/NmsdBgbbQ1Inhq+gIhz6+7Gb+jWF2Vqi7Mf1xnQ== +supports-color@^9.2.2: + version "9.2.3" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.2.3.tgz#a6e2c97fc20c80abecd69e50aebe4783ff77d45a" + integrity sha512-aszYUX/DVK/ed5rFLb/dDinVJrQjG/vmU433wtqVSD800rYsJNWxh2R3USV90aLSU+UsyQkbNeffVLzc6B6foA== -supports-hyperlinks@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" - integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ== +supports-hyperlinks@^2.0.0, supports-hyperlinks@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz#3943544347c1ff90b15effb03fc14ae45ec10624" + integrity sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA== dependencies: has-flag "^4.0.0" supports-color "^7.0.0" +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + svg-tags@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764" - integrity sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q= - -svgo@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" - integrity sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw== - dependencies: - chalk "^2.4.1" - coa "^2.0.2" - css-select "^2.0.0" - css-select-base-adapter "^0.1.1" - css-tree "1.0.0-alpha.37" - csso "^4.0.2" - js-yaml "^3.13.1" - mkdirp "~0.5.1" - object.values "^1.1.0" - sax "~1.2.4" - stable "^0.1.8" - unquote "~1.1.1" - util.promisify "~1.0.0" + integrity sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA== -svgo@^2.7.0: +svgo@^2.7.0, svgo@^2.8.0: version "2.8.0" resolved "https://registry.yarnpkg.com/svgo/-/svgo-2.8.0.tgz#4ff80cce6710dc2795f0c7c74101e6764cfccd24" integrity sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg== @@ -19566,11 +19378,18 @@ svgo@^2.7.0: swap-case@^1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/swap-case/-/swap-case-1.1.2.tgz#c39203a4587385fad3c850a0bd1bcafa081974e3" - integrity sha1-w5IDpFhzhfrTyFCgvRvK+ggZdOM= + integrity sha512-BAmWG6/bx8syfc6qXPprof3Mn5vQgf5dwdUNJhsNqU9WdPt5P+ES/wQ5bxfijy8zwZgZZHslC3iAsxsuQMCzJQ== dependencies: lower-case "^1.1.1" upper-case "^1.1.1" +swap-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/swap-case/-/swap-case-2.0.2.tgz#671aedb3c9c137e2985ef51c51f9e98445bf70d9" + integrity sha512-kc6S2YS/2yXbtkSMunBtKdah4VFETZ8Oh6ONSmSd9bRxhqTrtARUCBUiWXH3xVPpvR7tz2CSnkuXVE42EcGnMw== + dependencies: + tslib "^2.0.3" + symbol-tree@^3.2.4: version "3.2.4" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" @@ -19587,9 +19406,9 @@ symbol.prototype.description@^1.0.0: object.getownpropertydescriptors "^2.1.2" synchronous-promise@^2.0.15: - version "2.0.15" - resolved "https://registry.yarnpkg.com/synchronous-promise/-/synchronous-promise-2.0.15.tgz#07ca1822b9de0001f5ff73595f3d08c4f720eb8e" - integrity sha512-k8uzYIkIVwmT+TcglpdN50pS2y1BDcUnBPK9iJeGu0Pl1lOI8pD6wtzgw91Pjpe+RxtTncw32tLxs/R0yNL2Mg== + version "2.0.16" + resolved "https://registry.yarnpkg.com/synchronous-promise/-/synchronous-promise-2.0.16.tgz#669b75e86b4295fdcc1bb0498de9ac1af6fd51a9" + integrity sha512-qImOD23aDfnIDNqlG1NOehdB9IYsn1V9oByPjKY1nakv2MQYCEMyX033/q+aEtYCpmYK1cv2+NTmlH+ra6GA5A== synckit@^0.4.1: version "0.4.1" @@ -19599,7 +19418,7 @@ synckit@^0.4.1: tslib "^2.3.1" uuid "^8.3.2" -table-layout@^1.0.1: +table-layout@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/table-layout/-/table-layout-1.0.2.tgz#c4038a1853b0136d63365a734b6931cf4fad4a04" integrity sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A== @@ -19609,10 +19428,10 @@ table-layout@^1.0.1: typical "^5.2.0" wordwrapjs "^4.0.0" -table@^6.0.9, table@^6.7.5: - version "6.7.5" - resolved "https://registry.yarnpkg.com/table/-/table-6.7.5.tgz#f04478c351ef3d8c7904f0e8be90a1b62417d238" - integrity sha512-LFNeryOqiQHqCVKzhkymKwt6ozeRhlm8IL1mE8rNUurkir4heF6PzMyRgaTa4tlyPTGGgXuvVOF/OLWiH09Lqw== +table@^6.0.9, table@^6.8.0: + version "6.8.0" + resolved "https://registry.yarnpkg.com/table/-/table-6.8.0.tgz#87e28f14fa4321c3377ba286f07b79b281a3b3ca" + integrity sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA== dependencies: ajv "^8.0.1" lodash.truncate "^4.4.2" @@ -19665,13 +19484,6 @@ telejson@^6.0.8: lodash "^4.17.21" memoizerific "^1.11.3" -term-size@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69" - integrity sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk= - dependencies: - execa "^0.7.0" - term-size@^2.1.0: version "2.2.1" resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" @@ -19696,17 +19508,7 @@ terser-webpack-plugin@^4.2.3, terser-webpack-plugin@^5.0.0, terser-webpack-plugi serialize-javascript "^6.0.0" terser "^5.14.1" -terser@^5.10.0: - version "5.14.2" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.14.2.tgz#9ac9f22b06994d736174f4091aa368db896f1c10" - integrity sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA== - dependencies: - "@jridgewell/source-map" "^0.3.2" - acorn "^8.5.0" - commander "^2.20.0" - source-map-support "~0.5.20" - -terser@^5.14.1: +terser@^5.10.0, terser@^5.14.1, terser@^5.2.0: version "5.15.1" resolved "https://registry.yarnpkg.com/terser/-/terser-5.15.1.tgz#8561af6e0fd6d839669c73b92bdd5777d870ed6c" integrity sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw== @@ -19730,10 +19532,10 @@ text-extensions@^1.0.0: resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ== -text-table@0.2.0, text-table@^0.2.0: +text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== throat@^6.0.1: version "6.0.1" @@ -19756,7 +19558,7 @@ through2-filter@^3.0.0: through2@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/through2/-/through2-1.1.1.tgz#0847cbc4449f3405574dbdccd9bb841b83ac3545" - integrity sha1-CEfLxESfNAVXTb3M2buEG4OsNUU= + integrity sha512-zEbpaeSMHxczpTzO1KkMHjBC1enTA68ojeaZGG4toqdASpb9t4xUZaYFBq2/9OHo5nTGFVSYd4c910OR+6wxbQ== dependencies: readable-stream ">=1.1.13-1 <1.2.0-0" xtend ">=4.0.0 <4.1.0-0" @@ -19779,7 +19581,7 @@ through2@^4.0.0: "through@>=2.2.7 <3", through@^2.3.6, through@^2.3.8: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== timers-ext@^0.1.7: version "0.1.7" @@ -19789,16 +19591,6 @@ timers-ext@^0.1.7: es5-ext "~0.10.46" next-tick "1" -timm@^1.6.1: - version "1.7.1" - resolved "https://registry.yarnpkg.com/timm/-/timm-1.7.1.tgz#96bab60c7d45b5a10a8a4d0f0117c6b7e5aff76f" - integrity sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw== - -timsort@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" - integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - tinycolor2@^1.4.1: version "1.4.2" resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.2.tgz#3f6a4d1071ad07676d7fa472e1fac40a719d8803" @@ -19807,11 +19599,18 @@ tinycolor2@^1.4.1: title-case@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/title-case/-/title-case-2.1.1.tgz#3e127216da58d2bc5becf137ab91dae3a7cd8faa" - integrity sha1-PhJyFtpY0rxb7PE3q5Ha46fNj6o= + integrity sha512-EkJoZ2O3zdCz3zJsYCsxyq2OC5hrxR9mfdd5I+w8h/tmFfeOxJ+vvkxsKxdmN0WtS9zLdHEgfgVOiMVgv+Po4Q== dependencies: no-case "^2.2.0" upper-case "^1.0.3" +title-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/title-case/-/title-case-3.0.3.tgz#bc689b46f02e411f1d1e1d081f7c3deca0489982" + integrity sha512-e1zGYRvbffpcHIrnuqT0Dh+gEJtDaxDSoG4JAIpq4oDFyooziLBIiYQv0GBT4FUAnUop5uZ1hiIAj7oAF6sOCA== + dependencies: + tslib "^2.0.3" + tmp@^0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" @@ -19834,7 +19633,7 @@ tmpl@1.0.5: to-absolute-glob@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" - integrity sha1-GGX0PZ50sIItufFFt4z/fQ98hJs= + integrity sha512-rtwLUQEwT8ZeKQbyFJyomBRYXyE16U5VKuy0ftxLMK/PZb2fkOsg5r9kHdauuVDbsNdIBoC/HCthpidamQFXYA== dependencies: is-absolute "^1.0.0" is-negated-glob "^1.0.0" @@ -19842,12 +19641,12 @@ to-absolute-glob@^2.0.0: 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 sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + 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 sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= + integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== dependencies: kind-of "^3.0.2" @@ -19859,7 +19658,7 @@ to-readable-stream@^1.0.0: 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 sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= + integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== dependencies: is-number "^3.0.0" repeat-string "^1.6.1" @@ -19884,7 +19683,7 @@ to-regex@^3.0.1, to-regex@^3.0.2: to-through@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-through/-/to-through-2.0.0.tgz#fc92adaba072647bc0b67d6b03664aa195093af6" - integrity sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY= + integrity sha512-+QIz37Ly7acM4EMdw2PRN389OneM5+d844tirkGp4dPKzI5OE72V9OsbFp+CIYJDahZ41ZV05hNtcPAQUAm9/Q== dependencies: through2 "^2.0.3" @@ -19899,9 +19698,9 @@ toidentifier@1.0.1: integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== token-types@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/token-types/-/token-types-4.1.1.tgz#ef9e8c8e2e0ded9f1b3f8dbaa46a3228b113ba1a" - integrity sha512-hD+QyuUAyI2spzsI0B7gf/jJ2ggR4RjkAo37j3StuePhApJUwcWDjnHDOFdIWYSwNR28H14hpwm4EI+V1Ted1w== + version "4.2.1" + resolved "https://registry.yarnpkg.com/token-types/-/token-types-4.2.1.tgz#0f897f03665846982806e138977dbe72d44df753" + integrity sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ== dependencies: "@tokenizer/token" "^0.3.0" ieee754 "^1.2.1" @@ -19912,13 +19711,14 @@ toml@^2.3.2: integrity sha512-gVweAectJU3ebq//Ferr2JUY4WKSDe5N+z0FvjDncLGyHmIDoxgY/2Ie4qfEIDm4IS7OA6Rmdm7pdEEdMcV/xQ== tough-cookie@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" - integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== + version "4.1.2" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.2.tgz#e53e84b85f24e0b65dd526f46628db6c85f6b874" + integrity sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ== dependencies: psl "^1.1.33" punycode "^2.1.1" - universalify "^0.1.2" + universalify "^0.2.0" + url-parse "^1.5.3" tr46@^2.1.0: version "2.1.0" @@ -19937,7 +19737,7 @@ tr46@^3.0.0: tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" - integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== tree-kill@^1.2.2: version "1.2.2" @@ -19947,7 +19747,7 @@ tree-kill@^1.2.2: trim-newlines@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= + integrity sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw== trim-newlines@^3.0.0: version "3.0.1" @@ -19957,7 +19757,7 @@ trim-newlines@^3.0.0: trim-repeated@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/trim-repeated/-/trim-repeated-1.0.0.tgz#e3646a2ea4e891312bf7eace6cfb05380bc01c21" - integrity sha1-42RqLqTokTEr9+rObPsFOAvAHCE= + integrity sha512-pkonvlKk8/ZuR0D5tLW8ljt5I8kmxp2XKymhepUeOdCEfKpZaktSArkLHZt76OB1ZvO9bssUsDty4SWhLvZpLg== dependencies: escape-string-regexp "^1.0.2" @@ -19987,9 +19787,9 @@ ts-dedent@^2.0.0: integrity sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ== ts-jest@^27.0.1: - version "27.1.2" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.1.2.tgz#5991d6eb3fd8e1a8d4b8f6de3ec0a3cc567f3151" - integrity sha512-eSOiJOWq6Hhs6Khzk5wKC5sgWIXgXqOCiIl1+3lfnearu58Hj4QpE5tUhQcA3xtZrELbcvAGCsd6HB8OsaVaTA== + version "27.1.5" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.1.5.tgz#0ddf1b163fbaae3d5b7504a1e65c914a95cff297" + integrity sha512-Xv6jBQPoBEvBq/5i2TeSG9tt/nqkbpcurrEG1b+2yfBrcJelOZF9Ml6dmyMh7bcW9JyFbRYpR5rxROSlBLTZHA== dependencies: bs-logger "0.x" fast-json-stable-stringify "2.x" @@ -20007,25 +19807,7 @@ ts-lit-plugin@^1.2.1: dependencies: lit-analyzer "1.2.1" -ts-node@^10.0.0: - version "10.4.0" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.4.0.tgz#680f88945885f4e6cf450e7f0d6223dd404895f7" - integrity sha512-g0FlPvvCXSIO1JDF6S232P5jPYqBkRL9qly81ZgAOSU7rwI0stphCgd2kLiCrU9DjQCrJMWEqcNSjQL02s6d8A== - dependencies: - "@cspotcode/source-map-support" "0.7.0" - "@tsconfig/node10" "^1.0.7" - "@tsconfig/node12" "^1.0.7" - "@tsconfig/node14" "^1.0.0" - "@tsconfig/node16" "^1.0.2" - acorn "^8.4.1" - acorn-walk "^8.1.1" - arg "^4.1.0" - create-require "^1.1.0" - diff "^4.0.1" - make-error "^1.1.1" - yn "3.1.1" - -ts-node@^10.8.1: +ts-node@^10.0.0, ts-node@^10.8.1: version "10.9.1" resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== @@ -20066,14 +19848,14 @@ ts-simple-type@~1.0.5: resolved "https://registry.yarnpkg.com/ts-simple-type/-/ts-simple-type-1.0.7.tgz#03930af557528dd40eaa121913c7035a0baaacf8" integrity sha512-zKmsCQs4dZaeSKjEA7pLFDv7FHHqAFLPd0Mr//OIJvu8M+4p4bgSFJwZSEBEg3ec9W7RzRz1vi8giiX0+mheBQ== -tsconfig-paths@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.12.0.tgz#19769aca6ee8f6a1a341e38c8fa45dd9fb18899b" - integrity sha512-e5adrnOYT6zqVnWqZu7i/BQ3BnhzvGbjEjejFXO20lKIKpwTaupkCPgEfv4GZK1IBciJUEhYs3J3p75FdaTFVg== +tsconfig-paths@^3.14.1: + version "3.14.1" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz#ba0734599e8ea36c862798e920bcf163277b137a" + integrity sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ== dependencies: "@types/json5" "^0.0.29" json5 "^1.0.1" - minimist "^1.2.0" + minimist "^1.2.6" strip-bom "^3.0.0" tslib@^1.10.0, tslib@^1.8.1, tslib@^1.9.0: @@ -20081,26 +19863,11 @@ tslib@^1.10.0, tslib@^1.8.1, tslib@^1.9.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2, tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.2.0, tslib@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" - integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== - -tslib@^2.4.0, tslib@~2.4.0: +tslib@^2, tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.3.1, tslib@^2.4.0, tslib@~2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== -tslib@~2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.3.tgz#8e0741ac45fc0c226e58a17bfc3e64b9bc6ca61c" - integrity sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ== - -tslib@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.2.0.tgz#fb2c475977e35e241311ede2693cee1ec6698f5c" - integrity sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w== - tsscmp@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb" @@ -20113,22 +19880,23 @@ tsutils@^3.21.0: dependencies: tslib "^1.8.1" -tty-table@^2.8.10: - version "2.8.13" - resolved "https://registry.yarnpkg.com/tty-table/-/tty-table-2.8.13.tgz#d484a416381973eaebbdf19c79136b390e5c6d70" - integrity sha512-eVV/+kB6fIIdx+iUImhXrO22gl7f6VmmYh0Zbu6C196fe1elcHXd7U6LcLXu0YoVPc2kNesWiukYcdK8ZmJ6aQ== +tty-table@^4.1.5: + version "4.1.6" + resolved "https://registry.yarnpkg.com/tty-table/-/tty-table-4.1.6.tgz#6bd58338f36c94cce478c3337934d8a65ab40a73" + integrity sha512-kRj5CBzOrakV4VRRY5kUWbNYvo/FpOsz65DzI5op9P+cHov3+IqPbo1JE1ZnQGkHdZgNFDsrEjrfqqy/Ply9fw== dependencies: - chalk "^3.0.0" - csv "^5.3.1" - smartwrap "^1.2.3" + chalk "^4.1.2" + csv "^5.5.0" + kleur "^4.1.4" + smartwrap "^2.0.2" strip-ansi "^6.0.0" wcwidth "^1.0.1" - yargs "^15.1.0" + yargs "^17.1.1" tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== dependencies: safe-buffer "^5.0.1" @@ -20142,7 +19910,7 @@ type-check@^0.4.0, type-check@~0.4.0: type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= + integrity sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg== dependencies: prelude-ls "~1.1.2" @@ -20181,11 +19949,6 @@ type-fest@^0.8.0, type-fest@^0.8.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -type-fest@^2.5.3: - version "2.8.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.8.0.tgz#39d7c9f9c508df8d6ce1cf5a966b0e6568dcc50d" - integrity sha512-O+V9pAshf9C6loGaH0idwsmugI2LxVNR7DtS40gVo2EXZVYFgz9OuNtOhgHLdHdapOEWNdvz9Ob/eeuaWwwlxA== - type-is@^1.6.16, type-is@^1.6.4, type-is@~1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" @@ -20197,17 +19960,17 @@ type-is@^1.6.16, type-is@^1.6.4, type-is@~1.6.18: type-of@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/type-of/-/type-of-2.0.1.tgz#e72a1741896568e9f628378d816d6912f7f23972" - integrity sha1-5yoXQYllaOn2KDeNgW1pEvfyOXI= + integrity sha512-39wxbwHdQ2sTiBB8wAzKfQ9GN+om8w+sjNWzr+vZJR5AMD5J+J7Yc8AtXnU9r/r2c8XiDZ/smxutDmZehX/qpQ== type@^1.0.1: version "1.2.0" resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== -type@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/type/-/type-2.5.0.tgz#0a2e78c2e77907b252abe5f298c1b01c63f0db3d" - integrity sha512-180WMDQaIMm3+7hGXWf12GtdniDEy7nYcyFMKJn/eZz/6tSLXrUN9V0wKSbMjej0I1WHWbpREDEKHtqPQa9NNw== +type@^2.7.2: + version "2.7.2" + resolved "https://registry.yarnpkg.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0" + integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw== typedarray-to-buffer@^3.1.5: version "3.1.5" @@ -20219,7 +19982,7 @@ typedarray-to-buffer@^3.1.5: typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== typescript@^3.8.3: version "3.9.10" @@ -20227,9 +19990,9 @@ typescript@^3.8.3: integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q== typescript@^4.4.3, typescript@^4.5.2: - version "4.5.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.4.tgz#a17d3a0263bf5c8723b9c52f43c5084edf13c2e8" - integrity sha512-VgYs2A2QIRuGphtzFV7aQJduJ2gyfTljngLzjpfW9FoYZF6xuw1W0vW9ghCKLfcWrCFxK81CSGRAvS1pn4fIUg== + version "4.8.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.8.4.tgz#c464abca159669597be5f96b8943500b238e60e6" + integrity sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ== typescript@~4.3.2: version "4.3.5" @@ -20246,6 +20009,11 @@ typical@^5.2.0: resolved "https://registry.yarnpkg.com/typical/-/typical-5.2.0.tgz#4daaac4f2b5315460804f0acf6cb69c52bb93066" integrity sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg== +ua-parser-js@^0.7.30: + version "0.7.32" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.32.tgz#cd8c639cdca949e30fa68c44b7813ef13e36d211" + integrity sha512-f9BESNVhzlhEFf2CHMSj40NWOjYPl1YKYbrvIr/hFTDEmLq7SRbWvm7FcdcpCYT95zrOhC7gZSxjdnnTpBcwVw== + uglify-js@3.4.x: version "3.4.10" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.10.tgz#9ad9563d8eb3acdfb8d38597d2af1d815f6a755f" @@ -20255,18 +20023,18 @@ uglify-js@3.4.x: source-map "~0.6.1" uglify-js@^3.1.4: - version "3.14.5" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.14.5.tgz#cdabb7d4954231d80cb4a927654c4655e51f4859" - integrity sha512-qZukoSxOG0urUTvjc2ERMTcAy+BiFh3weWAkeurLwjrCba73poHmG3E36XEjd/JGukMzwTL7uCxZiAexj8ppvQ== + version "3.17.4" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.4.tgz#61678cf5fa3f5b7eb789bb345df29afb8257c22c" + integrity sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g== -unbox-primitive@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" - integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== +unbox-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" + integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== dependencies: - function-bind "^1.1.1" - has-bigints "^1.0.1" - has-symbols "^1.0.2" + call-bind "^1.0.2" + has-bigints "^1.0.2" + has-symbols "^1.0.3" which-boxed-primitive "^1.0.2" unbzip2-stream@1.4.3: @@ -20280,14 +20048,14 @@ unbzip2-stream@1.4.3: unc-path-regex@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" - integrity sha1-5z3T17DXxe2G+6xrCufYxqadUPo= + integrity sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg== underscore.string@^3.3.5: - version "3.3.5" - resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-3.3.5.tgz#fc2ad255b8bd309e239cbc5816fd23a9b7ea4023" - integrity sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg== + version "3.3.6" + resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-3.3.6.tgz#ad8cf23d7423cb3b53b898476117588f4e2f9159" + integrity sha512-VoC83HWXmCrF6rgkyxS9GHv8W9Q5nhMKho+OadDJGzL2oDYbYEppBaCMH6pFlwLeqj2QS+hhkw2kpXkSdD1JxQ== dependencies: - sprintf-js "^1.0.3" + sprintf-js "^1.1.1" util-deprecate "^1.0.2" undici@^5.12.0: @@ -20336,9 +20104,9 @@ unicode-match-property-value-ecmascript@^2.0.0: integrity sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw== unicode-property-aliases-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz#0a36cb9a585c4f6abd51ad1deddb285c165297c8" - integrity sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ== + 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" @@ -20491,7 +20259,7 @@ unist-util-stringify-position@^1.0.0, unist-util-stringify-position@^1.1.1: resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-1.1.2.tgz#3f37fcf351279dcbca7480ab5889bb8a832ee1c6" integrity sha512-pNCVrk64LZv1kElr0N1wPiHEUoXNVFERp+mlTg/s9R5Lwg87f9bM/3sQB99w+N9D/qnM9ar3+AKDBwo/gm/iQQ== -unist-util-stringify-position@^2.0.0, unist-util-stringify-position@^2.0.3: +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== @@ -20499,9 +20267,9 @@ unist-util-stringify-position@^2.0.0, unist-util-stringify-position@^2.0.3: "@types/unist" "^2.0.2" unist-util-stringify-position@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-3.0.0.tgz#d517d2883d74d0daa0b565adc3d10a02b4a8cde9" - integrity sha512-SdfAl8fsDclywZpfMDTVDxA2V7LjtRDTOFd44wUJamgl6OlVngsqWjxvermMYf60elWHbxhuRCZml7AnuXCaSA== + version "3.0.2" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-3.0.2.tgz#5c6aa07c90b1deffd9153be170dce628a869a447" + integrity sha512-7A6eiDCs9UtjcwZOcCpM4aPII3bAAGv13E96IkawkOAW0OhH+yRxtY0lzo8KiHpzEMfH7Q+FizUmwp8Iqy5EWg== dependencies: "@types/unist" "^2.0.0" @@ -20525,7 +20293,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.2: +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== @@ -20541,11 +20309,16 @@ unist-util-visit@^1.1.0, unist-util-visit@^1.4.1: dependencies: unist-util-visit-parents "^2.0.0" -universalify@^0.1.0, universalify@^0.1.2: +universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== +universalify@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" + integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== + universalify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" @@ -20561,17 +20334,12 @@ unixify@^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 sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= - -unquote@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" - integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= + 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 sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= + integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== dependencies: has-value "^0.3.1" isobject "^3.0.0" @@ -20579,7 +20347,7 @@ unset-value@^1.0.0: untildify@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/untildify/-/untildify-2.1.0.tgz#17eb2807987f76952e9c0485fc311d06a826a2e0" - integrity sha1-F+soB5h/dpUunASF/DEdBqgmouA= + integrity sha512-sJjbDp2GodvkB0FZZcn7k6afVisqX5BZD7Yq3xp4nN2O15BBK0cLm3Vwn2vQaF7UDS0UUsrQMkkplmDI5fskig== dependencies: os-homedir "^1.0.0" @@ -20633,7 +20401,7 @@ update-notifier@^5.1.0: upper-case-first@^1.1.0, upper-case-first@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-1.1.2.tgz#5d79bedcff14419518fd2edb0a0507c9b6859115" - integrity sha1-XXm+3P8UQZUY/S7bCgUHybaFkRU= + integrity sha512-wINKYvI3Db8dtjikdAqoBbZoP6Q+PZUyfMR7pmwHzjC2quzSkUq5DmPrTtPEqHaz8AGtmsB4TqwapMTM1QAQOQ== dependencies: upper-case "^1.1.1" @@ -20647,7 +20415,7 @@ upper-case-first@^2.0.2: upper-case@^1.0.3, upper-case@^1.1.0, upper-case@^1.1.1, upper-case@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" - integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg= + integrity sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA== upper-case@^2.0.2: version "2.0.2" @@ -20666,7 +20434,7 @@ uri-js@^4.2.2: urix@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== url-loader@^4.1.1: version "4.1.1" @@ -20680,14 +20448,22 @@ url-loader@^4.1.1: url-parse-lax@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" - integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= + integrity sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ== dependencies: prepend-http "^2.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" + integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== + dependencies: + 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 sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= + integrity sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ== dependencies: punycode "1.3.2" querystring "0.2.0" @@ -20697,47 +20473,30 @@ use@^3.1.0: resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== -utif@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/utif/-/utif-2.0.1.tgz#9e1582d9bbd20011a6588548ed3266298e711759" - integrity sha512-Z/S1fNKCicQTf375lIP9G8Sa1H/phcysstNrrSdZKj1f9g58J4NMgb5IgiEZN9/nLMPDwF0W7hdOe9Qq2IYoLg== - dependencies: - pako "^1.0.5" - 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 sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= - -util.promisify@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee" - integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.2" - has-symbols "^1.0.1" - object.getownpropertydescriptors "^2.1.0" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== utila@~0.4: version "0.4.0" resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= + integrity sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA== + +utility-types@^3.10.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/utility-types/-/utility-types-3.10.0.tgz#ea4148f9a741015f05ed74fd615e1d20e6bed82b" + integrity sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg== utils-merge@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= + 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 sha1-DwWkCu90+eWVHiDvv0SxGHHlZBA= - -uuid@3.4.0, uuid@^3.0.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== + integrity sha512-dsNgbLaTrd6l3MMxTtouOCFw4CBFc/3a+GgYA2YyrJvyQ1u6q4pcu3ktLoUZ/VN/Aw9WsauazbgsgdfVWgAKQg== uuid@^8.3.2: version "8.3.2" @@ -20754,19 +20513,28 @@ v8-compile-cache@^2.0.3, v8-compile-cache@^2.3.0: resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== -v8-to-istanbul@^8.0.0, v8-to-istanbul@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.0.tgz#0aeb763894f1a0a1676adf8a8b7612a38902446c" - integrity sha512-/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA== +v8-to-istanbul@^8.1.0: + version "8.1.1" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" + integrity sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w== dependencies: "@types/istanbul-lib-coverage" "^2.0.1" convert-source-map "^1.6.0" source-map "^0.7.3" +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== + dependencies: + "@jridgewell/trace-mapping" "^0.3.12" + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^1.6.0" + valid-url@^1.0.9: version "1.0.9" resolved "https://registry.yarnpkg.com/valid-url/-/valid-url-1.0.9.tgz#1c14479b40f1397a75782f115e4086447433a200" - integrity sha1-HBRHm0DxOXp1eC8RXkCGRHQzogA= + integrity sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA== validate-npm-package-license@^3.0.1: version "3.0.4" @@ -20779,22 +20547,17 @@ validate-npm-package-license@^3.0.1: value-or-function@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz#1c243a50b595c1be54a754bfece8563b9ff8d813" - integrity sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM= + integrity sha512-jdBB2FrWvQC/pnPtIqcLsMaQgjhdb6B7tk1MMyTKapox+tQZbdRP4uLxu/JY0t7fbfDCUMnuelzEYv5GsxHhdg== value-or-promise@1.0.11, value-or-promise@^1.0.11: version "1.0.11" resolved "https://registry.yarnpkg.com/value-or-promise/-/value-or-promise-1.0.11.tgz#3e90299af31dd014fe843fe309cefa7c1d94b140" integrity sha512-41BrgH+dIbCFXClcSapVs5M6GkENd3gQOJpEfPDNa71LsUGMXDL0jMWpI/Rh7WhX+Aalfz2TTS3Zt5pUsbnhLg== -value-or-promise@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/value-or-promise/-/value-or-promise-1.0.6.tgz#218aa4794aa2ee24dcf48a29aba4413ed584747f" - integrity sha512-9r0wQsWD8z/BxPOvnwbPf05ZvFngXyouE9EKB+5GbYix+BYnAwrIChCUyFIinfbf2FL/U71z+CPpbnmTdxrwBg== - vary@^1, vary@^1.1.2, vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== vfile-location@^2.0.0: version "2.0.6" @@ -20807,9 +20570,9 @@ vfile-location@^3.0.0, vfile-location@^3.2.0: integrity sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA== vfile-message@*: - version "3.1.0" - resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-3.1.0.tgz#5437035aa43185ff4b9210d32fada6c640e59143" - integrity sha512-4QJbBk+DkPEhBXq3f260xSaWtjE4gPKOfulzfMFF8ZNwaPZieWsg3iVlcmF04+eebzpcpeXOOFMfrYzJHVYg+g== + version "3.1.2" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-3.1.2.tgz#a2908f64d9e557315ec9d7ea3a910f658ac05f7d" + integrity sha512-QjSNP6Yxzyycd4SVOtmKKyTsSvClqBPJcd00Z0zuPj3hOIjg0rUPG6DbFGPvUKRgYyaIWLPKpuEclcuvb3H8qA== dependencies: "@types/unist" "^2.0.0" unist-util-stringify-position "^3.0.0" @@ -20875,7 +20638,7 @@ vinyl-fs@^3.0.3: vinyl-source-stream@1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vinyl-source-stream/-/vinyl-source-stream-1.1.2.tgz#62b53a135610a896e98ca96bee3a87f008a8e780" - integrity sha1-YrU6E1YQqJbpjKlr7jqH8Aio54A= + integrity sha512-X+1Jq+M6ufv/ky480hndPBsNb0ieqTQkvpakxMTxb7oUlyuNaJKL2HddYUrbTec0Lb0J53JlDiCetcgJ3b3Wmg== dependencies: through2 "^2.0.3" vinyl "^0.4.3" @@ -20883,7 +20646,7 @@ vinyl-source-stream@1.1.2: vinyl-sourcemap@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz#92a800593a38703a8cdb11d8b300ad4be63b3e16" - integrity sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY= + integrity sha512-NiibMgt6VJGJmyw7vtzhctDcfKch4e4n9TBeoWlirb7FMg9/1Ov9k+A5ZRAtywBpRPiyECvQRQllYM8dECegVA== dependencies: append-buffer "^1.0.2" convert-source-map "^1.5.0" @@ -20896,14 +20659,14 @@ vinyl-sourcemap@^1.1.0: vinyl-string@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/vinyl-string/-/vinyl-string-1.0.2.tgz#3a249efeb0d36c4cb0a5e59e30d68e54f739d8e3" - integrity sha1-OiSe/rDTbEywpeWeMNaOVPc52OM= + integrity sha512-mDkPUvCM7K9r0WYZKIWc/dfPH8wkJBbe/3wZUU9EJyw3g6VSACg6FLlcZ/QbP1lTSdtBsVjQoYG1a9K0cfoKeQ== dependencies: vinyl "^1.1.1" vinyl@^0.4.3: version "0.4.6" resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.4.6.tgz#2f356c87a550a255461f36bbeb2a5ba8bf784847" - integrity sha1-LzVsh6VQolVGHza76ypbqL94SEc= + integrity sha512-pmza4M5VA15HOImIQYWhoXGlGNafCm0QK5BpBUXkzzEwrRxKqBsbAhTfkT2zMcJhUX1G1Gkid0xaV8WjOl7DsA== dependencies: clone "^0.2.0" clone-stats "^0.0.1" @@ -20911,7 +20674,7 @@ vinyl@^0.4.3: vinyl@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-1.2.0.tgz#5c88036cf565e5df05558bfc911f8656df218884" - integrity sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ= + integrity sha512-Ci3wnR2uuSAWFMSglZuB8Z2apBdtOyz8CV7dC6/U1XbltXBC+IuutUkXQISz01P+US2ouBuesSbV6zILZ6BuzQ== dependencies: clone "^1.0.0" clone-stats "^0.0.1" @@ -20955,9 +20718,9 @@ vscode-html-languageservice@3.1.0: vscode-uri "^2.1.2" vscode-languageserver-textdocument@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.3.tgz#879f2649bfa5a6e07bc8b392c23ede2dfbf43eff" - integrity sha512-ynEGytvgTb6HVSUwPJIAZgiHQmPCx8bZ8w5um5Lz+q5DjP0Zj8wTFhQpyg8xaMvefDytw2+HH5yzqS+FhsR28A== + version "1.0.7" + resolved "https://registry.yarnpkg.com/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.7.tgz#16df468d5c2606103c90554ae05f9f3d335b771b" + integrity sha512-bFJH7UQxlXT8kKeyiyu41r22jCZXG8kuuVVA33OEJn1diWOZK5n8zBSPZFHVBOu8kXZ6h0LIRhf5UnCo61J4Hg== vscode-languageserver-types@3.16.0-next.2: version "3.16.0-next.2" @@ -20995,15 +20758,7 @@ walker@^1.0.7, walker@~1.0.5: dependencies: makeerror "1.0.12" -watchpack@^2.2.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.3.1.tgz#4200d9447b401156eeca7767ee610f8809bc9d25" - integrity sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA== - dependencies: - glob-to-regexp "^0.4.1" - graceful-fs "^4.1.2" - -watchpack@^2.4.0: +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== @@ -21014,15 +20769,10 @@ watchpack@^2.4.0: wcwidth@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" - integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= + integrity sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg== dependencies: defaults "^1.0.3" -weak-lru-cache@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/weak-lru-cache/-/weak-lru-cache-1.2.1.tgz#6b4f2da7e1701f845e71522417f1df1e39503df8" - integrity sha512-O5ag1F0Xk6ui+Fg5LlosTcVAyHs6DeyiDDbOapNtFCx/KjZ82B3U9stM9hvzbVclKWn9ABPjaINX/nQkGkJkKg== - weak-lru-cache@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/weak-lru-cache/-/weak-lru-cache-1.2.2.tgz#fdbb6741f36bae9540d12f480ce8254060dccd19" @@ -21072,7 +20822,7 @@ webcrypto-core@^1.7.4: webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" - integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== webidl-conversions@^5.0.0: version "5.0.0" @@ -21106,13 +20856,12 @@ webpack-filter-warnings-plugin@^1.2.1: integrity sha512-Ez6ytc9IseDMLPo0qCuNNYzgtUl8NovOqjIq4uAU8LTD4uoa1w1KpZyyzFtLTEMZpkkOkLfL9eN+KGYdk1Qtwg== webpack-hot-middleware@^2.25.1: - version "2.25.1" - resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.25.1.tgz#581f59edf0781743f4ca4c200fd32c9266c6cf7c" - integrity sha512-Koh0KyU/RPYwel/khxbsDz9ibDivmUbrRuKSSQvW42KSDdO4w23WI3SkHpSUKHE76LrFnnM/L7JCrpBwu8AXYw== + version "2.25.2" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.25.2.tgz#f7f936f3871d8c4eb95ecdf23a34e9cefe9806e8" + integrity sha512-CVgm3NAQyfdIonRvXisRwPTUYuSbyZ6BY7782tMeUzWOO7RmVI2NaBYuCp41qyD4gYCkJyTneAJdK69A13B0+A== dependencies: ansi-html-community "0.0.8" html-entities "^2.1.0" - querystring "^0.2.0" strip-ansi "^6.0.0" webpack-merge@^5.8.0: @@ -21126,7 +20875,7 @@ webpack-merge@^5.8.0: webpack-sources@^0.2.0: version "0.2.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.2.3.tgz#17c62bfaf13c707f9d02c479e0dcdde8380697fb" - integrity sha1-F8Yr+vE8cH+dAsR54Nzd6DgGl/s= + integrity sha512-iqanNZjOHLdPn/R0e/nKVn90dm4IsUMxKam0MZD1btWhFub/Cdo1nWdMio6yEqBc0F8mEieOjc+jfBSXwna94Q== dependencies: source-list-map "^1.1.1" source-map "~0.5.3" @@ -21153,9 +20902,9 @@ webpack-sources@^3.2.3: integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== webpack-stats-plugin@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/webpack-stats-plugin/-/webpack-stats-plugin-1.0.3.tgz#0f64551a0b984b48a9e7acdee32e3cfda556fe51" - integrity sha512-tV/SQHl6lKfBahJcNDmz8JG1rpWPB9NEDQSMIoL74oVAotdxYljpgIsgLzgc1N9QrtA9KEA0moJVwQtNZv2aDA== + version "1.1.1" + resolved "https://registry.yarnpkg.com/webpack-stats-plugin/-/webpack-stats-plugin-1.1.1.tgz#11aabf6ad536fd2843eb2e11a58d3485dc111b3e" + integrity sha512-aWwE/YuO2W7VCOyWwyDJ7BRSYRYjeXat+X31YiasMM3FS6/4X9W4Mb9Q0g+jIdVgArr1Mb08sHBJKMT5M9+gVA== webpack-virtual-modules@^0.2.2, webpack-virtual-modules@^0.3.2, webpack-virtual-modules@^0.4.1, webpack-virtual-modules@^0.4.2: version "0.4.5" @@ -21215,7 +20964,7 @@ whatwg-url@^11.0.0: whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" - integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" webidl-conversions "^3.0.0" @@ -21243,7 +20992,7 @@ which-boxed-primitive@^1.0.2: which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= + integrity sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q== which-pm@2.0.0: version "2.0.0" @@ -21267,20 +21016,13 @@ which@^2.0.1: dependencies: isexe "^2.0.0" -wide-align@^1.1.0, wide-align@^1.1.2: +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@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-2.0.1.tgz#7438764730ec7ef4381ce4df82fb98a53142a3fc" - integrity sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA== - dependencies: - string-width "^2.1.1" - widest-line@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" @@ -21301,7 +21043,7 @@ word-wrap@^1.2.3, word-wrap@~1.2.3: wordwrap@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= + integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== wordwrapjs@^4.0.0: version "4.0.1" @@ -21465,9 +21207,9 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -write-file-atomic@^3.0.0, write-file-atomic@^3.0.3: +write-file-atomic@^3.0.0: 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== @@ -21477,22 +21219,25 @@ write-file-atomic@^3.0.0, write-file-atomic@^3.0.3: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" -ws@8.2.3: - version "8.2.3" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.2.3.tgz#63a56456db1b04367d0b721a0b80cae6d8becbba" - integrity sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA== +write-file-atomic@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" + integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg== + dependencies: + imurmurhash "^0.1.4" + signal-exit "^3.0.7" -ws@^7.3.0, ws@^7.4.2, ws@^7.4.6: - version "7.5.6" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.6.tgz#e59fc509fb15ddfb65487ee9765c5a51dec5fe7b" - integrity sha512-6GLgCqo2cy2A2rjCNFlxQS6ZljG/coZfZXclldI8FB/1G3CCI36Zd8xy2HrFVACi8tfk5XrgLQEk+P0Tnz9UcA== +ws@8.5.0: + version "8.5.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" + integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg== -ws@^8.2.3: - version "8.4.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.4.0.tgz#f05e982a0a88c604080e8581576e2a063802bed6" - integrity sha512-IHVsKe2pjajSUIl4KYMQOdlyliovpEPquKkqbwswulszzI7r0SfQrxnXdWAEqOlDCLrVSJzo+O1hAwdog2sKSQ== +ws@^7.4.2, ws@^7.4.6: + version "7.5.9" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" + integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== -ws@^8.3.0: +ws@^8.2.3, ws@^8.3.0: version "8.10.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.10.0.tgz#00a28c09dfb76eae4eb45c3b565f771d6951aa51" integrity sha512-+s49uSmZpvtAsd2h37vIPy1RBusaLawVe8of+GyEPsaJTCMpj/2v8NpeK1SHXjBlQ95lQTmQofOJnFiLoaN3yw== @@ -21505,53 +21250,25 @@ ws@~7.4.2: 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 sha1-cM8NqF2nwKtcsPFaiX8jIqa91IE= + integrity sha512-7LKo7RtWfoFN/rHx1UELv/2zHGMx8MkZKDq1xENmOCTkfIqZJ0zZ26NEJX8czhnPXVcqS0ARjjfJB+eJ0/5Cvw== optionalDependencies: default-browser-id "^1.0.4" x-is-string@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/x-is-string/-/x-is-string-0.1.0.tgz#474b50865af3a49a9c4657f05acd145458f77d82" - integrity sha1-R0tQhlrzpJqcRlfwWs0UVFj3fYI= + integrity sha512-GojqklwG8gpzOVEVki5KudKNoq7MbbjYZCbyWzEz7tyPA7eleiE0+ePwOWQQRb5fm86rD3S8Tc0tSFf3AOv50w== xdg-basedir@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== -xhr@^2.0.1: - version "2.6.0" - resolved "https://registry.yarnpkg.com/xhr/-/xhr-2.6.0.tgz#b69d4395e792b4173d6b7df077f0fc5e4e2b249d" - integrity sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA== - dependencies: - global "~4.4.0" - is-function "^1.0.1" - parse-headers "^2.0.0" - xtend "^4.0.0" - xml-name-validator@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== -xml-parse-from-string@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/xml-parse-from-string/-/xml-parse-from-string-1.0.1.tgz#a9029e929d3dbcded169f3c6e28238d95a5d5a28" - integrity sha1-qQKekp09vN7RafPG4oI42VpdWig= - -xml2js@^0.4.5: - version "0.4.23" - resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66" - integrity sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug== - dependencies: - sax ">=0.6.0" - xmlbuilder "~11.0.0" - -xmlbuilder@~11.0.0: - version "11.0.1" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" - integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== - xmlchars@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" @@ -21563,23 +21280,28 @@ xmlhttprequest-ssl@~1.6.2: integrity sha512-3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q== xss@^1.0.6: - version "1.0.10" - resolved "https://registry.yarnpkg.com/xss/-/xss-1.0.10.tgz#5cd63a9b147a755a14cb0455c7db8866120eb4d2" - integrity sha512-qmoqrRksmzqSKvgqzN0055UFWY7OKx1/9JWeRswwEVX9fCG5jcYRxa/A2DHcmZX6VJvjzHRQ2STeeVcQkrmLSw== + version "1.0.14" + resolved "https://registry.yarnpkg.com/xss/-/xss-1.0.14.tgz#4f3efbde75ad0d82e9921cc3c95e6590dd336694" + integrity sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw== dependencies: commander "^2.20.3" cssfilter "0.0.10" -xstate@^4.26.0, xstate@^4.26.1, xstate@^4.9.1: - version "4.26.1" - resolved "https://registry.yarnpkg.com/xstate/-/xstate-4.26.1.tgz#4fc1afd153f88cf302a9ee2b758f6629e6a829b6" - integrity sha512-JLofAEnN26l/1vbODgsDa+Phqa61PwDlxWu8+2pK+YbXf+y9pQSDLRvcYH2H1kkeUBA5fGp+xFL/zfE8jNMw4g== +xstate@4.32.1: + version "4.32.1" + resolved "https://registry.yarnpkg.com/xstate/-/xstate-4.32.1.tgz#1a09c808a66072938861a3b4acc5b38460244b70" + integrity sha512-QYUd+3GkXZ8i6qdixnOn28bL3EvA++LONYL/EMWwKlFSh/hiLndJ8YTnz77FDs+JUXcwU7NZJg7qoezoRHc4GQ== "xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, 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== +xxhash-wasm@^0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/xxhash-wasm/-/xxhash-wasm-0.4.2.tgz#752398c131a4dd407b5132ba62ad372029be6f79" + integrity sha512-/eyHVRJQCirEkSZ1agRSCwriMhwlyUcFkXD5TPVSLP+IPzjsqMVzZwdoczLp1SoQU0R3dxz1RpIK+4YNQbCVOA== + y18n@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" @@ -21593,7 +21315,7 @@ y18n@^5.0.5: yallist@^2.0.0, yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= + integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== yallist@^4.0.0: version "4.0.0" @@ -21613,7 +21335,7 @@ yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2, yaml@^1.8.3: resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yargs-parser@20.x, yargs-parser@^20.2.2, yargs-parser@^20.2.3, yargs-parser@^20.2.7: +yargs-parser@20.x, 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== @@ -21627,9 +21349,9 @@ yargs-parser@^18.1.2, yargs-parser@^18.1.3: decamelize "^1.2.0" yargs-parser@^21.0.0: - version "21.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.0.tgz#a485d3966be4317426dd56bdb6a30131b281dc55" - integrity sha512-z9kApYUOCwoeZ78rfRYYWdiU/iNL6mwwYlkkZfJoyMR1xps+NEBX5X7XmRpxkZHhXJ6+Ey00IwKxBBSW9FIjyA== + version "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@^15.0.1, yargs@^15.1.0, yargs@^15.3.1, yargs@^15.4.1: version "15.4.1" @@ -21661,12 +21383,12 @@ yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" -yargs@^17.0.0, yargs@^17.2.1: - version "17.3.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.3.1.tgz#da56b28f32e2fd45aefb402ed9c26f42be4c07b9" - integrity sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA== +yargs@^17.0.0, yargs@^17.1.1, yargs@^17.2.1: + version "17.6.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.6.0.tgz#e134900fc1f218bc230192bdec06a0a5f973e46c" + integrity sha512-8H/wTDqlSwoSnScvV2N/JHfLWOKuh5MVla9hqLjK3nsfyy6Y4kDSYSvkU5YCUEPOSnRXfIyx3Sq+B/IWudTo4g== dependencies: - cliui "^7.0.2" + cliui "^8.0.1" escalade "^3.1.1" get-caller-file "^2.0.5" require-directory "^2.1.1" @@ -21677,7 +21399,7 @@ yargs@^17.0.0, yargs@^17.2.1: yauzl@^2.10.0: version "2.10.0" resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" - integrity sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk= + integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== dependencies: buffer-crc32 "~0.2.3" fd-slicer "~1.1.0" @@ -21685,12 +21407,12 @@ yauzl@^2.10.0: yeast@0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419" - integrity sha1-AI4G2AlDIMNy28L47XagymyKxBk= + integrity sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg== ylru@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.2.1.tgz#f576b63341547989c1de7ba288760923b27fe84f" - integrity sha512-faQrqNMzcPCHGVC2aaOINk13K+aaBDUPjGWl0teOXywElLjyVAB6Oe2jj62jHYtwsU49jXhScYbvPENK+6zAvQ== + version "1.3.2" + resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.3.2.tgz#0de48017473275a4cbdfc83a1eaf67c01af8a785" + integrity sha512-RXRJzMiK6U2ye0BlGGZnmpwJDPgakn6aNQ0A7gHRbD4I0uvK4TW6UqkK1V0pp9jskjJBAXd3dRrbzWkqJ+6cxA== yn@3.1.1: version "3.1.1" @@ -21702,7 +21424,7 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== -yoga-layout-prebuilt@^1.10.0, yoga-layout-prebuilt@^1.9.6: +yoga-layout-prebuilt@^1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/yoga-layout-prebuilt/-/yoga-layout-prebuilt-1.10.0.tgz#2936fbaf4b3628ee0b3e3b1df44936d6c146faa6" integrity sha512-YnOmtSbv4MTf7RGJMK0FvZ+KD8OEe/J5BNnR0GHhD8J/XcG/Qvxgszm0Un6FTHWW4uHlTgP0IztiXQnGyIR45g== From 4f56c1b062fa160cd5aac6c96d96a39a5df5fbdb Mon Sep 17 00:00:00 2001 From: Dane Hillard Date: Wed, 2 Nov 2022 16:28:34 -0400 Subject: [PATCH 3/9] ToggleButton: indicate toggle button state on underlying button elements (#438) * fix(toggle-button): indicate toggle button state on underlying button elements Because the accessibility object model (AOM) is still in active development and doesn't enjoy wide browser vendor adoption at present, we need to maintain the accessibility for assistive technologies in the underlying native elements rather than the custom element host containers. For things like buttons, this often means adding a property that gets rendered onto the underlying native element as an `aria-` attribute. * fix(toggle-button): address type imports and add unit tests * chore: add changeset --- .changeset/long-seahorses-obey.md | 5 +++ .../components/button/pharos-button.test.ts | 7 ++++ .../src/components/button/pharos-button.ts | 11 ++++++ .../sidenav/pharos-sidenav-button.ts | 4 +- .../components/toast/pharos-toast-button.ts | 4 +- .../pharos-toggle-button-group.test.ts | 38 ++++++++++++++++++- .../pharos-toggle-button-group.ts | 12 +++++- .../pharos-toggle-button.ts | 12 +++++- 8 files changed, 85 insertions(+), 8 deletions(-) create mode 100644 .changeset/long-seahorses-obey.md diff --git a/.changeset/long-seahorses-obey.md b/.changeset/long-seahorses-obey.md new file mode 100644 index 000000000..287b96322 --- /dev/null +++ b/.changeset/long-seahorses-obey.md @@ -0,0 +1,5 @@ +--- +'@ithaka/pharos': patch +--- + +Improve accessibility for toggle button groups diff --git a/packages/pharos/src/components/button/pharos-button.test.ts b/packages/pharos/src/components/button/pharos-button.test.ts index 83db7ce14..0850cb7ec 100644 --- a/packages/pharos/src/components/button/pharos-button.test.ts +++ b/packages/pharos/src/components/button/pharos-button.test.ts @@ -103,6 +103,13 @@ describe('pharos-button', () => { ); await expect(component).to.be.accessible(); }); + + it('is accessible when pressed', async () => { + component = await fixture( + html`I am a pressed button` + ); + await expect(component).to.be.accessible(); + }); }); describe('API', () => { diff --git a/packages/pharos/src/components/button/pharos-button.ts b/packages/pharos/src/components/button/pharos-button.ts index a82258fa8..872e0491d 100644 --- a/packages/pharos/src/components/button/pharos-button.ts +++ b/packages/pharos/src/components/button/pharos-button.ts @@ -17,6 +17,8 @@ export type ButtonType = 'button' | 'submit' | 'reset'; export type ButtonVariant = 'primary' | 'secondary' | 'subtle' | 'overlay'; +export type PressedState = 'false' | 'true' | 'mixed' | 'undefined'; + const TYPES = ['button', 'submit', 'reset']; const VARIANTS = ['primary', 'secondary', 'subtle', 'overlay']; @@ -136,6 +138,13 @@ export class PharosButton extends ScopedRegistryMixin(FocusMixin(AnchorElement)) @property({ type: String, reflect: true }) public value?: string; + /** + * Indicates this button is a toggle button and whether it is pressed or not. + * @attr value + */ + @property({ type: String, reflect: true }) + public pressed: PressedState = 'undefined'; + @query('#button-element') private _button!: HTMLButtonElement | HTMLAnchorElement; @@ -245,6 +254,7 @@ export class PharosButton extends ScopedRegistryMixin(FocusMixin(AnchorElement)) rel=${ifDefined(this.rel)} target=${ifDefined(this.target)} aria-label=${ifDefined(this.label)} + aria-pressed=${ifDefined(this.pressed)} @keyup=${this._handleKeyup} > ${this.buttonContent} @@ -259,6 +269,7 @@ export class PharosButton extends ScopedRegistryMixin(FocusMixin(AnchorElement)) ?disabled=${this.disabled} type="${ifDefined(this.type)}" aria-label=${ifDefined(this.label)} + aria-pressed=${ifDefined(this.pressed)} > ${this.buttonContent} diff --git a/packages/pharos/src/components/sidenav/pharos-sidenav-button.ts b/packages/pharos/src/components/sidenav/pharos-sidenav-button.ts index 174826cc6..6dcab2e42 100644 --- a/packages/pharos/src/components/sidenav/pharos-sidenav-button.ts +++ b/packages/pharos/src/components/sidenav/pharos-sidenav-button.ts @@ -4,8 +4,8 @@ import { PharosButton } from '../button/pharos-button'; import type { PharosSidenav } from './pharos-sidenav'; import type { LinkTarget } from '../base/anchor-element'; -import type { ButtonType, IconName, ButtonVariant } from '../button/pharos-button'; -export type { LinkTarget, ButtonType, IconName, ButtonVariant }; +import type { ButtonType, IconName, ButtonVariant, PressedState } from '../button/pharos-button'; +export type { LinkTarget, ButtonType, IconName, ButtonVariant, PressedState }; /** * Pharos sidenav button component. diff --git a/packages/pharos/src/components/toast/pharos-toast-button.ts b/packages/pharos/src/components/toast/pharos-toast-button.ts index 3908b43a5..7cdb2eab4 100644 --- a/packages/pharos/src/components/toast/pharos-toast-button.ts +++ b/packages/pharos/src/components/toast/pharos-toast-button.ts @@ -3,9 +3,9 @@ import { toastButtonStyles } from './pharos-toast-button.css'; import { PharosButton } from '../button/pharos-button'; import type { LinkTarget } from '../base/anchor-element'; -import type { ButtonType, IconName, ButtonVariant } from '../button/pharos-button'; +import type { ButtonType, IconName, ButtonVariant, PressedState } from '../button/pharos-button'; -export type { LinkTarget, ButtonType, IconName, ButtonVariant }; +export type { LinkTarget, ButtonType, IconName, ButtonVariant, PressedState }; /** * Pharos toast button component. diff --git a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.test.ts b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.test.ts index 6f0c03543..8ece17586 100644 --- a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.test.ts +++ b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.test.ts @@ -5,7 +5,9 @@ import type { PharosToggleButtonGroup } from './pharos-toggle-button-group'; import type { PharosToggleButton } from './pharos-toggle-button'; describe('pharos-toggle-button-group', () => { - let component: PharosToggleButtonGroup, componentLastButtonSelected: PharosToggleButton; + let component: PharosToggleButtonGroup; + let componentLastButtonSelected: PharosToggleButton; + let componentWithLabel: PharosToggleButton; beforeEach(async () => { component = await fixture(html` @@ -23,6 +25,14 @@ describe('pharos-toggle-button-group', () => { Button 6 `); + + componentWithLabel = await fixture(html` + + Button 7 + Button 8 + Button 9 + + `); }); it('is accessible', async () => { @@ -36,6 +46,20 @@ describe('pharos-toggle-button-group', () => { expect(toggleButtonGroup).not.to.be.null; }); + it('renders a default aria-label', async () => { + const toggleButtonGroup = component.renderRoot.querySelector( + '[role="group"]' + ) as HTMLDivElement; + expect(toggleButtonGroup.getAttribute('aria-label')).to.equal('Options'); + }); + + it('renders the provided aria-label', async () => { + const toggleButtonGroup = componentWithLabel.renderRoot.querySelector( + '[role="group"]' + ) as HTMLDivElement; + expect(toggleButtonGroup.getAttribute('aria-label')).to.equal('New options'); + }); + it('has a slot to contain the toggle button elements', async () => { const toggleButtonGroup = component.renderRoot.querySelector( '[role="group"]' @@ -57,8 +81,11 @@ describe('pharos-toggle-button-group', () => { ) as PharosToggleButton[]; expect(toggleButtons[0].selected).to.be.true; + expect(toggleButtons[0].pressed).to.equal('true'); expect(toggleButtons[1].selected).to.be.false; + expect(toggleButtons[1].pressed).to.equal('false'); expect(toggleButtons[2].selected).to.be.false; + expect(toggleButtons[2].pressed).to.equal('false'); }); it('selects the defined toggle button', async () => { @@ -67,8 +94,11 @@ describe('pharos-toggle-button-group', () => { ) as PharosToggleButton[]; expect(toggleButtons[0].selected).to.be.false; + expect(toggleButtons[0].pressed).to.equal('false'); expect(toggleButtons[1].selected).to.be.false; + expect(toggleButtons[1].pressed).to.equal('false'); expect(toggleButtons[2].selected).to.be.true; + expect(toggleButtons[2].pressed).to.equal('true'); }); it('changes the focus right with the right arrow key', async () => { @@ -111,8 +141,11 @@ describe('pharos-toggle-button-group', () => { await aTimeout(1); expect(toggleButtons[0].selected).to.be.false; + expect(toggleButtons[0].pressed).to.equal('false'); expect(toggleButtons[1].selected).to.be.false; + expect(toggleButtons[1].pressed).to.equal('false'); expect(toggleButtons[2].selected).to.be.true; + expect(toggleButtons[2].pressed).to.equal('true'); }); it('wraps focus to the last toggle button when left arrow is hit on the first button', async () => { @@ -159,7 +192,10 @@ describe('pharos-toggle-button-group', () => { await aTimeout(1); expect(toggleButtons[0].selected).to.be.false; + expect(toggleButtons[0].pressed).to.equal('false'); expect(toggleButtons[1].selected).to.be.true; + expect(toggleButtons[1].pressed).to.equal('true'); expect(toggleButtons[2].selected).to.be.false; + expect(toggleButtons[2].pressed).to.equal('false'); }); }); diff --git a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.ts b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.ts index 8d21d220f..d340834b3 100644 --- a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.ts +++ b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.ts @@ -3,6 +3,7 @@ import { html } from 'lit'; import type { TemplateResult, CSSResultArray } from 'lit'; import { toggleButtonGroupStyles } from './pharos-toggle-button-group.css'; import type { PharosToggleButton } from './pharos-toggle-button'; +import { property } from 'lit/decorators.js'; /** * Pharos toggle button group component. @@ -13,6 +14,13 @@ import type { PharosToggleButton } from './pharos-toggle-button'; * */ export class PharosToggleButtonGroup extends PharosElement { + /** + * The label used to announce this group to assistive technologies. + * @attr group-label + */ + @property({ type: String, reflect: true, attribute: 'group-label' }) + public groupLabel = 'Options'; + public static override get styles(): CSSResultArray { return [toggleButtonGroupStyles]; } @@ -42,6 +50,7 @@ export class PharosToggleButtonGroup extends PharosElement { const selectedButton: PharosToggleButton = selected ? selected : toggleButtons[0]; selectedButton.selected = true; + selectedButton.pressed = 'true'; } private _handleButtonSelected(event: Event): void { @@ -53,6 +62,7 @@ export class PharosToggleButtonGroup extends PharosElement { if (previous) { previous.selected = false; + previous.pressed = 'false'; } const toggleButtons: PharosToggleButton[] = Array.prototype.slice.call( @@ -136,7 +146,7 @@ export class PharosToggleButtonGroup extends PharosElement { protected override render(): TemplateResult { return html` -
+
`; diff --git a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button.ts b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button.ts index 12d954756..1952fc9ab 100644 --- a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button.ts +++ b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button.ts @@ -3,8 +3,14 @@ import type { CSSResultArray, PropertyValues } from 'lit'; import { toggleButtonStyles } from './pharos-toggle-button.css'; import { PharosButton } from '../button/pharos-button'; -import type { ButtonType, LinkTarget, IconName, ButtonVariant } from '../button/pharos-button'; -export type { ButtonType, LinkTarget, IconName, ButtonVariant }; +import type { + ButtonType, + LinkTarget, + IconName, + ButtonVariant, + PressedState, +} from '../button/pharos-button'; +export type { ButtonType, LinkTarget, IconName, ButtonVariant, PressedState }; /** * Pharos toggle button component. @@ -36,6 +42,7 @@ export class PharosToggleButton extends PharosButton { constructor() { super(); + this.pressed = 'false'; this.variant = 'secondary'; this.type = 'button'; } @@ -86,6 +93,7 @@ export class PharosToggleButton extends PharosButton { composed: true, }; this.selected = true; + this.pressed = 'true'; this.dispatchEvent(new CustomEvent('pharos-toggle-button-selected', details)); } } From bc05bbcf3215baa78755d60436bb720b844da7fd Mon Sep 17 00:00:00 2001 From: Dane Hillard Date: Mon, 7 Nov 2022 08:53:13 -0500 Subject: [PATCH 4/9] feat(tabs): fire event when tab selected programmatically (#442) --- .changeset/six-days-ring.md | 5 +++++ packages/pharos/src/components/tabs/pharos-tab.ts | 15 +++++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) create mode 100644 .changeset/six-days-ring.md diff --git a/.changeset/six-days-ring.md b/.changeset/six-days-ring.md new file mode 100644 index 000000000..4861e55d1 --- /dev/null +++ b/.changeset/six-days-ring.md @@ -0,0 +1,5 @@ +--- +'@ithaka/pharos': minor +--- + +Fire pharos-tab-selected in response to tab being selected programmatically in addition to user clicks diff --git a/packages/pharos/src/components/tabs/pharos-tab.ts b/packages/pharos/src/components/tabs/pharos-tab.ts index 915da0162..18f5548b5 100644 --- a/packages/pharos/src/components/tabs/pharos-tab.ts +++ b/packages/pharos/src/components/tabs/pharos-tab.ts @@ -1,7 +1,8 @@ -import { PharosElement } from '../base/pharos-element'; import { html } from 'lit'; import { property, state } from 'lit/decorators.js'; import type { TemplateResult, CSSResultArray, PropertyValues } from 'lit'; + +import { PharosElement } from '../base/pharos-element'; import { tabStyles } from './pharos-tab.css'; /** @@ -43,6 +44,13 @@ export class PharosTab extends PharosElement { if (changedProperties.has('selected')) { this._focused = this.selected; this.setAttribute('aria-selected', this.selected ? 'true' : 'false'); + if (this.selected) { + const details = { + bubbles: true, + composed: true, + }; + this.dispatchEvent(new CustomEvent('pharos-tab-selected', details)); + } } if (changedProperties.has('_focused')) { this.setAttribute('tabindex', this._focused ? '0' : '-1'); @@ -50,12 +58,7 @@ export class PharosTab extends PharosElement { } private _handleClick(): void { - const details = { - bubbles: true, - composed: true, - }; this.selected = true; - this.dispatchEvent(new CustomEvent('pharos-tab-selected', details)); } protected override render(): TemplateResult { From 6cbeb91cc5942c492222a797ab3efd710b15ed1c Mon Sep 17 00:00:00 2001 From: Dane Hillard Date: Mon, 7 Nov 2022 10:56:18 -0500 Subject: [PATCH 5/9] Storybook: Convert stories to CSF 3 (#435) * feat(storybook): try CSF for Alert stories * chore(storybook): convert alert WC story to CSF 3 * chore(storybook): convert alert React story to CSF 3 * chore(storybook): extract DocsPage config and convert breadcrumb to CSF3 * chore(storybook): convert Button stories to CSF 3 * chore(storybook): convert Checkbox stories to CSF 3 * chore(storybook): convert CheckboxGroup stories to CSF 3 * chore(storybook): convert Combobox stories to CSF 3 * chore(storybook): convert DropdownMenu stories to CSF 3 * chore(storybook): convert DropdownMenuNav stories to CSF 3 * chore(storybook): convert Footer stories to CSF 3 * chore(storybook): convert Header stories to CSF 3 * chore(storybook): convert Heading stories to CSF 3 * chore(storybook): convert Icon stories to CSF 3 * chore(storybook): convert ImageCard stories to CSF 3 * chore(storybook): convert InputGroup stories to CSF 3 * chore(storybook): convert Layout stories to CSF 3 * chore(storybook): convert Link stories to CSF 3 * chore(storybook): convert LoadingSpinner stories to CSF 3 * chore(storybook): convert Modal stories to CSF 3 * chore(storybook): convert Pagination stories to CSF 3 * chore(storybook): convert ProgressBar stories to CSF 3 * chore(storybook): convert RadioButton stories to CSF 3 * chore(storybook): convert RadioButtonGroup stories to CSF 3 * chore(storybook): convert Select stories to CSF 3 * chore(storybook): convert Sidenav stories to CSF 3 * chore(storybook): convert Tabs stories to CSF 3 * chore(storybook): convert TextInput stories to CSF 3 * chore(storybook): convert Textarea stories to CSF 3 * chore(storybook): convert Toast stories to CSF 3 * chore(storybook): convert ToggleButtonGroup stories to CSF 3 * chore(storybook): convert Tooltip stories to CSF 3 * chore(storybook): convert Page stories to CSF 3 * chore(storybook): convert Styles stories to CSF 3 * fix(storybook): make diverged stories consistent * chore(storybook): clean up imports * fix: add type declarations and remove console log * chore: add changeset * fix(storybook): fix React Storybook build * feat(storybook): enable new build options This necessitated getting rid of dynamic component titles, namely for showing e.g. "Pharos 12.13.0" in the left nav. I opted instead to inject the version as the title of the intro page. I had to wrestle with MDX a bit to do this; it appears the "components" and "props" features documented on their site are v2 features, but our Storybook is still using v1. I attemped to enable the v2 preview, but HTML comments cause a parsing error currently and we need them for our README setup to function properly. * fix(storybook): update webpack config to fix GitHub Actions * fix(storybook): remove new Babel config to fix build * fix(storybook): remove inline render to try fixing build * fix(storybook): remove story store v7 to fix build --- .changeset/tidy-cherries-report.md | 5 + .storybook/docsPageConfig.jsx | 25 + .storybook/main.js | 3 + .storybook/react/main.js | 5 +- .storybook/react/preview.js | 3 - .storybook/wc/main.js | 5 +- .../pharos-site/static/styles/global.scss | 5 + packages/pharos/README.md | 4 + packages/pharos/docs/1.intro.docs.stories.mdx | 11 +- .../pharos/docs/2.changelog.docs.stories.mdx | 8 +- .../alert/PharosAlert.react.stories.jsx | 77 +++ .../alert/PharosAlert.react.stories.mdx | 100 ---- .../src/components/alert/pharos-alert.ts | 2 +- .../alert/pharos-alert.wc.stories.jsx | 71 +++ .../alert/pharos-alert.wc.stories.mdx | 88 ---- .../pharos/src/components/alert/storyArgs.ts | 12 + .../src/components/base/overlay-element.ts | 10 +- .../PharosBreadcrumb.react.stories.jsx | 32 ++ .../PharosBreadcrumb.react.stories.mdx | 40 -- .../pharos-breadcrumb.wc.stories.jsx | 26 + .../pharos-breadcrumb.wc.stories.mdx | 39 -- ...ies.mdx => PharosButton.react.stories.jsx} | 324 ++++-------- .../src/components/button/pharos-button.ts | 4 +- .../button/pharos-button.wc.stories.jsx | 252 +++++++++ .../button/pharos-button.wc.stories.mdx | 391 -------------- .../pharos/src/components/button/storyArgs.ts | 43 ++ .../PharosCheckboxGroup.react.stories.jsx | 107 ++++ .../PharosCheckboxGroup.react.stories.mdx | 140 ----- .../pharos-checkbox-group.wc.stories.jsx | 96 ++++ .../pharos-checkbox-group.wc.stories.mdx | 121 ----- .../components/checkbox-group/storyArgs.ts | 9 + .../checkbox/PharosCheckbox.react.stories.jsx | 134 +++++ .../checkbox/PharosCheckbox.react.stories.mdx | 174 ------- ...ies.mdx => pharos-checkbox.wc.stories.jsx} | 154 +++--- .../src/components/checkbox/storyArgs.ts | 14 + .../combobox/PharosCombobox.react.stories.jsx | 203 ++++++++ .../combobox/PharosCombobox.react.stories.mdx | 226 --------- .../combobox/pharos-combobox.wc.stories.jsx | 209 ++++++++ .../combobox/pharos-combobox.wc.stories.mdx | 251 --------- .../src/components/combobox/storyArgs.ts | 13 + ...> PharosDropdownMenuNav.react.stories.jsx} | 43 +- .../pharos-dropdown-menu-nav.wc.stories.jsx | 55 ++ .../pharos-dropdown-menu-nav.wc.stories.mdx | 54 -- ...x => PharosDropdownMenu.react.stories.jsx} | 152 +++--- .../dropdown-menu/pharos-dropdown-menu.ts | 17 +- .../pharos-dropdown-menu.wc.stories.jsx | 382 ++++++++++++++ .../pharos-dropdown-menu.wc.stories.mdx | 440 ---------------- .../src/components/dropdown-menu/storyArgs.ts | 5 + .../footer/PharosFooter.react.stories.jsx | 19 + .../footer/PharosFooter.react.stories.mdx | 29 -- .../footer/pharos-footer.wc.stories.jsx | 18 + .../footer/pharos-footer.wc.stories.mdx | 27 - ...ies.mdx => PharosHeader.react.stories.jsx} | 127 +++-- .../header/pharos-header.wc.stories.jsx | 151 ++++++ .../header/pharos-header.wc.stories.mdx | 160 ------ .../heading/PharosHeading.react.stories.jsx | 69 +++ .../heading/PharosHeading.react.stories.mdx | 89 ---- .../src/components/heading/pharos-heading.ts | 14 +- .../heading/pharos-heading.wc.stories.jsx | 66 +++ .../heading/pharos-heading.wc.stories.mdx | 83 --- .../src/components/heading/storyArgs.ts | 23 + .../icon/PharosIcon.react.stories.jsx | 42 ++ .../icon/PharosIcon.react.stories.mdx | 66 --- .../icon/pharos-icon.wc.stories.jsx | 37 ++ .../icon/pharos-icon.wc.stories.mdx | 59 --- .../pharos/src/components/icon/storyArgs.ts | 15 + .../PharosImageCard.react.stories.jsx | 478 ++++++++++++++++++ .../PharosImageCard.react.stories.mdx | 300 ----------- .../image-card/pharos-image-card.ts | 12 +- .../pharos-image-card.wc.stories.jsx | 433 ++++++++++++++++ .../pharos-image-card.wc.stories.mdx | 465 ----------------- .../src/components/image-card/storyArgs.ts | 5 + ...mdx => PharosInputGroup.react.stories.jsx} | 74 ++- ....mdx => pharos-input-group.wc.stories.jsx} | 161 +++--- .../layout/PharosLayout.react.stories.jsx | 129 +++++ .../layout/PharosLayout.react.stories.mdx | 145 ------ .../src/components/layout/pharos-layout.ts | 2 +- ...ories.mdx => pharos-layout.wc.stories.jsx} | 100 ++-- .../link/PharosLink.react.stories.jsx | 125 +++++ .../link/PharosLink.react.stories.mdx | 116 ----- ...stories.mdx => pharos-link.wc.stories.jsx} | 127 ++--- .../pharos/src/components/link/storyArgs.ts | 11 + .../PharosLoadingSpinner.react.stories.jsx | 40 ++ .../PharosLoadingSpinner.react.stories.mdx | 57 --- .../pharos-loading-spinner.wc.stories.jsx | 32 ++ .../pharos-loading-spinner.wc.stories.mdx | 36 -- .../modal/PharosModal.react.stories.jsx | 161 ++++++ .../modal/PharosModal.react.stories.mdx | 177 ------- .../src/components/modal/pharos-modal.ts | 6 +- ...tories.mdx => pharos-modal.wc.stories.jsx} | 143 +++--- .../pharos/src/components/modal/storyArgs.ts | 17 + .../PharosPagination.react.stories.jsx | 32 ++ .../PharosPagination.react.stories.mdx | 61 --- .../pharos-pagination.wc.stories.jsx | 33 ++ .../pharos-pagination.wc.stories.mdx | 64 --- .../src/components/pagination/storyArgs.ts | 5 + .../PharosProgressBar.react.stories.jsx | 30 ++ .../PharosProgressBar.react.stories.mdx | 26 - .../pharos-progress-bar.wc.stories.jsx | 32 ++ .../pharos-progress-bar.wc.stories.mdx | 58 --- .../src/components/progress-bar/storyArgs.ts | 11 + .../PharosRadioButton.react.stories.jsx | 111 ++++ .../PharosRadioButton.react.stories.mdx | 152 ------ .../pharos-radio-button.wc.stories.jsx | 93 ++++ .../pharos-radio-button.wc.stories.mdx | 131 ----- .../src/components/radio-button/storyArgs.ts | 9 + .../PharosRadioGroup.react.stories.jsx | 116 +++++ .../PharosRadioGroup.react.stories.mdx | 156 ------ .../pharos-radio-group.wc.stories.jsx | 116 +++++ .../pharos-radio-group.wc.stories.mdx | 145 ------ .../src/components/radio-group/storyArgs.ts | 10 + .../select/PharosSelect.react.stories.jsx | 131 +++++ .../select/PharosSelect.react.stories.mdx | 160 ------ .../select/pharos-select.wc.stories.jsx | 131 +++++ .../select/pharos-select.wc.stories.mdx | 158 ------ .../pharos/src/components/select/storyArgs.ts | 9 + .../sidenav/PharosSidenav.react.stories.jsx | 105 ++++ .../sidenav/PharosSidenav.react.stories.mdx | 127 ----- .../sidenav/pharos-sidenav.wc.stories.jsx | 93 ++++ .../sidenav/pharos-sidenav.wc.stories.mdx | 109 ---- ...ories.mdx => PharosTabs.react.stories.jsx} | 97 ++-- ...stories.mdx => pharos-tabs.wc.stories.jsx} | 91 ++-- .../PharosTextInput.react.stories.jsx | 194 +++++++ .../PharosTextInput.react.stories.mdx | 258 ---------- .../text-input/pharos-text-input.ts | 19 +- .../pharos-text-input.wc.stories.jsx | 169 +++++++ .../pharos-text-input.wc.stories.mdx | 220 -------- .../src/components/text-input/storyArgs.ts | 26 + .../textarea/PharosTextarea.react.stories.jsx | 180 +++++++ .../textarea/PharosTextarea.react.stories.mdx | 235 --------- .../textarea/pharos-textarea.wc.stories.jsx | 160 ++++++ .../textarea/pharos-textarea.wc.stories.mdx | 215 -------- .../src/components/textarea/storyArgs.ts | 15 + .../toast/PharosToast.react.stories.jsx | 166 ++++++ .../toast/PharosToast.react.stories.mdx | 103 ---- .../toast/pharos-toast.wc.stories.jsx | 174 +++++++ .../toast/pharos-toast.wc.stories.mdx | 193 ------- .../PharosToggleButtonGroup.react.stories.jsx | 93 ++++ .../PharosToggleButtonGroup.react.stories.mdx | 111 ---- ...pharos-toggle-button-group.wc.stories.jsx} | 73 +-- .../tooltip/PharosTooltip.react.stories.jsx | 155 ++++++ .../tooltip/PharosTooltip.react.stories.mdx | 257 ---------- .../tooltip/pharos-tooltip.wc.stories.jsx | 130 +++++ .../tooltip/pharos-tooltip.wc.stories.mdx | 230 --------- .../src/components/tooltip/storyArgs.ts | 23 + .../pages/home/react/home.pages.stories.tsx | 110 ++-- .../src/pages/home/wc/home.pages.stories.ts | 101 ++-- .../react/item-detail.pages.stories.tsx | 117 +++-- .../wc/item-detail.pages.stories.ts | 93 ++-- .../reports/react/reports.pages.stories.tsx | 156 +++--- .../pages/reports/wc/reports.pages.stories.ts | 104 ++-- .../search/react/search.pages.stories.tsx | 45 +- .../pages/search/wc/search.pages.stories.ts | 29 +- ...act.stories.mdx => sass.react.stories.jsx} | 31 +- ...ass.wc.stories.mdx => sass.wc.stories.jsx} | 32 +- ...t.stories.mdx => tokens.react.stories.jsx} | 103 ++-- ...s.wc.stories.mdx => tokens.wc.stories.jsx} | 142 +++--- .../src/styles/typography.react.stories.jsx | 124 +++++ .../src/styles/typography.react.stories.mdx | 195 ------- .../src/styles/typography.wc.stories.jsx | 116 +++++ .../src/styles/typography.wc.stories.mdx | 196 ------- packages/pharos/src/utils/iconNames.ts | 3 +- 162 files changed, 7715 insertions(+), 9013 deletions(-) create mode 100644 .changeset/tidy-cherries-report.md create mode 100644 .storybook/docsPageConfig.jsx create mode 100644 packages/pharos/src/components/alert/PharosAlert.react.stories.jsx delete mode 100644 packages/pharos/src/components/alert/PharosAlert.react.stories.mdx create mode 100644 packages/pharos/src/components/alert/pharos-alert.wc.stories.jsx delete mode 100644 packages/pharos/src/components/alert/pharos-alert.wc.stories.mdx create mode 100644 packages/pharos/src/components/alert/storyArgs.ts create mode 100644 packages/pharos/src/components/breadcrumb/PharosBreadcrumb.react.stories.jsx delete mode 100644 packages/pharos/src/components/breadcrumb/PharosBreadcrumb.react.stories.mdx create mode 100644 packages/pharos/src/components/breadcrumb/pharos-breadcrumb.wc.stories.jsx delete mode 100644 packages/pharos/src/components/breadcrumb/pharos-breadcrumb.wc.stories.mdx rename packages/pharos/src/components/button/{PharosButton.react.stories.mdx => PharosButton.react.stories.jsx} (61%) create mode 100644 packages/pharos/src/components/button/pharos-button.wc.stories.jsx delete mode 100644 packages/pharos/src/components/button/pharos-button.wc.stories.mdx create mode 100644 packages/pharos/src/components/button/storyArgs.ts create mode 100644 packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.jsx delete mode 100644 packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.mdx create mode 100644 packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.jsx delete mode 100644 packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.mdx create mode 100644 packages/pharos/src/components/checkbox-group/storyArgs.ts create mode 100644 packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.jsx delete mode 100644 packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.mdx rename packages/pharos/src/components/checkbox/{pharos-checkbox.wc.stories.mdx => pharos-checkbox.wc.stories.jsx} (52%) create mode 100644 packages/pharos/src/components/checkbox/storyArgs.ts create mode 100644 packages/pharos/src/components/combobox/PharosCombobox.react.stories.jsx delete mode 100644 packages/pharos/src/components/combobox/PharosCombobox.react.stories.mdx create mode 100644 packages/pharos/src/components/combobox/pharos-combobox.wc.stories.jsx delete mode 100644 packages/pharos/src/components/combobox/pharos-combobox.wc.stories.mdx create mode 100644 packages/pharos/src/components/combobox/storyArgs.ts rename packages/pharos/src/components/dropdown-menu-nav/{PharosDropdownMenuNav.react.stories.mdx => PharosDropdownMenuNav.react.stories.jsx} (63%) create mode 100644 packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.jsx delete mode 100644 packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.mdx rename packages/pharos/src/components/dropdown-menu/{PharosDropdownMenu.react.stories.mdx => PharosDropdownMenu.react.stories.jsx} (85%) create mode 100644 packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.jsx delete mode 100644 packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.mdx create mode 100644 packages/pharos/src/components/dropdown-menu/storyArgs.ts create mode 100644 packages/pharos/src/components/footer/PharosFooter.react.stories.jsx delete mode 100644 packages/pharos/src/components/footer/PharosFooter.react.stories.mdx create mode 100644 packages/pharos/src/components/footer/pharos-footer.wc.stories.jsx delete mode 100644 packages/pharos/src/components/footer/pharos-footer.wc.stories.mdx rename packages/pharos/src/components/header/{PharosHeader.react.stories.mdx => PharosHeader.react.stories.jsx} (80%) create mode 100644 packages/pharos/src/components/header/pharos-header.wc.stories.jsx delete mode 100644 packages/pharos/src/components/header/pharos-header.wc.stories.mdx create mode 100644 packages/pharos/src/components/heading/PharosHeading.react.stories.jsx delete mode 100644 packages/pharos/src/components/heading/PharosHeading.react.stories.mdx create mode 100644 packages/pharos/src/components/heading/pharos-heading.wc.stories.jsx delete mode 100644 packages/pharos/src/components/heading/pharos-heading.wc.stories.mdx create mode 100644 packages/pharos/src/components/heading/storyArgs.ts create mode 100644 packages/pharos/src/components/icon/PharosIcon.react.stories.jsx delete mode 100644 packages/pharos/src/components/icon/PharosIcon.react.stories.mdx create mode 100644 packages/pharos/src/components/icon/pharos-icon.wc.stories.jsx delete mode 100644 packages/pharos/src/components/icon/pharos-icon.wc.stories.mdx create mode 100644 packages/pharos/src/components/icon/storyArgs.ts create mode 100644 packages/pharos/src/components/image-card/PharosImageCard.react.stories.jsx delete mode 100644 packages/pharos/src/components/image-card/PharosImageCard.react.stories.mdx create mode 100644 packages/pharos/src/components/image-card/pharos-image-card.wc.stories.jsx delete mode 100644 packages/pharos/src/components/image-card/pharos-image-card.wc.stories.mdx create mode 100644 packages/pharos/src/components/image-card/storyArgs.ts rename packages/pharos/src/components/input-group/{PharosInputGroup.react.stories.mdx => PharosInputGroup.react.stories.jsx} (76%) rename packages/pharos/src/components/input-group/{pharos-input-group.wc.stories.mdx => pharos-input-group.wc.stories.jsx} (54%) create mode 100644 packages/pharos/src/components/layout/PharosLayout.react.stories.jsx delete mode 100644 packages/pharos/src/components/layout/PharosLayout.react.stories.mdx rename packages/pharos/src/components/layout/{pharos-layout.wc.stories.mdx => pharos-layout.wc.stories.jsx} (65%) create mode 100644 packages/pharos/src/components/link/PharosLink.react.stories.jsx delete mode 100644 packages/pharos/src/components/link/PharosLink.react.stories.mdx rename packages/pharos/src/components/link/{pharos-link.wc.stories.mdx => pharos-link.wc.stories.jsx} (55%) create mode 100644 packages/pharos/src/components/link/storyArgs.ts create mode 100644 packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.jsx delete mode 100644 packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.mdx create mode 100644 packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.jsx delete mode 100644 packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.mdx create mode 100644 packages/pharos/src/components/modal/PharosModal.react.stories.jsx delete mode 100644 packages/pharos/src/components/modal/PharosModal.react.stories.mdx rename packages/pharos/src/components/modal/{pharos-modal.wc.stories.mdx => pharos-modal.wc.stories.jsx} (66%) create mode 100644 packages/pharos/src/components/modal/storyArgs.ts create mode 100644 packages/pharos/src/components/pagination/PharosPagination.react.stories.jsx delete mode 100644 packages/pharos/src/components/pagination/PharosPagination.react.stories.mdx create mode 100644 packages/pharos/src/components/pagination/pharos-pagination.wc.stories.jsx delete mode 100644 packages/pharos/src/components/pagination/pharos-pagination.wc.stories.mdx create mode 100644 packages/pharos/src/components/pagination/storyArgs.ts create mode 100644 packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.jsx delete mode 100644 packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.mdx create mode 100644 packages/pharos/src/components/progress-bar/pharos-progress-bar.wc.stories.jsx delete mode 100644 packages/pharos/src/components/progress-bar/pharos-progress-bar.wc.stories.mdx create mode 100644 packages/pharos/src/components/progress-bar/storyArgs.ts create mode 100644 packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.jsx delete mode 100644 packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.mdx create mode 100644 packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.jsx delete mode 100644 packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.mdx create mode 100644 packages/pharos/src/components/radio-button/storyArgs.ts create mode 100644 packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.jsx delete mode 100644 packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.mdx create mode 100644 packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.jsx delete mode 100644 packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.mdx create mode 100644 packages/pharos/src/components/radio-group/storyArgs.ts create mode 100644 packages/pharos/src/components/select/PharosSelect.react.stories.jsx delete mode 100644 packages/pharos/src/components/select/PharosSelect.react.stories.mdx create mode 100644 packages/pharos/src/components/select/pharos-select.wc.stories.jsx delete mode 100644 packages/pharos/src/components/select/pharos-select.wc.stories.mdx create mode 100644 packages/pharos/src/components/select/storyArgs.ts create mode 100644 packages/pharos/src/components/sidenav/PharosSidenav.react.stories.jsx delete mode 100644 packages/pharos/src/components/sidenav/PharosSidenav.react.stories.mdx create mode 100644 packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.jsx delete mode 100644 packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.mdx rename packages/pharos/src/components/tabs/{PharosTabs.react.stories.mdx => PharosTabs.react.stories.jsx} (60%) rename packages/pharos/src/components/tabs/{pharos-tabs.wc.stories.mdx => pharos-tabs.wc.stories.jsx} (75%) create mode 100644 packages/pharos/src/components/text-input/PharosTextInput.react.stories.jsx delete mode 100644 packages/pharos/src/components/text-input/PharosTextInput.react.stories.mdx create mode 100644 packages/pharos/src/components/text-input/pharos-text-input.wc.stories.jsx delete mode 100644 packages/pharos/src/components/text-input/pharos-text-input.wc.stories.mdx create mode 100644 packages/pharos/src/components/text-input/storyArgs.ts create mode 100644 packages/pharos/src/components/textarea/PharosTextarea.react.stories.jsx delete mode 100644 packages/pharos/src/components/textarea/PharosTextarea.react.stories.mdx create mode 100644 packages/pharos/src/components/textarea/pharos-textarea.wc.stories.jsx delete mode 100644 packages/pharos/src/components/textarea/pharos-textarea.wc.stories.mdx create mode 100644 packages/pharos/src/components/textarea/storyArgs.ts create mode 100644 packages/pharos/src/components/toast/PharosToast.react.stories.jsx delete mode 100644 packages/pharos/src/components/toast/PharosToast.react.stories.mdx create mode 100644 packages/pharos/src/components/toast/pharos-toast.wc.stories.jsx delete mode 100644 packages/pharos/src/components/toast/pharos-toast.wc.stories.mdx create mode 100644 packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.jsx delete mode 100644 packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.mdx rename packages/pharos/src/components/toggle-button-group/{pharos-toggle-button-group.wc.stories.mdx => pharos-toggle-button-group.wc.stories.jsx} (78%) create mode 100644 packages/pharos/src/components/tooltip/PharosTooltip.react.stories.jsx delete mode 100644 packages/pharos/src/components/tooltip/PharosTooltip.react.stories.mdx create mode 100644 packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.jsx delete mode 100644 packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.mdx create mode 100644 packages/pharos/src/components/tooltip/storyArgs.ts rename packages/pharos/src/styles/{sass.react.stories.mdx => sass.react.stories.jsx} (81%) rename packages/pharos/src/styles/{sass.wc.stories.mdx => sass.wc.stories.jsx} (75%) rename packages/pharos/src/styles/{tokens.react.stories.mdx => tokens.react.stories.jsx} (90%) rename packages/pharos/src/styles/{tokens.wc.stories.mdx => tokens.wc.stories.jsx} (84%) create mode 100644 packages/pharos/src/styles/typography.react.stories.jsx delete mode 100644 packages/pharos/src/styles/typography.react.stories.mdx create mode 100644 packages/pharos/src/styles/typography.wc.stories.jsx delete mode 100644 packages/pharos/src/styles/typography.wc.stories.mdx diff --git a/.changeset/tidy-cherries-report.md b/.changeset/tidy-cherries-report.md new file mode 100644 index 000000000..3b47aae02 --- /dev/null +++ b/.changeset/tidy-cherries-report.md @@ -0,0 +1,5 @@ +--- +'@ithaka/pharos': patch +--- + +Update Storybook stories to Component Story Format (CSF) version 3 diff --git a/.storybook/docsPageConfig.jsx b/.storybook/docsPageConfig.jsx new file mode 100644 index 000000000..69d516b56 --- /dev/null +++ b/.storybook/docsPageConfig.jsx @@ -0,0 +1,25 @@ +import { + ArgsTable, + Description, + Primary, + PRIMARY_STORY, + Stories, + Subtitle, + Title, +} from '@storybook/addon-docs'; + +import { GuidelineLink } from '@config/GuidelineLink'; + +export const configureDocsPage = (componentName) => { + return () => ( + <> + + <Subtitle /> + <Description /> + {componentName && <GuidelineLink path={componentName} />} + <Primary /> + <ArgsTable story={PRIMARY_STORY} /> + <Stories /> + </> + ); +}; diff --git a/.storybook/main.js b/.storybook/main.js index 68431e7ad..f88780da8 100644 --- a/.storybook/main.js +++ b/.storybook/main.js @@ -1,4 +1,7 @@ module.exports = { + features: { + previewCsfV3: true, + }, core: { builder: 'webpack5', }, diff --git a/.storybook/react/main.js b/.storybook/react/main.js index abb55a319..d49b2f96f 100644 --- a/.storybook/react/main.js +++ b/.storybook/react/main.js @@ -1,5 +1,8 @@ let config = require('../main'); -config.stories.push('../../packages/pharos/**/*.@(react|docs|pages).stories.@(js|mdx|tsx)'); +config.stories.push({ + directory: '../../packages/pharos', + files: '**/*.@(react|docs|pages).stories.@(js|jsx|mdx|tsx)', +}); module.exports = config; diff --git a/.storybook/react/preview.js b/.storybook/react/preview.js index 160cb2408..d056a9721 100644 --- a/.storybook/react/preview.js +++ b/.storybook/react/preview.js @@ -14,8 +14,5 @@ export const parameters = { components: { Canvas: Canvas, }, - source: { - type: 'code', - }, }, }; diff --git a/.storybook/wc/main.js b/.storybook/wc/main.js index c715ff1ad..69d325efb 100644 --- a/.storybook/wc/main.js +++ b/.storybook/wc/main.js @@ -1,5 +1,8 @@ let config = require('../main'); -config.stories.push('../../packages/pharos/**/*.@(wc|docs|pages).stories.@(js|mdx|ts)'); +config.stories.push({ + directory: '../../packages/pharos', + files: '**/*.@(wc|docs|pages).stories.@(js|jsx|mdx|ts)', +}); module.exports = config; diff --git a/packages/pharos-site/static/styles/global.scss b/packages/pharos-site/static/styles/global.scss index a1aa033ac..9b32f14f6 100644 --- a/packages/pharos-site/static/styles/global.scss +++ b/packages/pharos-site/static/styles/global.scss @@ -1,4 +1,5 @@ @use '@ithaka/pharos/lib/styles/pharos'; +@use '@ithaka/pharos/lib/utils/scss/mixins'; .pharos-storybook__image { margin-top: var(--pharos-spacing-three-quarters-x); @@ -270,3 +271,7 @@ p.alert-example__content + p.alert-example__content { .image-card-example__card--promotional { grid-column: span 4; } + +.hide-in-storybook { + @include mixins.hidden; +} diff --git a/packages/pharos/README.md b/packages/pharos/README.md index 854c255da..1dde5f91d 100644 --- a/packages/pharos/README.md +++ b/packages/pharos/README.md @@ -1,5 +1,9 @@ +<div class="hide-in-storybook"> + # Pharos Web Components +</div> + <!-- toc --> - [Installation](#installation) diff --git a/packages/pharos/docs/1.intro.docs.stories.mdx b/packages/pharos/docs/1.intro.docs.stories.mdx index 16d1eff38..37dbf49a6 100644 --- a/packages/pharos/docs/1.intro.docs.stories.mdx +++ b/packages/pharos/docs/1.intro.docs.stories.mdx @@ -1,6 +1,13 @@ import { Meta } from '@storybook/addon-docs'; + import Intro from '../README.md'; -import PHAROS_TITLE from '../../../.storybook/pharosTitle'; +import PHAROS_TITLE from '@config/pharosTitle'; + +<Meta title="Pharos/Intro" /> + +export const Title = () => PHAROS_TITLE; + +# <Title /> Web Components <Intro /> @@ -10,5 +17,3 @@ JSTOR is part of ITHAKA, a not-for-profit dedicated to expanding access to knowl - [See career opportunities](https://www.ithaka.org/careers/) - [Learn more about ITHAKA](https://www.ithaka.org/) - -<Meta title={`${PHAROS_TITLE}/Intro`} /> diff --git a/packages/pharos/docs/2.changelog.docs.stories.mdx b/packages/pharos/docs/2.changelog.docs.stories.mdx index 4aea48571..606b47118 100644 --- a/packages/pharos/docs/2.changelog.docs.stories.mdx +++ b/packages/pharos/docs/2.changelog.docs.stories.mdx @@ -1,7 +1,7 @@ import { Meta } from '@storybook/addon-docs'; -import Intro from '../CHANGELOG.md'; -import PHAROS_TITLE from '../../../.storybook/pharosTitle'; -<Intro /> +import Changelog from '../CHANGELOG.md'; -<Meta title={`${PHAROS_TITLE}/Changelog`} /> +<Meta title="Pharos/Changelog" /> + +<Changelog /> diff --git a/packages/pharos/src/components/alert/PharosAlert.react.stories.jsx b/packages/pharos/src/components/alert/PharosAlert.react.stories.jsx new file mode 100644 index 000000000..94b6eb0e0 --- /dev/null +++ b/packages/pharos/src/components/alert/PharosAlert.react.stories.jsx @@ -0,0 +1,77 @@ +import { PharosAlert, PharosLink } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; + +export default { + title: 'Components/Alert', + component: PharosAlert, + parameters: { + docs: { + page: configureDocsPage('alert'), + }, + }, + argTypes, +}; + +const Base = { + render: ({ status, text, closable }) => ( + <PharosAlert status={status} closable={closable}> + {text} + </PharosAlert> + ), + args: defaultArgs, +}; + +export const Info = { + ...Base, + args: { + status: 'info', + text: 'There will be maintenance tomorrow.', + }, +}; + +export const Success = { + ...Base, + args: { + status: 'success', + text: 'Success!', + }, +}; + +export const Warning = { + render: ({ status, text, closable }) => ( + <PharosAlert status={status} closable={closable}> + <p className="alert-example__content">{text}</p> + <p className="alert-example__content"> + See <PharosLink href="#">how to fix this</PharosLink>. + </p> + </PharosAlert> + ), + args: { + status: 'warning', + text: 'Your profile is incomplete.', + }, +}; + +export const Error = { + render: ({ status, text, closable }) => ( + <PharosAlert status={status} closable={closable}> + <p className="alert-example__content">{text}</p> + <p className="alert-example__content"> + For more information, <pharos-link href="#">read the documentation</pharos-link>. + </p> + </PharosAlert> + ), + args: { + status: 'error', + text: "Your password didn't meet the minimum requirements.", + }, +}; + +export const Closable = { + ...Error, + args: { + ...Error.args, + closable: true, + }, +}; diff --git a/packages/pharos/src/components/alert/PharosAlert.react.stories.mdx b/packages/pharos/src/components/alert/PharosAlert.react.stories.mdx deleted file mode 100644 index 0e83b5517..000000000 --- a/packages/pharos/src/components/alert/PharosAlert.react.stories.mdx +++ /dev/null @@ -1,100 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosAlert } from '../../react-components/alert/pharos-alert'; -import { PharosLink } from '../../react-components/link/pharos-link'; - -<Meta - title="Components/Alert" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} - argTypes={{ - text: { control: 'text', defaultValue: 'Alert message' }, - status: { table: { disable: true } }, - }} -/> - -# Alert - -<GuidelineLink path="alert" /> - -export const Template = (args) => <PharosAlert status={args.status}>{args.text}</PharosAlert>; - -## API - -<ArgsTable of={PharosAlert} /> - -## Info alert - -<Canvas withToolbar> - <Story - name="Info" - args={{ - text: 'There will be upcoming maintenance this week.', - status: 'info', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## Success alert - -<Canvas withToolbar> - <Story name="Success" args={{ text: 'Success!', status: 'success' }}> - {Template.bind({})} - </Story> -</Canvas> - -## Warning alert - -export const WarningTemplate = (args) => ( - <PharosAlert status="warning"> - <p>{args.text}</p> - <p> - See <PharosLink href="#">how to fix this</PharosLink>. - </p> - </PharosAlert> -); - -<Canvas withToolbar> - <Story name="Warning" args={{ text: 'Your profile is incomplete.' }}> - {WarningTemplate.bind({})} - </Story> -</Canvas> - -## Error alert - -export const ErrorTemplate = (args) => ( - <PharosAlert status="error"> - <p>{args.text}</p> - <p> - For more information, <PharosLink href="#">read the documentation</PharosLink>. - </p> - </PharosAlert> -); - -<Canvas withToolbar> - <Story name="Error" args={{ text: "Your password didn't meet the minimum requirements." }}> - {ErrorTemplate.bind({})} - </Story> -</Canvas> - -## Closable Alert - -export const ClosableTemplate = (args) => ( - <pharos-alert status="error" closable> - <p className="alert-example__content">{args.text}</p> - <p className="alert-example__content"> - For more information, - <pharos-link href="#">read the documentation</pharos-link>. - </p> - </pharos-alert> -); - -<Canvas withToolbar> - <Story name="Closable" args={{ text: "Your password didn't meet the minimum requirements." }}> - {ClosableTemplate.bind({})} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/alert/pharos-alert.ts b/packages/pharos/src/components/alert/pharos-alert.ts index 43eb8ce12..056fe4459 100644 --- a/packages/pharos/src/components/alert/pharos-alert.ts +++ b/packages/pharos/src/components/alert/pharos-alert.ts @@ -20,7 +20,7 @@ export enum ALERT_ICON { WARNING = 'exclamation-inverse', } -const STATUSES = ['info', 'success', 'warning', 'error']; +const STATUSES = ['info', 'success', 'warning', 'error'] as AlertStatus[]; /** * Pharos alert component diff --git a/packages/pharos/src/components/alert/pharos-alert.wc.stories.jsx b/packages/pharos/src/components/alert/pharos-alert.wc.stories.jsx new file mode 100644 index 000000000..4c553f7cd --- /dev/null +++ b/packages/pharos/src/components/alert/pharos-alert.wc.stories.jsx @@ -0,0 +1,71 @@ +import { html } from 'lit'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; + +export default { + title: 'Components/Alert', + component: 'pharos-alert', + parameters: { + docs: { + page: configureDocsPage('alert'), + }, + }, + argTypes, +}; + +const Base = { + render: ({ status, text, closable }) => + html`<pharos-alert status=${status} ?closable=${closable}>${text}</pharos-alert>`, + args: defaultArgs, +}; + +export const Info = { + ...Base, + args: { + status: 'info', + text: 'There will be maintenance tomorrow.', + }, +}; + +export const Success = { + ...Base, + args: { + status: 'success', + text: 'Success!', + }, +}; + +export const Warning = { + render: ({ status, text, closable }) => + html` <pharos-alert status=${status} ?closable=${closable}> + <p class="alert-example__content">${text}</p> + <p class="alert-example__content">See <pharos-link href="#">how to fix this</pharos-link>.</p> + </pharos-alert>`, + args: { + status: 'warning', + text: 'Your profile is incomplete.', + }, +}; + +export const Error = { + render: ({ status, text, closable }) => + html` <pharos-alert status=${status} ?closable=${closable}> + <p class="alert-example__content">${text}</p> + <p class="alert-example__content"> + For more information, + <pharos-link href="#">read the documentation</pharos-link>. + </p> + </pharos-alert>`, + args: { + status: 'error', + text: "Your password didn't meet the minimum requirements.", + }, +}; + +export const Closable = { + ...Error, + args: { + ...Error.args, + closable: true, + }, +}; diff --git a/packages/pharos/src/components/alert/pharos-alert.wc.stories.mdx b/packages/pharos/src/components/alert/pharos-alert.wc.stories.mdx deleted file mode 100644 index bcc3693ac..000000000 --- a/packages/pharos/src/components/alert/pharos-alert.wc.stories.mdx +++ /dev/null @@ -1,88 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { ifDefined } from 'lit/directives/if-defined.js'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta - title="Components/Alert" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} - argTypes={{ - text: { control: 'text', defaultValue: 'Alert message' }, - status: { table: { disable: true } }, - }} -/> - -# Alert - -<GuidelineLink path="alert" /> - -export const Template = (args) => html`<pharos-alert status=${ifDefined(args.status)}> - ${args.text} -</pharos-alert>`; - -## API - -<ArgsTable of="pharos-alert" /> - -## Info Alert - -<Canvas withToolbar> - <Story name="Info" args={{ text: 'There will be maintenance tomorrow.', status: 'info' }}> - {Template.bind({})} - </Story> -</Canvas> - -## Success Alert - -<Canvas withToolbar> - <Story name="Success" args={{ text: 'Success!', status: 'success' }}> - {Template.bind({})} - </Story> -</Canvas> - -## Warning Alert - -export const WarningTemplate = (args) => html` <pharos-alert status="warning"> - <p class="alert-example__content">${args.text}</p> - <p class="alert-example__content">See <pharos-link href="#">how to fix this</pharos-link>.</p> -</pharos-alert>`; - -<Canvas withToolbar> - <Story name="Warning" args={{ text: 'Your profile is incomplete.' }}> - {WarningTemplate.bind({})} - </Story> -</Canvas> - -## Error Alert - -export const ErrorTemplate = (args) => html` <pharos-alert status="error"> - <p class="alert-example__content">${args.text}</p> - <p class="alert-example__content"> - For more information, - <pharos-link href="#">read the documentation</pharos-link>. - </p> -</pharos-alert>`; - -<Canvas withToolbar> - <Story name="Error" args={{ text: "Your password didn't meet the minimum requirements." }}> - {ErrorTemplate.bind({})} - </Story> -</Canvas> - -## Closable Alert - -export const ClosableTemplate = (args) => html` <pharos-alert status="error" closable> - <p class="alert-example__content">${args.text}</p> - <p class="alert-example__content"> - For more information, - <pharos-link href="#">read the documentation</pharos-link>. - </p> -</pharos-alert>`; - -<Canvas withToolbar> - <Story name="Closable" args={{ text: "Your password didn't meet the minimum requirements." }}> - {ClosableTemplate.bind({})} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/alert/storyArgs.ts b/packages/pharos/src/components/alert/storyArgs.ts new file mode 100644 index 000000000..1e6d5ca92 --- /dev/null +++ b/packages/pharos/src/components/alert/storyArgs.ts @@ -0,0 +1,12 @@ +export const argTypes = { + status: { + options: ['info', 'success', 'warning', 'error'], + control: { type: 'inline-radio' }, + }, +}; + +export const defaultArgs = { + status: 'base', + text: 'I am an alert.', + closable: false, +}; diff --git a/packages/pharos/src/components/base/overlay-element.ts b/packages/pharos/src/components/base/overlay-element.ts index f10f6ff45..9cdec6627 100644 --- a/packages/pharos/src/components/base/overlay-element.ts +++ b/packages/pharos/src/components/base/overlay-element.ts @@ -11,13 +11,13 @@ export { arrow, autoUpdate, computePosition, flip, offset, shift } from '@floati export type { Placement, PositioningStrategy, Side }; -const STRATEGIES: PositioningStrategy[] = ['absolute', 'fixed']; -const SIDES: Side[] = ['top', 'right', 'bottom', 'left']; +export const allStrategies = ['absolute', 'fixed'] as PositioningStrategy[]; +const SIDES = ['top', 'right', 'bottom', 'left'] as Side[]; export const allPlacements = SIDES.reduce( (acc: Placement[], side) => acc.concat(side, `${side}-start` as AlignedPlacement, `${side}-end` as AlignedPlacement), [] -); +) as Placement[]; /** * The base overlay element class to house shared properties, styles, and methods. @@ -96,11 +96,11 @@ export class OverlayElement extends PharosElement { ); } } - if (changedProperties.has('strategy') && !STRATEGIES.includes(this.strategy)) { + if (changedProperties.has('strategy') && !allStrategies.includes(this.strategy)) { throw new Error( `${ this.strategy - } is not a valid positioning strategy. Valid strategies are: ${STRATEGIES.join(', ')}` + } is not a valid positioning strategy. Valid strategies are: ${allStrategies.join(', ')}` ); } } diff --git a/packages/pharos/src/components/breadcrumb/PharosBreadcrumb.react.stories.jsx b/packages/pharos/src/components/breadcrumb/PharosBreadcrumb.react.stories.jsx new file mode 100644 index 000000000..02dd54b99 --- /dev/null +++ b/packages/pharos/src/components/breadcrumb/PharosBreadcrumb.react.stories.jsx @@ -0,0 +1,32 @@ +import { PharosBreadcrumb, PharosBreadcrumbItem } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Breadcrumb', + component: PharosBreadcrumb, + parameters: { + docs: { + page: configureDocsPage('breadcrumb'), + }, + }, + argTypes: {}, +}; + +export const Base = { + render: ({ firstCrumb, secondCrumb, thirdCrumb }) => ( + <PharosBreadcrumb> + <PharosBreadcrumbItem href="#" id="firstBreadcrumb"> + {firstCrumb} + </PharosBreadcrumbItem> + <PharosBreadcrumbItem href="#" id="secondBreadcrumb"> + {secondCrumb} + </PharosBreadcrumbItem> + <PharosBreadcrumbItem id="thirdBreadcrumb">{thirdCrumb}</PharosBreadcrumbItem> + </PharosBreadcrumb> + ), + args: { + firstCrumb: 'Hover to see the full text of long content, which are truncated', + secondCrumb: 'Short texts will not', + thirdCrumb: 'Current', + }, +}; diff --git a/packages/pharos/src/components/breadcrumb/PharosBreadcrumb.react.stories.mdx b/packages/pharos/src/components/breadcrumb/PharosBreadcrumb.react.stories.mdx deleted file mode 100644 index f19431f35..000000000 --- a/packages/pharos/src/components/breadcrumb/PharosBreadcrumb.react.stories.mdx +++ /dev/null @@ -1,40 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosBreadcrumb } from '../../react-components/breadcrumb/pharos-breadcrumb'; -import { PharosBreadcrumbItem } from '../../react-components/breadcrumb/pharos-breadcrumb-item'; - -<Meta title="Components/Breadcrumb" /> - -export const Template = (args) => ( - <PharosBreadcrumb> - <PharosBreadcrumbItem href="#" id="firstBreadcrumb"> - {args.firstCrumb} - </PharosBreadcrumbItem> - <PharosBreadcrumbItem href="#" id="secondBreadcrumb"> - {args.secondCrumb} - </PharosBreadcrumbItem> - <PharosBreadcrumbItem id="thirdBreadcrumb">{args.thirdCrumb}</PharosBreadcrumbItem> - </PharosBreadcrumb> -); - -# Breadcrumbs - -<GuidelineLink path="breadcrumb" /> - -<Canvas> - <Story - name="Base" - args={{ - firstCrumb: 'Hover to see the full text of long content, which are truncated', - secondCrumb: 'Short texts will not', - thirdCrumb: 'Current', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosBreadcrumb} /> diff --git a/packages/pharos/src/components/breadcrumb/pharos-breadcrumb.wc.stories.jsx b/packages/pharos/src/components/breadcrumb/pharos-breadcrumb.wc.stories.jsx new file mode 100644 index 000000000..1b5bab814 --- /dev/null +++ b/packages/pharos/src/components/breadcrumb/pharos-breadcrumb.wc.stories.jsx @@ -0,0 +1,26 @@ +import { html } from 'lit'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Breadcrumb', + component: 'pharos-breadcrumb', + parameters: { + docs: { + page: configureDocsPage('breadcrumb'), + }, + }, +}; + +export const Base = { + render: ({ firstCrumb, secondCrumb, thirdCrumb }) => + html` <pharos-breadcrumb> + <pharos-breadcrumb-item href="#" id="firstBreadcrumb">${firstCrumb}</pharos-breadcrumb-item> + <pharos-breadcrumb-item href="#" id="secondBreadcrumb">${secondCrumb}</pharos-breadcrumb-item> + <pharos-breadcrumb-item id="thirdBreadcrumb">${thirdCrumb}</pharos-breadcrumb-item> + </pharos-breadcrumb>`, + args: { + firstCrumb: 'Hover to see the full text of long content, which are truncated', + secondCrumb: 'Short texts will not', + thirdCrumb: 'Current', + }, +}; diff --git a/packages/pharos/src/components/breadcrumb/pharos-breadcrumb.wc.stories.mdx b/packages/pharos/src/components/breadcrumb/pharos-breadcrumb.wc.stories.mdx deleted file mode 100644 index 92d241645..000000000 --- a/packages/pharos/src/components/breadcrumb/pharos-breadcrumb.wc.stories.mdx +++ /dev/null @@ -1,39 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta title="Components/Breadcrumb" /> - -export const Template = (args) => - html` - <pharos-breadcrumb> - <pharos-breadcrumb-item href="#" id="firstBreadcrumb" - >${args.firstCrumb}</pharos-breadcrumb-item - > - <pharos-breadcrumb-item href="#" id="secondBreadcrumb" - >${args.secondCrumb}</pharos-breadcrumb-item - > - <pharos-breadcrumb-item id="thirdBreadcrumb">${args.thirdCrumb}</pharos-breadcrumb-item> - </pharos-breadcrumb> - `; - -# Breadcrumbs - -<GuidelineLink path="breadcrumb" /> - -<Canvas> - <Story - args={{ - firstCrumb: 'Hover to see the full text of long content, which are truncated', - secondCrumb: 'Short texts will not', - thirdCrumb: 'Current', - }} - name="Base" - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-breadcrumb" /> diff --git a/packages/pharos/src/components/button/PharosButton.react.stories.mdx b/packages/pharos/src/components/button/PharosButton.react.stories.jsx similarity index 61% rename from packages/pharos/src/components/button/PharosButton.react.stories.mdx rename to packages/pharos/src/components/button/PharosButton.react.stories.jsx index f59b372df..fa9cf4175 100644 --- a/packages/pharos/src/components/button/PharosButton.react.stories.mdx +++ b/packages/pharos/src/components/button/PharosButton.react.stories.jsx @@ -1,96 +1,60 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; +import { + PharosButton, + PharosCheckbox, + PharosCheckboxGroup, + PharosCombobox, + PharosRadioButton, + PharosRadioGroup, + PharosSelect, + PharosTextInput, + PharosTextarea, +} from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; +import { action } from '@storybook/addon-actions'; -import { PharosButton } from '../../react-components/button/pharos-button'; -import { iconNames } from '../../utils/iconNames'; +export default { + title: 'Components/Button', + component: PharosButton, + parameters: { + docs: { + page: configureDocsPage('button'), + }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; -import { PharosCheckbox } from '../../react-components/checkbox/pharos-checkbox'; -import { PharosCheckboxGroup } from '../../react-components/checkbox-group/pharos-checkbox-group'; -import { PharosCombobox } from '../../react-components/combobox/pharos-combobox'; -import { PharosRadioButton } from '../../react-components/radio-button/pharos-radio-button'; -import { PharosRadioGroup } from '../../react-components/radio-group/pharos-radio-group'; -import { PharosSelect } from '../../react-components/select/pharos-select'; -import { PharosTextInput } from '../../react-components/text-input/pharos-text-input'; -import { PharosTextarea } from '../../react-components/textarea/pharos-textarea'; - -<Meta - title="Components/Button" - parameters={{ - component: PharosButton, - }} -/> - -export const Template = (args) => ( - <PharosButton - disabled={args.disabled} - variant={args.variant} - type={args.type} - icon={args.icon} - iconCondensed={args.iconCondensed} - iconLeft={args.iconLeft} - iconRight={args.iconRight} - large={args.large} - href={args.href} - target={args.target} - label={args.label} - > - {args.text} - </PharosButton> -); - -# Button - -<GuidelineLink path="button" /> - -<Canvas> - <Story - name="Base" - argTypes={{ - variant: { - options: ['primary', 'secondary', 'subtle'], - control: { - type: 'inline-radio', - }, - defaultValue: 'primary', - }, - type: { - options: ['button', 'submit', 'reset'], - control: { - type: 'inline-radio', - }, - defaultValue: 'button', - }, - iconLeft: { - options: iconNames, - control: { - type: 'select', - }, - }, - iconRight: { - options: iconNames, - control: { - type: 'select', - }, - }, - }} - args={{ - text: 'I am a button', - disabled: false, - large: false, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosButton} /> - -# Variants +export const Base = { + render: (args) => ( + <PharosButton + disabled={args.disabled} + download={args.download} + icon={args.icon} + iconCondensed={args.iconCondensed} + iconLeft={args.iconLeft} + iconRight={args.iconRight} + fullWidth={args.fullWidth} + href={args.href} + hreflang={args.hreflang} + label={args.label} + large={args.large} + onBackground={args.onBackground} + ping={args.ping} + pressed={args.pressed} + target={args.target} + type={args.type} + variant={args.variant} + onClick={(e) => action('Click')(e.target)} + > + {args.text} + </PharosButton> + ), + args: defaultArgs, +}; -<Canvas withToolbar> - <Story name="Variants"> +export const Variants = { + render: (_) => ( <div style={{ display: 'grid', @@ -146,13 +110,11 @@ export const Template = (args) => ( </PharosButton> </div> </div> - </Story> -</Canvas> - -# Large + ), +}; -<Canvas withToolbar> - <Story name="Large"> +export const Large = { + render: (_) => ( <div style={{ display: 'grid', @@ -210,13 +172,11 @@ export const Template = (args) => ( </PharosButton> </div> </div> - </Story> -</Canvas> + ), +}; -# With Icons - -<Canvas withToolbar> - <Story name="With Icons"> +export const WithIcons = { + render: (_) => ( <div style={{ display: 'grid', @@ -275,135 +235,40 @@ export const Template = (args) => ( </PharosButton> </div> </div> - </Story> -</Canvas> - -# Icon only + ), +}; -<Canvas> - <Story - name="Icon only" - argTypes={{ - variant: { - options: ['primary', 'secondary', 'subtle'], - control: { - type: 'inline-radio', - }, - defaultValue: 'primary', - }, - type: { - options: ['button', 'submit', 'reset'], - control: { - type: 'inline-radio', - }, - defaultValue: 'button', - }, - icon: { - options: iconNames, - control: { - type: 'select', - }, - }, - }} - args={{ - icon: 'download', - disabled: false, - large: false, - label: 'download', - }} - > - {Template.bind({})} - </Story> -</Canvas> +export const IconOnly = { + ...Base, + name: 'Icon only', + args: { + ...Base.args, + text: undefined, + icon: 'download', + label: 'download', + }, +}; -# Icon only (condensed) +export const IconOnlyCondensed = { + ...IconOnly, + name: 'Icon only (condensed)', + args: { + ...IconOnly.args, + iconCondensed: true, + }, +}; -<Canvas> - <Story - name="Icon only (condensed)" - argTypes={{ - variant: { - options: ['primary', 'secondary', 'subtle'], - control: { - type: 'inline-radio', - }, - defaultValue: 'primary', - }, - type: { - options: ['button', 'submit', 'reset'], - control: { - type: 'inline-radio', - }, - defaultValue: 'button', - }, - icon: { - options: iconNames, - control: { - type: 'select', - }, - }, - }} - args={{ - icon: 'download', - disabled: false, - large: false, - label: 'download', - iconCondensed: true, - }} - > - {Template.bind({})} - </Story> -</Canvas> +export const Link = { + ...Base, + args: { + ...Base.args, + href: 'https://google.com', + target: '_blank', + }, +}; -# Link - -<Canvas> - <Story - name="Link" - argTypes={{ - variant: { - options: ['primary', 'secondary', 'subtle'], - control: { - type: 'inline-radio', - }, - defaultValue: 'primary', - }, - type: { - options: ['button', 'submit', 'reset'], - control: { - type: 'inline-radio', - }, - defaultValue: 'button', - }, - iconLeft: { - options: iconNames, - control: { - type: 'select', - }, - }, - iconRight: { - options: iconNames, - control: { - type: 'select', - }, - }, - }} - args={{ - text: 'I am a button', - disabled: false, - large: false, - href: 'https://google.com', - target: '_blank', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Forms - -<Canvas withToolbar> - <Story name="Forms"> +export const Forms = { + render: (_) => ( <div style={{ display: 'grid', @@ -453,10 +318,11 @@ export const Template = (args) => ( <PharosButton type="reset" variant="secondary" style={{ marginTop: '1.5rem' }}> Reset </PharosButton> + <PharosButton type="submit" style={{ marginTop: '1.5rem' }}> Submit </PharosButton> </form> </div> - </Story> -</Canvas> + ), +}; diff --git a/packages/pharos/src/components/button/pharos-button.ts b/packages/pharos/src/components/button/pharos-button.ts index 872e0491d..064ee7e8f 100644 --- a/packages/pharos/src/components/button/pharos-button.ts +++ b/packages/pharos/src/components/button/pharos-button.ts @@ -19,9 +19,9 @@ export type ButtonVariant = 'primary' | 'secondary' | 'subtle' | 'overlay'; export type PressedState = 'false' | 'true' | 'mixed' | 'undefined'; -const TYPES = ['button', 'submit', 'reset']; +const TYPES = ['button', 'submit', 'reset'] as ButtonType[]; -const VARIANTS = ['primary', 'secondary', 'subtle', 'overlay']; +const VARIANTS = ['primary', 'secondary', 'subtle', 'overlay'] as ButtonVariant[]; /** * Pharos button component. diff --git a/packages/pharos/src/components/button/pharos-button.wc.stories.jsx b/packages/pharos/src/components/button/pharos-button.wc.stories.jsx new file mode 100644 index 000000000..42350e39f --- /dev/null +++ b/packages/pharos/src/components/button/pharos-button.wc.stories.jsx @@ -0,0 +1,252 @@ +import { html } from 'lit'; +import { ifDefined } from 'lit/directives/if-defined.js'; +import { action } from '@storybook/addon-actions'; + +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; + +export default { + title: 'Components/Button', + component: 'pharos-button', + parameters: { + docs: { + page: configureDocsPage('button'), + }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; + +export const Base = { + render: (args) => + html` + <pharos-button + ?disabled=${ifDefined(args.disabled)} + download=${ifDefined(args.download)} + icon=${ifDefined(args.icon)} + ?icon-condensed=${ifDefined(args.iconCondensed)} + icon-left=${ifDefined(args.iconLeft)} + icon-right=${ifDefined(args.iconRight)} + ?full-width=${ifDefined(args.fullWidth)} + href=${ifDefined(args.href)} + hreflang=${ifDefined(args.hreflang)} + label=${ifDefined(args.label)} + ?large=${ifDefined(args.large)} + ?on-background=${ifDefined(args.onBackground)} + ping=${ifDefined(args.ping)} + pressed=${ifDefined(args.pressed)} + target=${ifDefined(args.target)} + type=${ifDefined(args.type)} + variant=${ifDefined(args.variant)} + @click="${(e) => action('Click')(e.target)}" + > + ${args.text} + </pharos-button> + `, + args: defaultArgs, +}; + +export const Variants = { + render: () => + html` + <div style="display: grid; grid-gap: 2rem; grid-template-columns: repeat(3, 200px);"> + <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> + <pharos-button name="primary">Primary</pharos-button> + <pharos-button name="secondary" variant="secondary">Secondary</pharos-button> + <pharos-button name="subtle" variant="subtle">Subtle</pharos-button> + <pharos-button name="overlay" variant="overlay">Overlay</pharos-button> + </div> + <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> + <pharos-button name="primary-disabled" disabled>Primary</pharos-button> + <pharos-button name="secondary-disabled" variant="secondary" disabled + >Secondary</pharos-button + > + <pharos-button name="subtle-disabled" variant="subtle" disabled>Subtle</pharos-button> + <pharos-button name="overlay-disabled" variant="overlay" disabled>Overlay</pharos-button> + </div> + <div style="background-color: #000000; padding: 1rem; display: grid; grid-gap: 1.5rem;"> + <pharos-button name="primary-on-background" on-background>Primary</pharos-button> + <pharos-button name="secondary-on-background" variant="secondary" on-background + >Secondary</pharos-button + > + <pharos-button name="subtle-on-background" variant="subtle" on-background + >Subtle</pharos-button + > + <pharos-button name="overlay-on-background" variant="overlay" on-background + >Overlay</pharos-button + > + </div> + </div> + `, +}; + +export const Large = { + render: () => + html` + <div style="display: grid; grid-gap: 2rem; grid-template-columns: repeat(3, 200px);"> + <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> + <pharos-button name="large-primary" large>Primary</pharos-button> + <pharos-button name="large-secondary" variant="secondary" large>Secondary</pharos-button> + <pharos-button name="large-subtle" variant="subtle" large>Subtle</pharos-button> + <pharos-button name="large-overlay" variant="overlay" large>Overlay</pharos-button> + </div> + <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> + <pharos-button name="large-primary-disabled" large disabled>Primary</pharos-button> + <pharos-button name="large-secondary-disabled" variant="secondary" large disabled + >Secondary + </pharos-button> + <pharos-button name="large-subtle-disabled" variant="subtle" large disabled + >Subtle + </pharos-button> + <pharos-button name="large-overlay" variant="overlay" large disabled + >Overlay + </pharos-button> + </div> + <div style="background-color: #000000; padding: 1rem; display: grid; grid-gap: 1.5rem;"> + <pharos-button name="large-primary-on-background" large on-background + >Primary + </pharos-button> + <pharos-button + name="large-secondary-on-background" + variant="secondary" + large + on-background + >Secondary + </pharos-button> + <pharos-button name="large-subtle-on-background" variant="subtle" large on-background + >Subtle + </pharos-button> + <pharos-button name="large-overlay" variant="overlay" large on-background + >Overlay + </pharos-button> + </div> + </div> + `, +}; + +export const WithIcons = { + render: () => + html` + <div style="display: grid; grid-gap: 2rem; grid-template-columns: repeat(3, 200px);"> + <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> + <pharos-button name="primary-icon-left" icon-left="download">Icon left</pharos-button> + <pharos-button name="primary-icon-right" icon-right="chevron-down" + >Icon right + </pharos-button> + <pharos-button name="primary-icon-both" icon-right="chevron-down" icon-left="view-gallery" + >Icon both + </pharos-button> + </div> + <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> + <pharos-button name="primary-icon-left-disabled" icon-left="download" disabled + >Icon left + </pharos-button> + <pharos-button name="primary-icon-right-disabled" icon-right="chevron-down" disabled + >Icon right + </pharos-button> + <pharos-button + name="primary-icon-both-disabled" + icon-right="chevron-down" + icon-left="view-gallery" + disabled + >Icon both + </pharos-button> + </div> + <div style="background-color: #000000; padding: 1rem; display: grid; grid-gap: 1.5rem;"> + <pharos-button name="primary-icon-left-on-background" icon-left="download" on-background + >Icon left + </pharos-button> + <pharos-button + name="primary-icon-right-on-background" + icon-right="chevron-down" + on-background + >Icon right + </pharos-button> + <pharos-button + name="primary-icon-both-on-background" + icon-right="chevron-down" + icon-left="view-gallery" + on-background + >Icon both + </pharos-button> + </div> + </div> + `, +}; + +export const IconOnly = { + ...Base, + name: 'Icon only', + args: { + ...Base.args, + text: undefined, + icon: 'download', + label: 'download', + }, +}; + +export const IconOnlyCondensed = { + ...IconOnly, + name: 'Icon only (condensed)', + args: { + ...IconOnly.args, + iconCondensed: true, + }, +}; + +export const Link = { + ...Base, + args: { + ...Base.args, + href: 'https://google.com', + target: '_blank', + }, +}; + +export const Forms = { + render: () => + html` + <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <pharos-text-input name="my-text-input" required> + <span slot="label">Name</span> + </pharos-text-input> + <pharos-select name="my-select" required style="margin-top: 1.5rem"> + <span slot="label">Role</span> + <option value="1">Student</option> + <option value="2">Teacher</option> + <option value="3" selected>Librarian</option> + </pharos-select> + <pharos-combobox name="my-combobox" value="2" required style="margin-top: 1.5rem"> + <span slot="label">State</span> + <option value="1">New York</option> + <option value="2">Michigan</option> + <option value="3">New Jersey</option> + </pharos-combobox> + <pharos-radio-group name="my-radio-group" style="margin-top: 1.5rem"> + <span slot="legend">Degree</span> + <pharos-radio-button value="1" + ><span slot="label">Undergraduate</span></pharos-radio-button + > + <pharos-radio-button value="2"><span slot="label">Graduate</span></pharos-radio-button> + </pharos-radio-group> + <pharos-checkbox-group name="my-checkbox-group" style="margin-top: 1.5rem"> + <span slot="legend">Preferences</span> + <pharos-checkbox value="1" + ><span slot="label">Send me promotions and discounts</span></pharos-checkbox + > + <pharos-checkbox value="2" checked + ><span slot="label">Send me weekly updates</span></pharos-checkbox + > + </pharos-checkbox-group> + <pharos-textarea name="comments" style="margin-top: 1.5rem"> + <span slot="label">Comments</span> + </pharos-textarea> + <pharos-button type="reset" variant="secondary" style="margin-top: 1.5rem" + >Reset + </pharos-button> + <pharos-button type="submit" style="margin-top: 1.5rem">Submit</pharos-button> + </form> + </div> + `, +}; diff --git a/packages/pharos/src/components/button/pharos-button.wc.stories.mdx b/packages/pharos/src/components/button/pharos-button.wc.stories.mdx deleted file mode 100644 index 469f07994..000000000 --- a/packages/pharos/src/components/button/pharos-button.wc.stories.mdx +++ /dev/null @@ -1,391 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { ifDefined } from 'lit/directives/if-defined.js'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { iconNames } from '../../utils/iconNames'; - -<Meta - title="Components/Button" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -export const Template = (args) => - html` - <pharos-button - ?disabled=${ifDefined(args.disabled)} - variant=${ifDefined(args.variant)} - type=${ifDefined(args.type)} - icon=${ifDefined(args.icon)} - icon-condensed=${ifDefined(args.iconCondensed)} - icon-left=${ifDefined(args.iconLeft)} - icon-right=${ifDefined(args.iconRight)} - ?large=${ifDefined(args.large)} - href=${ifDefined(args.href)} - target=${ifDefined(args.target)} - label=${ifDefined(args.label)} - @click="${(e) => action('Click')(e.target)}" - > - ${args.text} - </pharos-button> - `; - -# Button - -<GuidelineLink path="button" /> - -<Canvas> - <Story - name="Base" - argTypes={{ - variant: { - options: ['primary', 'secondary', 'subtle', 'overlay'], - control: { - type: 'inline-radio', - }, - defaultValue: 'primary', - }, - type: { - options: ['button', 'submit', 'reset'], - control: { - type: 'inline-radio', - }, - defaultValue: 'button', - }, - iconLeft: { - options: iconNames, - control: { - type: 'select', - }, - }, - iconRight: { - options: iconNames, - control: { - type: 'select', - }, - }, - }} - args={{ - text: 'I am a button', - disabled: false, - large: false, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-button" /> - -# Variants - -<Canvas withToolbar> - <Story name="Variants"> - {html` - <div style="display: grid; grid-gap: 2rem; grid-template-columns: repeat(3, 200px);"> - <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> - <pharos-button name="primary">Primary</pharos-button> - <pharos-button name="secondary" variant="secondary">Secondary</pharos-button> - <pharos-button name="subtle" variant="subtle">Subtle</pharos-button> - <pharos-button name="overlay" variant="overlay">Overlay</pharos-button> - </div> - <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> - <pharos-button name="primary-disabled" disabled>Primary</pharos-button> - <pharos-button name="secondary-disabled" variant="secondary" disabled - >Secondary</pharos-button - > - <pharos-button name="subtle-disabled" variant="subtle" disabled>Subtle</pharos-button> - <pharos-button name="overlay-disabled" variant="overlay" disabled>Overlay</pharos-button> - </div> - <div style="background-color: #000000; padding: 1rem; display: grid; grid-gap: 1.5rem;"> - <pharos-button name="primary-on-background" on-background>Primary</pharos-button> - <pharos-button name="secondary-on-background" variant="secondary" on-background - >Secondary</pharos-button - > - <pharos-button name="subtle-on-background" variant="subtle" on-background - >Subtle</pharos-button - > - <pharos-button name="overlay-on-background" variant="overlay" on-background - >Overlay</pharos-button - > - </div> - </div> - `} - </Story> -</Canvas> - -# Large - -<Canvas withToolbar> - <Story name="Large"> - {html` - <div style="display: grid; grid-gap: 2rem; grid-template-columns: repeat(3, 200px);"> - <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> - <pharos-button name="large-primary" large>Primary</pharos-button> - <pharos-button name="large-secondary" variant="secondary" large>Secondary</pharos-button> - <pharos-button name="large-subtle" variant="subtle" large>Subtle</pharos-button> - <pharos-button name="large-overlay" variant="overlay" large>Overlay</pharos-button> - </div> - <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> - <pharos-button name="large-primary-disabled" large disabled>Primary</pharos-button> - <pharos-button name="large-secondary-disabled" variant="secondary" large disabled - >Secondary</pharos-button - > - <pharos-button name="large-subtle-disabled" variant="subtle" large disabled - >Subtle</pharos-button - > - <pharos-button name="large-overlay" variant="overlay" large disabled - >Overlay</pharos-button - > - </div> - <div style="background-color: #000000; padding: 1rem; display: grid; grid-gap: 1.5rem;"> - <pharos-button name="large-primary-on-background" large on-background - >Primary</pharos-button - > - <pharos-button - name="large-secondary-on-background" - variant="secondary" - large - on-background - >Secondary</pharos-button - > - <pharos-button name="large-subtle-on-background" variant="subtle" large on-background - >Subtle</pharos-button - > - <pharos-button name="large-overlay" variant="overlay" large on-background - >Overlay</pharos-button - > - </div> - </div> - `} - </Story> -</Canvas> - -# With Icons - -<Canvas withToolbar> - <Story name="With Icons"> - {html` - <div style="display: grid; grid-gap: 2rem; grid-template-columns: repeat(3, 200px);"> - <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> - <pharos-button name="primary-icon-left" icon-left="download">Icon left</pharos-button> - <pharos-button name="primary-icon-right" icon-right="chevron-down" - >Icon right</pharos-button - > - <pharos-button name="primary-icon-both" icon-right="chevron-down" icon-left="view-gallery" - >Icon both</pharos-button - > - </div> - <div style="padding: 1rem; display: grid; grid-gap: 1.5rem;"> - <pharos-button name="primary-icon-left-disabled" icon-left="download" disabled - >Icon left</pharos-button - > - <pharos-button name="primary-icon-right-disabled" icon-right="chevron-down" disabled - >Icon right</pharos-button - > - <pharos-button - name="primary-icon-both-disabled" - icon-right="chevron-down" - icon-left="view-gallery" - disabled - >Icon both</pharos-button - > - </div> - <div style="background-color: #000000; padding: 1rem; display: grid; grid-gap: 1.5rem;"> - <pharos-button name="primary-icon-left-on-background" icon-left="download" on-background - >Icon left</pharos-button - > - <pharos-button - name="primary-icon-right-on-background" - icon-right="chevron-down" - on-background - >Icon right</pharos-button - > - <pharos-button - name="primary-icon-both-on-background" - icon-right="chevron-down" - icon-left="view-gallery" - on-background - >Icon both</pharos-button - > - </div> - </div> - `} - </Story> -</Canvas> - -# Icon only - -<Canvas> - <Story - name="Icon only" - argTypes={{ - variant: { - options: ['primary', 'secondary', 'subtle', 'overlay'], - control: { - type: 'inline-radio', - }, - defaultValue: 'subtle', - }, - type: { - options: ['button', 'submit', 'reset'], - control: { - type: 'inline-radio', - }, - defaultValue: 'button', - }, - icon: { - options: iconNames, - control: { - type: 'select', - }, - }, - }} - args={{ - icon: 'download', - disabled: false, - large: false, - label: 'download', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Icon only (condensed) - -<Canvas> - <Story - name="Icon only (condensed)" - argTypes={{ - variant: { - options: ['primary', 'secondary', 'subtle', 'overlay'], - control: { - type: 'inline-radio', - }, - defaultValue: 'subtle', - }, - type: { - options: ['button', 'submit', 'reset'], - control: { - type: 'inline-radio', - }, - defaultValue: 'button', - }, - }} - args={{ - icon: 'download', - iconCondensed: true, - disabled: false, - large: false, - label: 'download', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Link - -<Canvas> - <Story - name="Link" - argTypes={{ - variant: { - options: ['primary', 'secondary', 'subtle', 'overlay'], - control: { - type: 'inline-radio', - }, - defaultValue: 'primary', - }, - type: { - options: ['button', 'submit', 'reset'], - control: { - type: 'inline-radio', - }, - defaultValue: 'button', - }, - iconLeft: { - options: iconNames, - control: { - type: 'select', - }, - }, - iconRight: { - options: iconNames, - control: { - type: 'select', - }, - }, - }} - args={{ - text: 'I am a button', - disabled: false, - large: false, - href: 'https://google.com', - target: '_blank', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Forms - -<Canvas withToolbar> - <Story name="Forms"> - {() => { - return html` - <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <pharos-text-input name="my-text-input" required> - <span slot="label">Name</span> - </pharos-text-input> - <pharos-select name="my-select" required style="margin-top: 1.5rem"> - <span slot="label">Role</span> - <option value="1">Student</option> - <option value="2">Teacher</option> - <option value="3" selected>Librarian</option> - </pharos-select> - <pharos-combobox name="my-combobox" value="2" required style="margin-top: 1.5rem"> - <span slot="label">State</span> - <option value="1">New York</option> - <option value="2">Michigan</option> - <option value="3">New Jersey</option> - </pharos-combobox> - <pharos-radio-group name="my-radio-group" style="margin-top: 1.5rem"> - <span slot="legend">Degree</span> - <pharos-radio-button value="1" - ><span slot="label">Undergraduate</span></pharos-radio-button - > - <pharos-radio-button value="2" - ><span slot="label">Graduate</span></pharos-radio-button - > - </pharos-radio-group> - <pharos-checkbox-group name="my-checkbox-group" style="margin-top: 1.5rem"> - <span slot="legend">Preferences</span> - <pharos-checkbox value="1" - ><span slot="label">Send me promotions and discounts</span></pharos-checkbox - > - <pharos-checkbox value="2" checked - ><span slot="label">Send me weekly updates</span></pharos-checkbox - > - </pharos-checkbox-group> - <pharos-textarea name="comments" style="margin-top: 1.5rem"> - <span slot="label">Comments</span> - </pharos-textarea> - <pharos-button type="reset" variant="secondary" style="margin-top: 1.5rem" - >Reset</pharos-button - > - <pharos-button type="submit" style="margin-top: 1.5rem">Submit</pharos-button> - </form> - </div> - `; - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/button/storyArgs.ts b/packages/pharos/src/components/button/storyArgs.ts new file mode 100644 index 000000000..e2c0e7145 --- /dev/null +++ b/packages/pharos/src/components/button/storyArgs.ts @@ -0,0 +1,43 @@ +import { iconNames } from '../../utils/iconNames'; + +export const argTypes = { + icon: { + options: iconNames, + control: { type: 'select' }, + }, + iconLeft: { + options: iconNames, + control: { type: 'select' }, + }, + iconRight: { + options: iconNames, + control: { type: 'select' }, + }, + pressed: { + options: ['false', 'true', 'mixed', 'undefined'], + control: { type: 'inline-radio' }, + }, + type: { + options: ['button', 'submit', 'reset'], + control: { type: 'inline-radio' }, + }, + variant: { + options: ['primary', 'secondary', 'subtle', 'overlay'], + control: { type: 'inline-radio' }, + }, +}; + +export const defaultArgs = { + // Story + text: 'I am a button', + // Props + autofocus: false, + disabled: false, + fullWidth: false, + iconCondensed: false, + large: false, + onBackground: false, + pressed: 'undefined', + type: 'button', + variant: 'primary', +}; diff --git a/packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.jsx b/packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.jsx new file mode 100644 index 000000000..e36f86648 --- /dev/null +++ b/packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.jsx @@ -0,0 +1,107 @@ +import { action } from '@storybook/addon-actions'; + +import { PharosButton, PharosCheckbox, PharosCheckboxGroup } from '../../react-components'; +import createFormData from '../../utils/createFormData'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Forms/Checkbox Group', + component: PharosCheckboxGroup, + subcomponents: { PharosCheckbox }, + options: { selectedPanel: 'addon-controls' }, +}; + +export const Base = { + render: (args) => ( + <PharosCheckboxGroup + disabled={args.disabled} + hideLabel={args.hideLabel} + horizontal={args.horizontal} + invalidated={args.invalidated} + message={args.message} + required={args.required} + validated={args.validated} + > + <span slot="legend">Checkbox Group Header</span> + <PharosCheckbox value="1"> + <span slot="label">Checkbox 1</span> + </PharosCheckbox> + <PharosCheckbox value="2"> + <span slot="label">Checkbox 2</span> + </PharosCheckbox> + </PharosCheckboxGroup> + ), + args: defaultArgs, +}; + +export const Events = { + render: (_) => ( + <PharosCheckboxGroup + onChange={(e) => action('Change')(JSON.stringify(e.target.value))} + name="group2" + > + <span slot="legend">Checkbox Group Header</span> + <PharosCheckbox value="1"> + <span slot="label">Checkbox 1</span> + </PharosCheckbox> + <PharosCheckbox value="2"> + <span slot="label">Checkbox 2</span> + </PharosCheckbox> + <PharosCheckbox value="3"> + <span slot="label">Checkbox 3</span> + </PharosCheckbox> + </PharosCheckboxGroup> + ), +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + required: true, + invalidated: true, + message: 'This field is required, please make a selection', + }, +}; + +export const FormData = { + render: (_) => ( + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <PharosCheckboxGroup + style={{ marginBottom: '0.5rem' }} + onChange={(e) => action('Change')(e.target.value)} + name="checkbox-group4" + required + > + <span slot="legend">Checkbox Group Header</span> + <PharosCheckbox value="1"> + <span slot="label">Checkbox 1</span> + </PharosCheckbox> + <PharosCheckbox value="2"> + <span slot="label">Checkbox 2</span> + </PharosCheckbox> + <PharosCheckbox value="3"> + <span slot="label">Checkbox 3</span> + </PharosCheckbox> + </PharosCheckboxGroup> + <PharosButton + type="submit" + value="Submit" + onClick={(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }} + > + Submit + </PharosButton> + </form> + ), +}; diff --git a/packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.mdx b/packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.mdx deleted file mode 100644 index a2103be1b..000000000 --- a/packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.mdx +++ /dev/null @@ -1,140 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosCheckboxGroup } from '../../react-components/checkbox-group/pharos-checkbox-group'; -import { PharosCheckbox } from '../../react-components/checkbox/pharos-checkbox'; -import { PharosButton } from '../../react-components/button/pharos-button'; -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Checkbox Group" - parameters={{ - component: PharosCheckboxGroup, - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Checkbox Group - -<GuidelineLink path="checkbox" /> - -export const Template = (args) => ( - <PharosCheckboxGroup - required={args.required} - invalidated={args.invalidated} - horizontal={args.horizontal} - hideLabel={args.hideLabel} - disabled={args.disabled} - message={args.message} - > - <span slot="legend">Checkbox Group Header</span> - <PharosCheckbox value="1"> - <span slot="label">Checkbox 1</span> - </PharosCheckbox> - <PharosCheckbox value="2"> - <span slot="label">Checkbox 2</span> - </PharosCheckbox> - </PharosCheckboxGroup> -); - -<Canvas withToolbar> - <Story name="Base" args={{ horizontal: false, hideLabel: false, disabled: false }}> - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosCheckboxGroup} /> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return ( - <PharosCheckboxGroup - onChange={(e) => action('Change')(JSON.stringify(e.target.value))} - name="group2" - > - <span slot="legend">Checkbox Group Header</span> - <PharosCheckbox value="1"> - <span slot="label">Checkbox 1</span> - </PharosCheckbox> - <PharosCheckbox value="2"> - <span slot="label">Checkbox 2</span> - </PharosCheckbox> - <PharosCheckbox value="3"> - <span slot="label">Checkbox 3</span> - </PharosCheckbox> - </PharosCheckboxGroup> - ); - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - args={{ - horizontal: false, - required: true, - invalidated: true, - message: 'This field is required, please make a selection', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <PharosCheckboxGroup - style={{ marginBottom: '0.5rem' }} - onChange={(e) => action('Change')(e.target.value)} - name="checkbox-group4" - required - > - <span slot="legend">Checkbox Group Header</span> - <PharosCheckbox value="1"> - <span slot="label">Checkbox 1</span> - </PharosCheckbox> - <PharosCheckbox value="2"> - <span slot="label">Checkbox 2</span> - </PharosCheckbox> - <PharosCheckbox value="3"> - <span slot="label">Checkbox 3</span> - </PharosCheckbox> - </PharosCheckboxGroup> - <PharosButton - type="submit" - value="Submit" - onClick={(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }} - > - Submit - </PharosButton> - </form> - </Story> -</Canvas> diff --git a/packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.jsx b/packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.jsx new file mode 100644 index 000000000..bed1bc21d --- /dev/null +++ b/packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.jsx @@ -0,0 +1,96 @@ +import { html } from 'lit'; +import { action } from '@storybook/addon-actions'; + +import createFormData from '../../utils/createFormData'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Forms/Checkbox Group', + component: 'pharos-checkbox-group', + subcomponents: { PharosCheckbox: 'pharos-checkbox' }, + parameters: { + options: { selectedPanel: 'addon-controls' }, + docs: { + page: configureDocsPage('checkbox'), + }, + }, +}; + +export const Base = { + render: (args) => + html` <pharos-checkbox-group + ?disabled=${args.disabled} + ?hide-label="${args.hideLabel}" + ?horizontal=${args.horizontal} + ?invalidated=${args.invalidated} + .message="${args.message}" + ?required=${args.required} + ?validated=${args.validated} + > + <span slot="legend">Checkbox Group Header</span> + <pharos-checkbox value="1"><span slot="label">Checkbox 1</span></pharos-checkbox> + <pharos-checkbox value="2"><span slot="label">Checkbox 2</span></pharos-checkbox> + </pharos-checkbox-group>`, + args: defaultArgs, +}; + +export const Events = { + render: (_) => + html` <pharos-checkbox-group + @change="${(e) => action('Change')(JSON.stringify(e.target.value))}" + name="checkbox-group2" + > + <span slot="legend">Checkbox Group Header</span> + <pharos-checkbox value="1"><span slot="label">Checkbox 1</span></pharos-checkbox> + <pharos-checkbox value="2"><span slot="label">Checkbox 2</span></pharos-checkbox> + <pharos-checkbox value="3"><span slot="label">Checkbox 3</span></pharos-checkbox> + </pharos-checkbox-group>`, + args: {}, + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + required: true, + invalidated: true, + message: 'This field is required, please make a selection', + }, +}; + +export const FormData = { + render: (_) => + html` <form name="my-form" action="https://httpbin.org/post" method="POST"> + <pharos-checkbox-group + @change="${(e) => action('Change')(e.target.value)}" + name="checkbox-group4" + style="margin-bottom: 0.5rem;" + required + > + <span slot="legend">Checkbox Group Header</span> + <pharos-checkbox value="1"><span slot="label">Checkbox 1</span></pharos-checkbox> + <pharos-checkbox value="2"><span slot="label">Checkbox 2</span></pharos-checkbox> + <pharos-checkbox value="3"><span slot="label">Checkbox 3</span></pharos-checkbox> + </pharos-checkbox-group> + <pharos-button + type="submit" + value="Submit" + @click="${(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }}" + >Submit</pharos-button + > + </form>`, + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; diff --git a/packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.mdx b/packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.mdx deleted file mode 100644 index 69d936fd7..000000000 --- a/packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.mdx +++ /dev/null @@ -1,121 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Checkbox Group" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Checkbox Group - -<GuidelineLink path="checkbox" /> - -export const Template = (args) => - html` <pharos-checkbox-group - ?invalidated=${args.invalidated} - ?required=${args.required} - ?horizontal=${args.horizontal} - ?disabled=${args.disabled} - ?hide-label="${args.hideLabel}" - .message="${args.message}" - > - <span slot="legend">Checkbox Group Header</span> - <pharos-checkbox value="1"><span slot="label">Checkbox 1</span></pharos-checkbox> - <pharos-checkbox value="2"><span slot="label">Checkbox 2</span></pharos-checkbox> - </pharos-checkbox-group>`; - -<Canvas withToolbar> - <Story name="Base" args={{ horizontal: false, hideLabel: false, disabled: false }}> - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-checkbox-group" /> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return html` <pharos-checkbox-group - @change="${(e) => action('Change')(JSON.stringify(e.target.value))}" - name="checkbox-group2" - > - <span slot="legend">Checkbox Group Header</span> - <pharos-checkbox value="1"><span slot="label">Checkbox 1</span></pharos-checkbox> - <pharos-checkbox value="2"><span slot="label">Checkbox 2</span></pharos-checkbox> - <pharos-checkbox value="3"><span slot="label">Checkbox 3</span></pharos-checkbox> - </pharos-checkbox-group>`; - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - args={{ - horizontal: false, - required: true, - invalidated: true, - message: 'This field is required, please make a selection', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - {() => { - return html` - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <pharos-checkbox-group - @change="${(e) => action('Change')(e.target.value)}" - name="checkbox-group4" - style="margin-bottom: 0.5rem;" - required - > - <span slot="legend">Checkbox Group Header</span> - <pharos-checkbox value="1"><span slot="label">Checkbox 1</span></pharos-checkbox> - <pharos-checkbox value="2"><span slot="label">Checkbox 2</span></pharos-checkbox> - <pharos-checkbox value="3"><span slot="label">Checkbox 3</span></pharos-checkbox> - </pharos-checkbox-group> - <pharos-button - type="submit" - value="Submit" - @click="${(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }}" - >Submit</pharos-button - > - </form> - `; - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/checkbox-group/storyArgs.ts b/packages/pharos/src/components/checkbox-group/storyArgs.ts new file mode 100644 index 000000000..07141570a --- /dev/null +++ b/packages/pharos/src/components/checkbox-group/storyArgs.ts @@ -0,0 +1,9 @@ +export const defaultArgs = { + disabled: false, + hideLabel: false, + horizontal: false, + invalidated: false, + message: '', + required: false, + validated: false, +}; diff --git a/packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.jsx b/packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.jsx new file mode 100644 index 000000000..dab4cc103 --- /dev/null +++ b/packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.jsx @@ -0,0 +1,134 @@ +import { action } from '@storybook/addon-actions'; + +import { PharosCheckbox, PharosLink } from '../../react-components'; +import { defaultArgs } from './storyArgs'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Forms/Checkbox', + component: PharosCheckbox, + parameters: { + docs: configureDocsPage('checkbox'), + options: { + selectedPanel: 'addon-controls', + }, + }, +}; + +export const Base = { + render: (args) => ( + <PharosCheckbox + checked={args.checked} + disabled={args.disabled} + hideLabel={args.hideLabel} + required={args.required} + indeterminate={args.indeterminate} + invalidated={args.invalidated} + message={args.message} + > + <span slot="label">{args.label}</span> + </PharosCheckbox> + ), + args: defaultArgs, +}; + +export const States = { + render: () => ( + <div> + <div> + <PharosCheckbox name="one"> + <span slot="label">Normal checkbox</span> + </PharosCheckbox> + </div> + <div> + <PharosCheckbox name="two" disabled> + <span slot="label">Disabled checkbox</span> + </PharosCheckbox> + </div> + <div> + <PharosCheckbox name="three" checked> + <span slot="label">Checked checkbox</span> + </PharosCheckbox> + </div> + <div> + <PharosCheckbox name="four" checked disabled> + <span slot="label">Disabled & Checked checkbox</span> + </PharosCheckbox> + </div> + <div> + <PharosCheckbox name="five" checked> + <div slot="label"> + <div>Checked checkbox</div> + <div>Multiple lines</div> + </div> + </PharosCheckbox> + </div> + <div> + <PharosCheckbox name="six" invalidated> + <span slot="label">Error checkbox</span> + </PharosCheckbox> + </div> + <div> + <PharosCheckbox name="seven"> + <span slot="label"> + Label with a <PharosLink href="#">link</PharosLink> + </span> + </PharosCheckbox> + </div> + <div> + <PharosCheckbox name="eight" indeterminate> + <span slot="label">Indeterminate checkbox</span> + </PharosCheckbox> + </div> + </div> + ), +}; + +export const Events = { + render: () => ( + <PharosCheckbox + value="My value" + onChange={(e) => action('Change')(e.target.checked)} + onInput={(e) => action('Input')(e.target.value)} + onClick={(e) => action('Click')(e.target.checked)} + > + <span slot="label">I fire events</span> + </PharosCheckbox> + ), + parameters: { + options: { selectedPanel: 'addon-actions' }, + }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + required: true, + invalidated: true, + message: 'This field is required, please make a selection', + }, +}; + +export const OnBackground = { + name: 'On background', + render: () => ( + <div> + <div className="checkbox-example__container--on-background"> + <PharosCheckbox name="on-background" onBackground> + <span slot="label">Unchecked</span> + </PharosCheckbox> + </div> + <div className="checkbox-example__container--on-background"> + <PharosCheckbox name="on-background" onBackground checked> + <span slot="label">Checked</span> + </PharosCheckbox> + </div> + <div className="checkbox-example__container--on-background"> + <PharosCheckbox name="indeterminate" onBackground indeterminate> + <span slot="label">Indeterminate</span> + </PharosCheckbox> + </div> + </div> + ), +}; diff --git a/packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.mdx b/packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.mdx deleted file mode 100644 index fba08be7b..000000000 --- a/packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.mdx +++ /dev/null @@ -1,174 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosCheckbox } from '../../react-components/checkbox/pharos-checkbox'; -import { PharosLink } from '../../react-components/link/pharos-link'; - -<Meta - title="Forms/Checkbox" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Checkbox - -<GuidelineLink path="checkbox" /> - -export const Template = (args) => ( - <PharosCheckbox - checked={args.checked} - disabled={args.disabled} - hideLabel={args.hideLabel} - required={args.required} - invalidated={args.invalidated} - message={args.message} - > - <span slot="label">{args.label}</span> - </PharosCheckbox> -); - -<Canvas withToolbar> - <Story - name="Base" - args={{ - checked: false, - disabled: false, - hideLabel: false, - label: 'I am a label', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosCheckbox} /> - -# States - -<Canvas withToolbar> - <Story name="States"> - {() => { - return ( - <div> - <div> - <PharosCheckbox name="one"> - <span slot="label">Normal checkbox</span> - </PharosCheckbox> - </div> - <div> - <PharosCheckbox name="two" disabled> - <span slot="label">Disabled checkbox</span> - </PharosCheckbox> - </div> - <div> - <PharosCheckbox name="three" checked> - <span slot="label">Checked checkbox</span> - </PharosCheckbox> - </div> - <div> - <PharosCheckbox name="four" checked disabled> - <span slot="label">Disabled & Checked checkbox</span> - </PharosCheckbox> - </div> - <div> - <PharosCheckbox name="five" checked> - <div slot="label"> - <div>Checked checkbox</div> - <div>Multiple lines</div> - </div> - </PharosCheckbox> - </div> - <div> - <PharosCheckbox name="six" invalidated> - <span slot="label">Error checkbox</span> - </PharosCheckbox> - </div> - <div> - <PharosCheckbox name="seven"> - <span slot="label"> - Label with a <PharosLink href="#">link</PharosLink> - </span> - </PharosCheckbox> - </div> - <div> - <PharosCheckbox name="eight" indeterminate> - <span slot="label">Indeterminate checkbox</span> - </PharosCheckbox> - </div> - </div> - ); - }} - </Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return ( - <PharosCheckbox - value="My value" - onChange={(e) => action('Change')(e.target.checked)} - onInput={(e) => action('Input')(e.target.value)} - onClick={(e) => action('Click')(e.target.checked)} - > - <span slot="label">I fire events</span> - </PharosCheckbox> - ); - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - args={{ - required: true, - invalidated: true, - label: 'I am a label', - message: 'This field is required, please make a selection', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# On background - -<Canvas withToolbar> - <Story name="On background"> - {() => { - return ( - <div> - <div className="checkbox-example__container--on-background"> - <PharosCheckbox name="on-background" onBackground> - <span slot="label">Unchecked</span> - </PharosCheckbox> - </div> - <div className="checkbox-example__container--on-background"> - <PharosCheckbox name="on-background" onBackground checked> - <span slot="label">Checked</span> - </PharosCheckbox> - </div> - <div className="checkbox-example__container--on-background"> - <PharosCheckbox name="indeterminate" onBackground indeterminate> - <span slot="label">Indeterminate</span> - </PharosCheckbox> - </div> - </div> - ); - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/checkbox/pharos-checkbox.wc.stories.mdx b/packages/pharos/src/components/checkbox/pharos-checkbox.wc.stories.jsx similarity index 52% rename from packages/pharos/src/components/checkbox/pharos-checkbox.wc.stories.mdx rename to packages/pharos/src/components/checkbox/pharos-checkbox.wc.stories.jsx index 1c98a7166..c11631b86 100644 --- a/packages/pharos/src/components/checkbox/pharos-checkbox.wc.stories.mdx +++ b/packages/pharos/src/components/checkbox/pharos-checkbox.wc.stories.jsx @@ -1,55 +1,37 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; import { html } from 'lit'; import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; -<Meta - title="Forms/Checkbox" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Checkbox - -<GuidelineLink path="checkbox" /> - -export const Template = (args) => { - return html`<pharos-checkbox - ?checked=${args.checked} - ?disabled=${args.disabled} - ?hide-label=${args.hideLabel} - ?required=${args.required} - ?invalidated=${args.invalidated} - .message=${args.message} - > - <span slot="label">${args.label}</span> - </pharos-checkbox>`; +export default { + title: 'Forms/Checkbox', + component: 'pharos-checkbox', + parameters: { + docs: { page: configureDocsPage('checkbox') }, + options: { + selectedPanel: 'addon-controls', + }, + }, }; -<Canvas withToolbar> - <Story - name="Base" - args={{ - checked: false, - disabled: false, - hideLabel: false, - label: 'I am a label', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-checkbox" /> - -# States +export const Base = { + render: (args) => + html`<pharos-checkbox + ?checked=${args.checked} + ?disabled=${args.disabled} + ?hide-label=${args.hideLabel} + ?required=${args.required} + ?invalidated=${args.invalidated} + .message=${args.message} + > + <span slot="label">${args.label}</span> + </pharos-checkbox>`, + args: defaultArgs, +}; -<Canvas withToolbar> - <Story name="States"> - {html` +export const States = { + render: (_) => + html` <div> <pharos-checkbox name="one"><span slot="label">Normal Checkbox</span></pharos-checkbox> </div> @@ -91,55 +73,38 @@ export const Template = (args) => { ><span slot="label">Indeterminate checkbox</span></pharos-checkbox > </div> - `} - </Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return html` - <pharos-checkbox - value="My value" - @change="${(e) => action('Change')(e.target.checked)}" - @input="${(e) => action('Input')(e.target.value)}" - @click="${(e) => action('Click')(e.target.checked)}" - > - <span slot="label">I fire events</span> - </pharos-checkbox> - `; - }} - </Story> -</Canvas> - -# Validity + `, +}; -<Canvas withToolbar> - <Story - name="Validity" - args={{ - required: true, - invalidated: true, - label: 'I am a label', - message: 'This field is required, please make a selection', - }} - > - {Template.bind({})} - </Story> -</Canvas> +export const Events = { + render: (_) => + html` <pharos-checkbox + value="My value" + @change="${(e) => action('Change')(e.target.checked)}" + @input="${(e) => action('Input')(e.target.value)}" + @click="${(e) => action('Click')(e.target.checked)}" + > + <span slot="label">I fire events</span> + </pharos-checkbox>`, + parameters: { + options: { selectedPanel: 'addon-actions' }, + }, +}; -# On background +export const Validity = { + ...Base, + args: { + ...Base.args, + required: true, + invalidated: true, + message: 'This field is required, please make a selection', + }, +}; -<Canvas withToolbar> - <Story name="On background"> - {html` +export const OnBackground = { + name: 'On background', + render: (_) => + html` <div style="background-color: #000000; padding: 1rem;"> <pharos-checkbox name="on-background" on-background> <span slot="label">Unchecked</span> @@ -155,6 +120,5 @@ export const Template = (args) => { <span slot="label">Indeterminate</span> </pharos-checkbox> </div> - `} - </Story> -</Canvas> + `, +}; diff --git a/packages/pharos/src/components/checkbox/storyArgs.ts b/packages/pharos/src/components/checkbox/storyArgs.ts new file mode 100644 index 000000000..5ec782734 --- /dev/null +++ b/packages/pharos/src/components/checkbox/storyArgs.ts @@ -0,0 +1,14 @@ +export const defaultArgs = { + checked: false, + disabled: false, + hideLabel: false, + indeterminate: false, + invalidated: false, + label: 'I am a label', + message: '', + name: '', + onBackground: false, + required: false, + validated: false, + value: '', +}; diff --git a/packages/pharos/src/components/combobox/PharosCombobox.react.stories.jsx b/packages/pharos/src/components/combobox/PharosCombobox.react.stories.jsx new file mode 100644 index 000000000..b40703c9c --- /dev/null +++ b/packages/pharos/src/components/combobox/PharosCombobox.react.stories.jsx @@ -0,0 +1,203 @@ +import { action } from '@storybook/addon-actions'; + +import { PharosButton, PharosCombobox } from '../../react-components'; +import createFormData from '../../utils/createFormData'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Forms/Combobox', + component: PharosCombobox, + parameters: { + docs: { page: configureDocsPage('combobox') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (args) => ( + <PharosCombobox + disabled={args.disabled} + hideLabel={args.hideLabel} + invalidated={args.invalidated} + message={args.message} + name={args.name} + open={args.open} + placeholder={args.placeholder} + required={args.required} + style={{ display: 'grid', gridTemplateColumns: '300px' }} + validated={args.validated} + value={args.value} + > + <span slot="label">{args.label}</span> + <option value="1">New Hampshire</option> + <option value="2">Massachusetts</option> + <option value="3">Connecticut</option> + <option value="4">Rhode Island</option> + <option value="5">New York</option> + <option value="6">New Jersey</option> + <option value="7">Pennsylvania</option> + <option value="8">Delaware</option> + <option value="9">Maryland</option> + <option value="10">Virginia</option> + <option value="11">North Carolina</option> + <option value="12">South Carolina</option> + <option value="13">Georgia</option> + </PharosCombobox> + ), + args: defaultArgs, +}; + +export const States = { + render: (args) => ( + <div + style={{ + display: 'grid', + gridTemplateColumns: 'repeat(1, 250px)', + }} + > + <PharosCombobox + disabled={args.disabled} + hideLabel={args.hideLabel} + open={args.open} + placeholder={args.placeholder} + value={args.value} + > + <span slot="label">You can edit my attributes</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </PharosCombobox> + </div> + ), + args: { + placeholder: 'Enter some text', + }, +}; + +export const Events = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridTemplateColumns: 'repeat(1, 250px)', + }} + > + <PharosCombobox + placeholder="Select a state" + onChange={(e) => action('Change')(e.target.value)} + onInput={(e) => action('Input')(e.target.value)} + > + <span slot="label">Events fire on selection</span> + <option value="NH">New Hampshire</option> + <option value="MA">Massachusetts</option> + <option value="CT">Connecticut</option> + <option value="RI">Rhode Island</option> + <option value="NY">New York</option> + <option value="NJ">New Jersey</option> + <option value="PA">Pennsylvania</option> + <option value="DE">Delaware</option> + <option value="MD">Maryland</option> + <option value="VA">Virginia</option> + <option value="NC">North Carolina</option> + <option value="SC">South Carolina</option> + <option value="GA">Georgia</option> + </PharosCombobox> + </div> + ), + parameters: { + options: { selectedPanel: 'addon-actions' }, + }, +}; + +export const SearchMode = { + render: (_) => ( + <PharosCombobox + placeholder="Search..." + searchMode + style={{ display: 'grid', gridTemplateColumns: '300px' }} + > + <span slot="label">I'm searching for</span> + <option value="1">Bulbasaur</option> + <option value="2">Charmander</option> + <option value="3">Squirtle</option> + <option value="4">Caterpie</option> + <option value="5">Weedle</option> + <option value="6">Pidgey</option> + <option value="7">Rattata</option> + <option value="8">Spearow</option> + <option value="9">Ekans</option> + <option value="10">Pikachu</option> + <option value="11">Sandshrew</option> + <option value="12">Clefairy</option> + </PharosCombobox> + ), +}; + +export const Validity = { + render: (args) => ( + <div style="display: grid; grid-template-columns: 300px;"> + <PharosCombobox + name="my-combobox" + placeholder="Enter some text" + onChange={(e) => action('Change')(e.target.value)} + onInput={(e) => action('Input')(e.target['_input'].value)} + required={args.required} + invalidated={args.invalidated} + validated={args.validated} + message={args.message} + > + <span slot="label">Test me out</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </PharosCombobox> + </div> + ), + args: { + required: true, + invalidated: true, + validated: false, + message: 'This field is required, please make a selection', + }, +}; + +export const FormData = { + render: (_) => ( + <div style={{ display: 'grid', gridTemplateColumns: '300px' }}> + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <PharosCombobox + name="my-combobox" + style={{ marginBottom: '0.5rem' }} + placeholder="Enter some text" + onChange={(e) => action('Change')(e.target.value)} + onInput={(e) => action('Input')(e.target['_input'].value)} + required + > + <span slot="label">Test me out</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </PharosCombobox> + <PharosButton + type="submit" + value="Submit" + onclick={(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }} + > + Submit + </PharosButton> + </form> + </div> + ), +}; diff --git a/packages/pharos/src/components/combobox/PharosCombobox.react.stories.mdx b/packages/pharos/src/components/combobox/PharosCombobox.react.stories.mdx deleted file mode 100644 index 0cb979d54..000000000 --- a/packages/pharos/src/components/combobox/PharosCombobox.react.stories.mdx +++ /dev/null @@ -1,226 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosCombobox } from '../../react-components/combobox/pharos-combobox'; -import { PharosButton } from '../../react-components/button/pharos-button'; -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Combobox" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - component: PharosCombobox, - }} -/> - -# Combobox - -<GuidelineLink path="combobox" /> - -export const Template = (args) => ( - <PharosCombobox - value={args.value} - name={args.name} - placeholder={args.placeholder} - open={args.open} - disabled={args.disabled} - invalidated={args.invalidated} - validated={args.validated} - required={args.required} - message={args.message} - hideLabel={args.hideLabel} - style={{ display: 'grid', gridTemplateColumns: '300px' }} - > - <span slot="label">{args.label}</span> - <option value="1">New Hampshire</option> - <option value="2">Massachusetts</option> - <option value="3">Connecticut</option> - <option value="4">Rhode Island</option> - <option value="5">New York</option> - <option value="6">New Jersey</option> - <option value="7">Pennsylvania</option> - <option value="8">Delaware</option> - <option value="9">Maryland</option> - <option value="10">Virginia</option> - <option value="11">North Carolina</option> - <option value="12">South Carolina</option> - <option value="13">Georgia</option> - </PharosCombobox> -); - -<Canvas withToolbar> - <Story - name="Base" - args={{ - label: 'Combobox Label', - value: '', - name: '', - placeholder: '', - open: false, - invalidated: false, - validated: false, - required: false, - message: '', - hideLabel: false, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosCombobox} /> - -# States - -<Canvas withToolbar> - <Story - name="States" - args={{ - placeholder: 'Enter some text', - open: false, - disabled: false, - value: '', - hideLabel: false, - }} - > - {((args) => ( - <div - style={{ - display: 'grid', - gridTemplateColumns: 'repeat(1, 250px)', - }} - > - <PharosCombobox - placeholder={args.placeholder} - open={args.open} - disabled={args.disabled} - value={args.value} - hideLabel={args.hideLabel} - > - <span slot="label">You can edit my attributes</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </PharosCombobox> - </div> - )).bind({})} - </Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return ( - <div - style={{ - display: 'grid', - gridTemplateColumns: 'repeat(1, 250px)', - }} - > - <PharosCombobox - placeholder="Select a state" - onChange={(e) => action('Change')(e.target.value)} - onInput={(e) => action('Input')(e.target.value)} - > - <span slot="label">Events fire on selection</span> - <option value="NH">New Hampshire</option> - <option value="MA">Massachusetts</option> - <option value="CT">Connecticut</option> - <option value="RI">Rhode Island</option> - <option value="NY">New York</option> - <option value="NJ">New Jersey</option> - <option value="PA">Pennsylvania</option> - <option value="DE">Delaware</option> - <option value="MD">Maryland</option> - <option value="VA">Virginia</option> - <option value="NC">North Carolina</option> - <option value="SC">South Carolina</option> - <option value="GA">Georgia</option> - </PharosCombobox> - </div> - ); - }} - </Story> -</Canvas> - -# Search Mode - -<Canvas withToolbar> - <Story name="Search Mode"> - {() => { - return ( - <PharosCombobox - placeholder="Search..." - searchMode - style={{ display: 'grid', gridTemplateColumns: '300px' }} - > - <span slot="label">I'm searching for</span> - <option value="1">Bulbasaur</option> - <option value="2">Charmander</option> - <option value="3">Squirtle</option> - <option value="4">Caterpie</option> - <option value="5">Weedle</option> - <option value="6">Pidgey</option> - <option value="7">Rattata</option> - <option value="8">Spearow</option> - <option value="9">Ekans</option> - <option value="10">Pikachu</option> - <option value="11">Sandshrew</option> - <option value="12">Clefairy</option> - </PharosCombobox> - ); - }} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - <div style={{ display: 'grid', gridTemplateColumns: '300px' }}> - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <PharosCombobox - name="my-combobox" - style={{ marginBottom: '0.5rem' }} - placeholder="Enter some text" - onChange={(e) => action('Change')(e.target.value)} - onInput={(e) => action('Input')(e.target['_input'].value)} - required - > - <span slot="label">Test me out</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </PharosCombobox> - <PharosButton - type="submit" - value="Submit" - onclick={(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }} - > - Submit - </PharosButton> - </form> - </div> - </Story> -</Canvas> diff --git a/packages/pharos/src/components/combobox/pharos-combobox.wc.stories.jsx b/packages/pharos/src/components/combobox/pharos-combobox.wc.stories.jsx new file mode 100644 index 000000000..5f15c7fe2 --- /dev/null +++ b/packages/pharos/src/components/combobox/pharos-combobox.wc.stories.jsx @@ -0,0 +1,209 @@ +import { html } from 'lit'; +import { action } from '@storybook/addon-actions'; +import { ifDefined } from 'lit/directives/if-defined.js'; + +import createFormData from '../../utils/createFormData'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Forms/Combobox', + component: 'pharos-combobox', + parameters: { + docs: { + page: configureDocsPage('combobox'), + }, + options: { selectedPanel: 'addon-controls' }, + controls: { expanded: true }, + }, +}; + +export const Base = { + render: (args) => + html` + <pharos-combobox + .value=${ifDefined(args.value)} + .name=${ifDefined(args.name)} + ?open=${args.open} + ?disabled=${args.disabled} + ?hide-label=${args.hideLabel} + ?invalidated=${args.invalidated} + ?validated=${args.validated} + .placeholder=${ifDefined(args.placeholder)} + message=${ifDefined(args.message)} + ?required=${args.required} + style="display: grid; grid-template-columns: 300px;" + > + <span slot="label">${args.label}</span> + <option value="1">New Hampshire</option> + <option value="2">Massachusetts</option> + <option value="3">Connecticut</option> + <option value="4">Rhode Island</option> + <option value="5">New York</option> + <option value="6">New Jersey</option> + <option value="7">Pennsylvania</option> + <option value="8">Delaware</option> + <option value="9">Maryland</option> + <option value="10">Virginia</option> + <option value="11">North Carolina</option> + <option value="12">South Carolina</option> + <option value="13">Georgia</option> + </pharos-combobox> + `, + args: defaultArgs, +}; + +export const States = { + render: (_) => + html` + <div style="display: grid; grid-gap: 7rem; grid-template-columns: repeat(2, 300px);"> + <pharos-combobox name="default"> + <span slot="label">I am empty</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </pharos-combobox> + <pharos-combobox name="disabled" disabled> + <span slot="label">I am disabled</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </pharos-combobox> + <pharos-combobox name="placeholder" placeholder="Enter some text"> + <span slot="label">I have a placeholder</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </pharos-combobox> + <pharos-combobox name="provided" value="2"> + <span slot="label">I have a value provided</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </pharos-combobox> + <pharos-combobox name="hidden" hide-label> + <span slot="label">My label is hidden</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </pharos-combobox> + </div> + `, +}; + +export const Events = { + render: (_) => + html` + <div style="display: grid; grid-template-columns: 300px;"> + <pharos-combobox + placeholder="Select a state" + @change="${(e) => action('Change')(e.target.value)}" + @input="${(e) => action('Input')(e.target['_input'].value)}" + > + <span slot="label">Events fire on selection</span> + <option value="NH">New Hampshire</option> + <option value="MA">Massachusetts</option> + <option value="CT">Connecticut</option> + <option value="RI">Rhode Island</option> + <option value="NY">New York</option> + <option value="NJ">New Jersey</option> + <option value="PA">Pennsylvania</option> + <option value="DE">Delaware</option> + <option value="MD">Maryland</option> + <option value="VA">Virginia</option> + <option value="NC">North Carolina</option> + <option value="SC">South Carolina</option> + <option value="GA">Georgia</option> + </pharos-combobox> + </div> + `, + parameters: { + options: { selectedPanel: 'addon-actions' }, + }, +}; + +export const SearchMode = { + render: (_) => + html` + <pharos-combobox + placeholder="Search..." + search-mode + style="display: grid; grid-template-columns: 300px;" + > + <span slot="label">I'm searching for</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </pharos-combobox> + `, +}; + +export const Validity = { + render: (args) => + html` + <div style="display: grid; grid-template-columns: 300px;"> + <pharos-combobox + name="my-combobox" + placeholder="Enter some text" + @change="${(e) => action('Change')(e.target.value)}" + @input="${(e) => action('Input')(e.target['_input'].value)}" + ?required="${args.required}" + ?invalidated="${args.invalidated}" + ?validated="${args.validated}" + message="${args.message}" + > + <span slot="label">Test me out</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </pharos-combobox> + </div> + `, + args: { + required: true, + invalidated: true, + validated: false, + message: 'This field is required, please make a selection', + }, +}; + +export const FormData = { + render: (_) => + html` + <div style="display: grid; grid-template-columns: 300px;"> + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <pharos-combobox + name="my-combobox" + style="margin-bottom: 0.5rem;" + placeholder="Enter some text" + @change="${(e) => action('Change')(e.target.value)}" + @input="${(e) => action('Input')(e.target['_input'].value)}" + required + > + <span slot="label">Test me out</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </pharos-combobox> + <pharos-button + type="submit" + value="Submit" + @click="${(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }}" + > + Submit + </pharos-button> + </form> + </div> + `, +}; diff --git a/packages/pharos/src/components/combobox/pharos-combobox.wc.stories.mdx b/packages/pharos/src/components/combobox/pharos-combobox.wc.stories.mdx deleted file mode 100644 index 1e3e6c616..000000000 --- a/packages/pharos/src/components/combobox/pharos-combobox.wc.stories.mdx +++ /dev/null @@ -1,251 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { action } from '@storybook/addon-actions'; -import { ifDefined } from 'lit/directives/if-defined.js'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Combobox" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - controls: { expanded: true }, - }} -/> - -# Combobox - -<GuidelineLink path="combobox" /> - -export const Template = (args) => - html` - <pharos-combobox - .value=${ifDefined(args.value)} - .name=${ifDefined(args.name)} - ?open=${args.open} - ?disabled=${args.disabled} - ?hide-label=${args.hideLabel} - ?invalidated=${args.invalidated} - ?validated=${args.validated} - .placeholder=${ifDefined(args.placeholder)} - message=${ifDefined(args.message)} - ?required=${args.required} - style="display: grid; grid-template-columns: 300px;" - > - <span slot="label">${args.label}</span> - <option value="1">New Hampshire</option> - <option value="2">Massachusetts</option> - <option value="3">Connecticut</option> - <option value="4">Rhode Island</option> - <option value="5">New York</option> - <option value="6">New Jersey</option> - <option value="7">Pennsylvania</option> - <option value="8">Delaware</option> - <option value="9">Maryland</option> - <option value="10">Virginia</option> - <option value="11">North Carolina</option> - <option value="12">South Carolina</option> - <option value="13">Georgia</option> - </pharos-combobox> - `; - -<Canvas withToolbar> - <Story - name="Base" - args={{ - open: false, - disabled: false, - hideLabel: false, - label: 'Combobox Label', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-combobox" /> - -# States - -<Canvas withToolbar> - <Story name="States"> - {html` - <div style="display: grid; grid-gap: 7rem; grid-template-columns: repeat(2, 300px);"> - <pharos-combobox name="default"> - <span slot="label">I am empty</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </pharos-combobox> - <pharos-combobox name="disabled" disabled> - <span slot="label">I am disabled</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </pharos-combobox> - <pharos-combobox name="placeholder" placeholder="Enter some text"> - <span slot="label">I have a placeholder</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </pharos-combobox> - <pharos-combobox name="provided" value="2"> - <span slot="label">I have a value provided</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </pharos-combobox> - <pharos-combobox name="hidden" hide-label> - <span slot="label">My label is hidden</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </pharos-combobox> - </div> - `} - </Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return html` - <div style="display: grid; grid-template-columns: 300px;"> - <pharos-combobox - placeholder="Select a state" - @change="${(e) => action('Change')(e.target.value)}" - @input="${(e) => action('Input')(e.target['_input'].value)}" - > - <span slot="label">Events fire on selection</span> - <option value="NH">New Hampshire</option> - <option value="MA">Massachusetts</option> - <option value="CT">Connecticut</option> - <option value="RI">Rhode Island</option> - <option value="NY">New York</option> - <option value="NJ">New Jersey</option> - <option value="PA">Pennsylvania</option> - <option value="DE">Delaware</option> - <option value="MD">Maryland</option> - <option value="VA">Virginia</option> - <option value="NC">North Carolina</option> - <option value="SC">South Carolina</option> - <option value="GA">Georgia</option> - </pharos-combobox> - </div> - `; - }} - </Story> -</Canvas> - -# Search Mode - -<Canvas withToolbar> - <Story name="Search Mode"> - {() => { - return html` - <pharos-combobox - placeholder="Search..." - search-mode - style="display: grid; grid-template-columns: 300px;" - > - <span slot="label">I'm searching for</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </pharos-combobox> - `; - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - args={{ - required: true, - invalidated: true, - validated: false, - message: 'This field is required, please make a selection', - }} - > - {((args) => { - return html` - <div style="display: grid; grid-template-columns: 300px;"> - <pharos-combobox - name="my-combobox" - placeholder="Enter some text" - @change="${(e) => action('Change')(e.target.value)}" - @input="${(e) => action('Input')(e.target['_input'].value)}" - ?required="${args.required}" - ?invalidated="${args.invalidated}" - ?validated="${args.validated}" - message="${args.message}" - > - <span slot="label">Test me out</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </pharos-combobox> - </div> - `; - }).bind({})} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - {() => { - return html` - <div style="display: grid; grid-template-columns: 300px;"> - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <pharos-combobox - name="my-combobox" - style="margin-bottom: 0.5rem;" - placeholder="Enter some text" - @change="${(e) => action('Change')(e.target.value)}" - @input="${(e) => action('Input')(e.target['_input'].value)}" - required - > - <span slot="label">Test me out</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </pharos-combobox> - <pharos-button - type="submit" - value="Submit" - @click="${(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }}" - > - Submit - </pharos-button> - </form> - </div> - `; - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/combobox/storyArgs.ts b/packages/pharos/src/components/combobox/storyArgs.ts new file mode 100644 index 000000000..be243c842 --- /dev/null +++ b/packages/pharos/src/components/combobox/storyArgs.ts @@ -0,0 +1,13 @@ +export const defaultArgs = { + disabled: false, + hideLabel: false, + invalidated: false, + label: 'Combobox Label', + message: '', + name: '', + open: false, + placeholder: '', + required: false, + validated: false, + value: '', +}; diff --git a/packages/pharos/src/components/dropdown-menu-nav/PharosDropdownMenuNav.react.stories.mdx b/packages/pharos/src/components/dropdown-menu-nav/PharosDropdownMenuNav.react.stories.jsx similarity index 63% rename from packages/pharos/src/components/dropdown-menu-nav/PharosDropdownMenuNav.react.stories.mdx rename to packages/pharos/src/components/dropdown-menu-nav/PharosDropdownMenuNav.react.stories.jsx index f2179959c..71cab15c0 100644 --- a/packages/pharos/src/components/dropdown-menu-nav/PharosDropdownMenuNav.react.stories.mdx +++ b/packages/pharos/src/components/dropdown-menu-nav/PharosDropdownMenuNav.react.stories.jsx @@ -1,19 +1,26 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; +import { + PharosDropdownMenu, + PharosDropdownMenuItem, + PharosDropdownMenuNav, + PharosDropdownMenuNavLink, +} from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; -import { PharosDropdownMenuNav } from '../../react-components/dropdown-menu-nav/pharos-dropdown-menu-nav'; -import { PharosDropdownMenuNavLink } from '../../react-components/dropdown-menu-nav/pharos-dropdown-menu-nav-link'; -import { PharosDropdownMenu } from '../../react-components/dropdown-menu/pharos-dropdown-menu'; -import { PharosDropdownMenuItem } from '../../react-components/dropdown-menu/pharos-dropdown-menu-item'; +export default { + title: 'Components/Dropdown Menu Nav', + component: PharosDropdownMenuNav, + subcomponents: { + PharosDropdownMenuNavLink, + PharosDropdownMenu, + PharosDropdownMenuItem, + }, + parameters: { + docs: { page: configureDocsPage('dropdown-menu-nav') }, + }, +}; -<Meta title="Components/Dropdown Menu Nav" /> - -# Dropdown Menu Nav - -<GuidelineLink path="dropdown-menu-nav" /> - -<Canvas> - <Story name="Base"> +export const Base = { + render: (_) => ( <PharosDropdownMenuNav> <PharosDropdownMenuNavLink href="#" @@ -48,9 +55,5 @@ import { PharosDropdownMenuItem } from '../../react-components/dropdown-menu/pha Link </PharosDropdownMenuNavLink> </PharosDropdownMenuNav> - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosDropdownMenuNav} /> + ), +}; diff --git a/packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.jsx b/packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.jsx new file mode 100644 index 000000000..567d588af --- /dev/null +++ b/packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.jsx @@ -0,0 +1,55 @@ +import { html } from 'lit'; + +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Dropdown Menu Nav', + component: 'pharos-dropdown-menu-nav', + subcomponents: { + PharosDropdownMenuNavLink: 'pharos-dropdown-menu-nav-link', + PharosDropdownMenu: 'pharos-dropdown-menu', + PharosDropdownMenuItem: 'pharos-dropdown-menu-item', + }, + parameters: { + docs: { page: configureDocsPage('dropdown-menu-nav') }, + }, +}; + +export const Base = { + render: (_) => + html` + <pharos-dropdown-menu-nav> + <pharos-dropdown-menu-nav-link + href="#" + id="category1-link" + data-dropdown-menu-id="category1-menu" + data-dropdown-menu-hover + target="_blank" + >Category 1</pharos-dropdown-menu-nav-link + > + <pharos-dropdown-menu id="category1-menu" data-dropdown-menu-hover> + <pharos-dropdown-menu-item>Item 1.1</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 1.2</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 1.3</pharos-dropdown-menu-item> + </pharos-dropdown-menu> + <pharos-dropdown-menu-nav-link + href="#" + id="category2-link" + data-dropdown-menu-id="category2-menu" + data-dropdown-menu-hover + target="_blank" + >Category 2</pharos-dropdown-menu-nav-link + > + <pharos-dropdown-menu id="category2-menu"> + <pharos-dropdown-menu-item>Item 2.1</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 2.2</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 2.3</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 2.4</pharos-dropdown-menu-item> + </pharos-dropdown-menu> + <pharos-dropdown-menu-nav-link href="#" id="other-link" target="_blank" + >Link</pharos-dropdown-menu-nav-link + > + </pharos-dropdown-menu-nav> + `, + parameters: { chromatic: { viewports: [320, 1200] } }, +}; diff --git a/packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.mdx b/packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.mdx deleted file mode 100644 index bd8768d5e..000000000 --- a/packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.mdx +++ /dev/null @@ -1,54 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta title="Components/Dropdown Menu Nav" /> - -# Dropdown Menu Nav - -<GuidelineLink path="dropdown-menu-nav" /> - -<Canvas> - <Story name="Base" parameters={{ chromatic: { viewports: [320, 1200] } }}> - {() => { - return html` - <pharos-dropdown-menu-nav> - <pharos-dropdown-menu-nav-link - href="#" - id="category1-link" - data-dropdown-menu-id="category1-menu" - data-dropdown-menu-hover - target="_blank" - >Category 1</pharos-dropdown-menu-nav-link - > - <pharos-dropdown-menu id="category1-menu" data-dropdown-menu-hover> - <pharos-dropdown-menu-item>Item 1.1</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 1.2</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 1.3</pharos-dropdown-menu-item> - </pharos-dropdown-menu> - <pharos-dropdown-menu-nav-link - href="#" - id="category2-link" - data-dropdown-menu-id="category2-menu" - data-dropdown-menu-hover - target="_blank" - >Category 2</pharos-dropdown-menu-nav-link - > - <pharos-dropdown-menu id="category2-menu"> - <pharos-dropdown-menu-item>Item 2.1</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 2.2</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 2.3</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 2.4</pharos-dropdown-menu-item> - </pharos-dropdown-menu> - <pharos-dropdown-menu-nav-link href="#" id="other-link" target="_blank" - >Link</pharos-dropdown-menu-nav-link - > - </pharos-dropdown-menu-nav> - `; - }} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-dropdown-menu-nav" /> diff --git a/packages/pharos/src/components/dropdown-menu/PharosDropdownMenu.react.stories.mdx b/packages/pharos/src/components/dropdown-menu/PharosDropdownMenu.react.stories.jsx similarity index 85% rename from packages/pharos/src/components/dropdown-menu/PharosDropdownMenu.react.stories.mdx rename to packages/pharos/src/components/dropdown-menu/PharosDropdownMenu.react.stories.jsx index 96ec22da6..e9eada819 100644 --- a/packages/pharos/src/components/dropdown-menu/PharosDropdownMenu.react.stories.mdx +++ b/packages/pharos/src/components/dropdown-menu/PharosDropdownMenu.react.stories.jsx @@ -1,28 +1,28 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; -import { PharosDropdownMenu } from '../../react-components/dropdown-menu/pharos-dropdown-menu'; -import { PharosDropdownMenuItem } from '../../react-components/dropdown-menu/pharos-dropdown-menu-item'; -import { PharosHeading } from '../../react-components/heading/pharos-heading'; -import { PharosTextInput } from '../../react-components/text-input/pharos-text-input'; -import { PharosLink } from '../../react-components/link/pharos-link'; -import { PharosButton } from '../../react-components/button/pharos-button'; +import { + PharosDropdownMenu, + PharosDropdownMenuItem, + PharosHeading, + PharosTextInput, + PharosLink, + PharosButton, +} from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; -<Meta - title="Components/Dropdown Menu" - parameters={{ +export default { + title: 'Components/Dropdown Menu', + component: PharosDropdownMenu, + subcomponents: { PharosDropdownMenuItem }, + parameters: { + docs: { page: configureDocsPage('dropdown-menu') }, options: { selectedPanel: 'addon-controls' }, - component: PharosDropdownMenu, - }} -/> + chromatic: { delay: 800 }, + }, +}; -# Dropdown Menu - -<GuidelineLink path="dropdown-menu" /> - -<Canvas withToolbar> - <Story name="Base"> +export const Base = { + render: (_) => ( <div style={{ display: 'grid', @@ -38,28 +38,11 @@ import { PharosButton } from '../../react-components/button/pharos-button'; <PharosDropdownMenuItem>Menu item 3</PharosDropdownMenuItem> </PharosDropdownMenu> </div> - </Story> -</Canvas> - -## API - -### PharosDropdownMenu - -<ArgsTable of={PharosDropdownMenu} /> - -### PharosDropdownMenuItem - -<ArgsTable of={PharosDropdownMenuItem} /> - -# Events + ), +}; -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > +export const Events = { + render: (_) => ( <div style={{ display: 'grid', @@ -82,13 +65,14 @@ import { PharosButton } from '../../react-components/button/pharos-button'; <PharosDropdownMenuItem>Menu item 3</PharosDropdownMenuItem> </PharosDropdownMenu> </div> - </Story> -</Canvas> + ), + parameters: { + options: { selectedPanel: 'addon-actions' }, + }, +}; -# Icons - -<Canvas> - <Story name="Icons"> +export const Icons = { + render: (_) => ( <div style={{ display: 'grid', @@ -112,13 +96,11 @@ import { PharosButton } from '../../react-components/button/pharos-button'; <PharosDropdownMenuItem icon="image">Item three</PharosDropdownMenuItem> </PharosDropdownMenu> </div> - </Story> -</Canvas> - -# Descriptions + ), +}; -<Canvas> - <Story name="Descriptions"> +export const Descriptions = { + render: (_) => ( <div style={{ display: 'grid', @@ -153,13 +135,11 @@ import { PharosButton } from '../../react-components/button/pharos-button'; </PharosDropdownMenuItem> </PharosDropdownMenu> </div> - </Story> -</Canvas> + ), +}; -# Full Width - -<Canvas> - <Story name="Full Width"> +export const FullWidth = { + render: (_) => ( <div style={{ display: 'grid', @@ -187,13 +167,11 @@ import { PharosButton } from '../../react-components/button/pharos-button'; </PharosDropdownMenuItem> </PharosDropdownMenu> </div> - </Story> -</Canvas> - -# Links + ), +}; -<Canvas> - <Story name="Links"> +export const Links = { + render: (_) => ( <div style={{ display: 'grid', @@ -223,13 +201,11 @@ import { PharosButton } from '../../react-components/button/pharos-button'; </PharosDropdownMenuItem> </PharosDropdownMenu> </div> - </Story> -</Canvas> + ), +}; -# Multiple Triggers - -<Canvas> - <Story name="Multiple Triggers"> +export const MultipleTriggers = { + render: (_) => ( <div style={{ display: 'grid', @@ -260,13 +236,11 @@ import { PharosButton } from '../../react-components/button/pharos-button'; Click Me Too </PharosButton> </div> - </Story> -</Canvas> - -# Multiple Dynamic Triggers + ), +}; -<Canvas> - <Story name="Multiple Dynamic Triggers"> +export const MultipleDynamicTriggers = { + render: (_) => ( <div style={{ display: 'grid', @@ -309,13 +283,11 @@ import { PharosButton } from '../../react-components/button/pharos-button'; Three </PharosButton> </div> - </Story> -</Canvas> + ), +}; -# Composition - -<Canvas> - <Story name="Composition"> +export const Composition = { + render: (_) => ( <div style={{ display: 'grid', @@ -394,13 +366,11 @@ import { PharosButton } from '../../react-components/button/pharos-button'; </div> </PharosDropdownMenu> </div> - </Story> -</Canvas> - -# Coordinating Dropdowns + ), +}; -<Canvas> - <Story name="Coordinating Dropdowns"> +export const CoordinatingDropdowns = { + render: (_) => ( <div style={{ display: 'grid', @@ -439,5 +409,5 @@ import { PharosButton } from '../../react-components/button/pharos-button'; <PharosDropdownMenuItem>dropdown!</PharosDropdownMenuItem> </PharosDropdownMenu> </div> - </Story> -</Canvas> + ), +}; diff --git a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.ts b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.ts index 65c48e89b..a04fb6926 100644 --- a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.ts +++ b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.ts @@ -342,11 +342,7 @@ export class PharosDropdownMenu extends ScopedRegistryMixin(FocusMixin(OverlayEl } private _setOpen(): void { - if (this._hasHover) { - this.open = true; - } else { - this.open = false; - } + this.open = this._hasHover; } private _handleHover(event: MouseEvent): void { @@ -430,11 +426,7 @@ export class PharosDropdownMenu extends ScopedRegistryMixin(FocusMixin(OverlayEl debounce(() => { items.forEach((item) => { - if (item === clickedItem) { - item.selected = true; - } else { - item.selected = false; - } + item.selected = item === clickedItem; }); }, 150)(); } @@ -545,10 +537,7 @@ export class PharosDropdownMenu extends ScopedRegistryMixin(FocusMixin(OverlayEl ); items.forEach((item, index) => { - item['_last'] = false; - if (index === items.length - 1) { - item['_last'] = true; - } + item['_last'] = index === items.length - 1; }); } diff --git a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.jsx b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.jsx new file mode 100644 index 000000000..20aa450e6 --- /dev/null +++ b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.jsx @@ -0,0 +1,382 @@ +import { action } from '@storybook/addon-actions'; +import { useEffect } from '@storybook/client-api'; +import { html } from 'lit'; + +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Components/Dropdown Menu', + component: 'pharos-dropdown-menu', + subcomponents: { PharosDropdownMenuItem: 'pharos-dropdown-menu-item' }, + parameters: { + docs: { page: configureDocsPage('dropdown-menu') }, + options: { selectedPanel: 'addon-controls' }, + chromatic: { delay: 800 }, + }, +}; + +export const Base = { + render: (_) => + html` + <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> + <pharos-button id="my-button" data-dropdown-menu-id="my-menu" icon-right="chevron-down" + >Click Me</pharos-button + > + <pharos-dropdown-menu id="my-menu"> + <pharos-dropdown-menu-item>Menu item 1</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Menu item 2</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Menu item 3</pharos-dropdown-menu-item> + </pharos-dropdown-menu> + </div> + `, + args: defaultArgs, +}; + +export const Events = { + render: (_) => + html` + <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> + <pharos-button + id="my-button-events" + data-dropdown-menu-id="my-menu-events" + icon-right="chevron-down" + > + Click Me + </pharos-button> + <pharos-dropdown-menu + id="my-menu-events" + show-selected + @pharos-dropdown-menu-select="${(e) => action('Select')(e.detail)}" + @pharos-dropdown-menu-selected="${(e) => action('Selected')(e.detail)}" + > + <pharos-dropdown-menu-item>Menu item 1</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Menu item 2</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Menu item 3</pharos-dropdown-menu-item> + </pharos-dropdown-menu> + </div> + `, + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Icons = { + render: (_) => { + const effect = () => { + useEffect(() => { + setTimeout(() => { + document.querySelector('#my-button-icons').click(); + }, 700); + }); + }; + effect(); + return html` + <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> + <pharos-button + id="my-button-icons" + data-dropdown-menu-id="my-menu-icons" + icon-right="chevron-down" + > + With icons + </pharos-button> + <pharos-dropdown-menu id="my-menu-icons" show-selected> + <pharos-dropdown-menu-item icon="view-gallery">Item one</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item icon="view-list" selected>Item two</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item icon="image">Item three</pharos-dropdown-menu-item> + </pharos-dropdown-menu> + </div> + `; + }, +}; + +export const Descriptions = { + render: (_) => { + const effect = () => { + useEffect(() => { + setTimeout(() => { + document.querySelector('#my-button-descriptions').click(); + }, 700); + }); + }; + effect(); + return html` + <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> + <pharos-button + id="my-button-descriptions" + data-dropdown-menu-id="my-menu-descriptions" + icon-right="chevron-down" + > + With descriptions + </pharos-button> + <pharos-dropdown-menu id="my-menu-descriptions" show-selected> + <pharos-dropdown-menu-item selected> + Item 1 + <span slot="description">Description for item 1</span> + </pharos-dropdown-menu-item> + <pharos-dropdown-menu-item> + Item 2 + <span slot="description">Description for item 2</span> + </pharos-dropdown-menu-item> + <pharos-dropdown-menu-item> + Item 3 + <span slot="description">Description for item 3</span> + </pharos-dropdown-menu-item> + <pharos-dropdown-menu-item> + Item 4 + <span slot="description">Description for item 4</span> + </pharos-dropdown-menu-item> + <pharos-dropdown-menu-item disabled> + Disabled + <span slot="description">This item has been disabled</span> + </pharos-dropdown-menu-item> + </pharos-dropdown-menu> + </div> + `; + }, +}; + +export const FullWidth = { + render: (_) => { + const effect = () => { + useEffect(() => { + setTimeout(() => { + document.querySelector('#my-button-full').click(); + }, 700); + }); + }; + effect(); + return html` + <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> + <pharos-button + id="my-button-full" + data-dropdown-menu-id="my-menu-full" + icon-right="chevron-down" + > + With attribute full-width to match the width of the trigger + </pharos-button> + <pharos-dropdown-menu id="my-menu-full" full-width> + <pharos-dropdown-menu-item> + Use full-width to display lengthy text + </pharos-dropdown-menu-item> + <pharos-dropdown-menu-item> + <span style="white-space: normal"> + Even if longer text is placed in the item, it will span multiple lines to keep the + width of the item the same size as the trigger + </span> + </pharos-dropdown-menu-item> + </pharos-dropdown-menu> + </div> + `; + }, +}; + +export const Links = { + render: (_) => { + const effect = () => { + useEffect(() => { + setTimeout(() => { + document.querySelector('#my-link').dispatchEvent(new Event('mouseenter')); + }, 700); + }); + }; + effect(); + return html` + <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> + <pharos-link + id="my-link" + href="https://www.google.com/" + target="_blank" + data-dropdown-menu-id="my-menu-links" + data-dropdown-menu-hover + > + With links + </pharos-link> + <pharos-dropdown-menu id="my-menu-links"> + <pharos-dropdown-menu-item + link="https://www.youtube.com/watch?v=gkTb9GP9lVI" + target="_blank" + >Menu item 1</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item + link="https://www.youtube.com/watch?v=ZXsQAXx_ao0" + target="_blank" + >Menu item 2</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item + link="https://www.youtube.com/watch?v=dQw4w9WgXcQ" + target="_blank" + >Menu item 3</pharos-dropdown-menu-item + > + </pharos-dropdown-menu> + </div> + `; + }, +}; + +export const MultipleTriggers = { + render: (_) => + html` + <div + style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" + > + <pharos-button data-dropdown-menu-id="my-menu-multiple" icon-right="chevron-down"> + Click Me + </pharos-button> + <pharos-dropdown-menu id="my-menu-multiple"> + <pharos-dropdown-menu-item>Item 1</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 2</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 3</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 4</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 5</pharos-dropdown-menu-item> + </pharos-dropdown-menu> + <pharos-button + data-dropdown-menu-id="my-menu-multiple" + data-dropdown-menu-hover + icon-right="chevron-down" + > + Hover here + </pharos-button> + <pharos-button data-dropdown-menu-id="my-menu-multiple" icon-right="chevron-down"> + Click Me Too + </pharos-button> + </div> + `, +}; + +export const MultipleDynamicTriggers = { + render: (_) => + html` + <div + style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" + > + <pharos-dropdown-menu id="my-menu-multiple-dynamic-triggers"> + <pharos-dropdown-menu-item>Item 1</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 2</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 3</pharos-dropdown-menu-item> + </pharos-dropdown-menu> + <pharos-button + @click="${(e) => { + const trigger = e.target; + const menu = document.querySelector('#my-menu-multiple-dynamic-triggers'); + menu.openWithTrigger(trigger); + }}" + > + One + </pharos-button> + <pharos-button + @click="${(e) => { + const trigger = e.target; + const menu = document.querySelector('#my-menu-multiple-dynamic-triggers'); + menu.openWithTrigger(trigger); + }}" + > + Two + </pharos-button> + <pharos-button + @click="${(e) => { + const trigger = e.target; + const menu = document.querySelector('#my-menu-multiple-dynamic-triggers'); + menu.openWithTrigger(trigger); + }}" + > + Three + </pharos-button> + </div> + `, +}; + +export const Composition = { + render: (_) => { + const effect = () => { + useEffect(() => { + setTimeout(() => { + document.querySelector('#my-button-composition').click(); + }, 700); + }); + }; + effect(); + return html` + <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> + <pharos-button + id="my-button-composition" + data-dropdown-menu-id="my-menu-composition" + icon-right="chevron-down" + > + Save + </pharos-button> + <pharos-dropdown-menu id="my-menu-composition"> + <div + style="padding: 1rem; padding-bottom: 0.5rem; border-bottom: 1px solid var(--pharos-dropdown-menu-item-color-border-base)" + > + <pharos-heading level="1" preset="2">Save to...</pharos-heading> + </div> + <pharos-dropdown-menu-item>Workspace</pharos-dropdown-menu-item> + <div style="margin: 0.5rem 1rem; display: flex; flex-grow: 1; flex-direction: column;"> + <pharos-text-input hide-label placeholder="New folder name" style="margin: 0.5rem 0" + ><span slot="label">My label is hidden</span></pharos-text-input + > + <div style="display: flex; align-items: center;"> + <pharos-button + type="button" + style="margin-right: auto" + @click="${() => { + const menu = document.querySelector('pharos-dropdown-menu'); + menu.open = false; + }}" + > + Create + </pharos-button> + <pharos-button + type="button" + variant="secondary" + style="margin-left: auto" + @click="${() => { + const menu = document.querySelector('pharos-dropdown-menu'); + menu.open = false; + }}" + > + Cancel + </pharos-button> + </div> + </div> + </pharos-dropdown-menu> + </div> + `; + }, +}; + +export const CoordinatingDropdowns = { + render: (_) => + html` + <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> + <pharos-button + id="coordinating-dropdown-trigger-button" + data-dropdown-menu-id="first-dropdown" + > + Click Me + </pharos-button> + <pharos-dropdown-menu + id="first-dropdown" + @pharos-dropdown-menu-selected="${() => { + const triggerElement = document.querySelector('#coordinating-dropdown-trigger-button'); + const secondDropdown = document.querySelector('#second-dropdown'); + secondDropdown.openWithTrigger(triggerElement); + }}" + > + <pharos-dropdown-menu-item>Click</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>any of these</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>options</pharos-dropdown-menu-item> + </pharos-dropdown-menu> + <pharos-dropdown-menu + id="second-dropdown" + @pharos-dropdown-menu-closed="${() => { + const secondDropdown = document.querySelector('#second-dropdown'); + secondDropdown.removeAllTriggers(); + }}" + > + <pharos-dropdown-menu-item>I am</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>a new</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>dropdown!</pharos-dropdown-menu-item> + </pharos-dropdown-menu> + </div> + `, +}; diff --git a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.mdx b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.mdx deleted file mode 100644 index ce1193107..000000000 --- a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.mdx +++ /dev/null @@ -1,440 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { useEffect } from '@storybook/client-api'; -import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta - title="Components/Dropdown Menu" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - chromatic: { delay: 800 }, - }} -/> - -# Dropdown Menu - -<GuidelineLink path="dropdown-menu" /> - -<Canvas> - <Story name="Base"> - {html` - <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> - <pharos-button id="my-button" data-dropdown-menu-id="my-menu" icon-right="chevron-down" - >Click Me</pharos-button - > - <pharos-dropdown-menu id="my-menu"> - <pharos-dropdown-menu-item>Menu item 1</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Menu item 2</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Menu item 3</pharos-dropdown-menu-item> - </pharos-dropdown-menu> - </div> - `} - </Story> -</Canvas> - -## API - -### pharos-dropdown-menu - -<ArgsTable of="pharos-dropdown-menu" /> - -### pharos-dropdown-menu-item - -<ArgsTable of="pharos-dropdown-menu-item" /> - -# Events - -<Canvas> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {html` - <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> - <pharos-button - id="my-button-events" - data-dropdown-menu-id="my-menu-events" - icon-right="chevron-down" - > - Click Me - </pharos-button> - <pharos-dropdown-menu - id="my-menu-events" - show-selected - @pharos-dropdown-menu-select="${(e) => action('Select')(e.detail)}" - @pharos-dropdown-menu-selected="${(e) => action('Selected')(e.detail)}" - > - <pharos-dropdown-menu-item>Menu item 1</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Menu item 2</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Menu item 3</pharos-dropdown-menu-item> - </pharos-dropdown-menu> - </div> - `} - </Story> -</Canvas> - -# Icons - -<Canvas> - <Story name="Icons"> - {() => { - const effect = () => { - useEffect(() => { - setTimeout(() => { - document.querySelector('#my-button-icons').click(); - }, 700); - }); - }; - effect(); - return html` - <div - style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" - > - <pharos-button - id="my-button-icons" - data-dropdown-menu-id="my-menu-icons" - icon-right="chevron-down" - > - With icons - </pharos-button> - <pharos-dropdown-menu id="my-menu-icons" show-selected> - <pharos-dropdown-menu-item icon="view-gallery">Item one</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item icon="view-list" selected - >Item two</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item icon="image">Item three</pharos-dropdown-menu-item> - </pharos-dropdown-menu> - </div> - `; - }} - </Story> -</Canvas> - -# Descriptions - -<Canvas> - <Story name="Descriptions"> - {() => { - const effect = () => { - useEffect(() => { - setTimeout(() => { - document.querySelector('#my-button-descriptions').click(); - }, 700); - }); - }; - effect(); - return html` - <div - style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" - > - <pharos-button - id="my-button-descriptions" - data-dropdown-menu-id="my-menu-descriptions" - icon-right="chevron-down" - > - With descriptions - </pharos-button> - <pharos-dropdown-menu id="my-menu-descriptions" show-selected> - <pharos-dropdown-menu-item selected> - Item 1 - <span slot="description">Description for item 1</span> - </pharos-dropdown-menu-item> - <pharos-dropdown-menu-item> - Item 2 - <span slot="description">Description for item 2</span> - </pharos-dropdown-menu-item> - <pharos-dropdown-menu-item> - Item 3 - <span slot="description">Description for item 3</span> - </pharos-dropdown-menu-item> - <pharos-dropdown-menu-item> - Item 4 - <span slot="description">Description for item 4</span> - </pharos-dropdown-menu-item> - <pharos-dropdown-menu-item disabled> - Disabled - <span slot="description">This item has been disabled</span> - </pharos-dropdown-menu-item> - </pharos-dropdown-menu> - </div> - `; - }} - </Story> -</Canvas> - -# Full Width - -<Canvas> - <Story name="Full Width"> - {() => { - const effect = () => { - useEffect(() => { - setTimeout(() => { - document.querySelector('#my-button-full').click(); - }, 700); - }); - }; - effect(); - return html` - <div - style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" - > - <pharos-button - id="my-button-full" - data-dropdown-menu-id="my-menu-full" - icon-right="chevron-down" - > - With attribute full-width to match the width of the trigger - </pharos-button> - <pharos-dropdown-menu id="my-menu-full" full-width> - <pharos-dropdown-menu-item> - Use full-width to display lengthy text - </pharos-dropdown-menu-item> - <pharos-dropdown-menu-item> - <span style="white-space: normal"> - Even if longer text is placed in the item, it will span multiple lines to keep the - width of the item the same size as the trigger - </span> - </pharos-dropdown-menu-item> - </pharos-dropdown-menu> - </div> - `; - }} - </Story> -</Canvas> - -# Links - -<Canvas> - <Story name="Links"> - {() => { - const effect = () => { - useEffect(() => { - setTimeout(() => { - document.querySelector('#my-link').dispatchEvent(new Event('mouseenter')); - }, 700); - }); - }; - effect(); - return html` - <div - style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" - > - <pharos-link - id="my-link" - href="https://www.google.com/" - target="_blank" - data-dropdown-menu-id="my-menu-links" - data-dropdown-menu-hover - > - With links - </pharos-link> - <pharos-dropdown-menu id="my-menu-links"> - <pharos-dropdown-menu-item - link="https://www.youtube.com/watch?v=gkTb9GP9lVI" - target="_blank" - >Menu item 1</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item - link="https://www.youtube.com/watch?v=ZXsQAXx_ao0" - target="_blank" - >Menu item 2</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item - link="https://www.youtube.com/watch?v=dQw4w9WgXcQ" - target="_blank" - >Menu item 3</pharos-dropdown-menu-item - > - </pharos-dropdown-menu> - </div> - `; - }} - </Story> -</Canvas> - -# Multiple Triggers - -<Canvas> - <Story name="Multiple Triggers"> - {html` - <div - style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" - > - <pharos-button data-dropdown-menu-id="my-menu-multiple" icon-right="chevron-down"> - Click Me - </pharos-button> - <pharos-dropdown-menu id="my-menu-multiple"> - <pharos-dropdown-menu-item>Item 1</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 2</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 3</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 4</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 5</pharos-dropdown-menu-item> - </pharos-dropdown-menu> - <pharos-button - data-dropdown-menu-id="my-menu-multiple" - data-dropdown-menu-hover - icon-right="chevron-down" - > - Hover here - </pharos-button> - <pharos-button data-dropdown-menu-id="my-menu-multiple" icon-right="chevron-down"> - Click Me Too - </pharos-button> - </div> - `} - </Story> -</Canvas> - -# Multiple Dynamic Triggers - -<Canvas> - <Story name="Multiple Dynamic Triggers"> - {html` - <div - style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" - > - <pharos-dropdown-menu id="my-menu-multiple-dynamic-triggers"> - <pharos-dropdown-menu-item>Item 1</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 2</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 3</pharos-dropdown-menu-item> - </pharos-dropdown-menu> - <pharos-button - @click="${(e) => { - const trigger = e.target; - const menu = document.querySelector('#my-menu-multiple-dynamic-triggers'); - menu.openWithTrigger(trigger); - }}" - > - One - </pharos-button> - <pharos-button - @click="${(e) => { - const trigger = e.target; - const menu = document.querySelector('#my-menu-multiple-dynamic-triggers'); - menu.openWithTrigger(trigger); - }}" - > - Two - </pharos-button> - <pharos-button - @click="${(e) => { - const trigger = e.target; - const menu = document.querySelector('#my-menu-multiple-dynamic-triggers'); - menu.openWithTrigger(trigger); - }}" - > - Three - </pharos-button> - </div> - `} - </Story> -</Canvas> - -# Composition - -<Canvas> - <Story name="Composition"> - {() => { - const effect = () => { - useEffect(() => { - setTimeout(() => { - document.querySelector('#my-button-composition').click(); - }, 700); - }); - }; - effect(); - return html` - <div - style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" - > - <pharos-button - id="my-button-composition" - data-dropdown-menu-id="my-menu-composition" - icon-right="chevron-down" - > - Save - </pharos-button> - <pharos-dropdown-menu id="my-menu-composition"> - <div - style="padding: 1rem; padding-bottom: 0.5rem; border-bottom: 1px solid var(--pharos-dropdown-menu-item-color-border-base)" - > - <pharos-heading level="1" preset="2">Save to...</pharos-heading> - </div> - <pharos-dropdown-menu-item>Workspace</pharos-dropdown-menu-item> - <div style="margin: 0.5rem 1rem; display: flex; flex-grow: 1; flex-direction: column;"> - <pharos-text-input hide-label placeholder="New folder name" style="margin: 0.5rem 0" - ><span slot="label">My label is hidden</span></pharos-text-input - > - <div style="display: flex; align-items: center;"> - <pharos-button - type="button" - style="margin-right: auto" - @click="${() => { - const menu = document.querySelector('pharos-dropdown-menu'); - menu.open = false; - }}" - > - Create - </pharos-button> - <pharos-button - type="button" - variant="secondary" - style="margin-left: auto" - @click="${() => { - const menu = document.querySelector('pharos-dropdown-menu'); - menu.open = false; - }}" - > - Cancel - </pharos-button> - </div> - </div> - </pharos-dropdown-menu> - </div> - `; - }} - </Story> -</Canvas> - -# Coordinating Dropdowns - -<Canvas> - <Story name="Coordinating Dropdowns"> - {html` - <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> - <pharos-button - id="coordinating-dropdown-trigger-button" - data-dropdown-menu-id="first-dropdown" - > - Click Me - </pharos-button> - <pharos-dropdown-menu - id="first-dropdown" - @pharos-dropdown-menu-selected="${() => { - const triggerElement = document.querySelector('#coordinating-dropdown-trigger-button'); - const secondDropdown = document.querySelector('#second-dropdown'); - secondDropdown.openWithTrigger(triggerElement); - }}" - > - <pharos-dropdown-menu-item>Click</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>any of these</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>options</pharos-dropdown-menu-item> - </pharos-dropdown-menu> - <pharos-dropdown-menu - id="second-dropdown" - @pharos-dropdown-menu-closed="${() => { - const secondDropdown = document.querySelector('#second-dropdown'); - secondDropdown.removeAllTriggers(); - }}" - > - <pharos-dropdown-menu-item>I am</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>a new</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>dropdown!</pharos-dropdown-menu-item> - </pharos-dropdown-menu> - </div> - `} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/dropdown-menu/storyArgs.ts b/packages/pharos/src/components/dropdown-menu/storyArgs.ts new file mode 100644 index 000000000..22b6a9945 --- /dev/null +++ b/packages/pharos/src/components/dropdown-menu/storyArgs.ts @@ -0,0 +1,5 @@ +export const defaultArgs = { + open: false, + showSelected: false, + fullWidth: false, +}; diff --git a/packages/pharos/src/components/footer/PharosFooter.react.stories.jsx b/packages/pharos/src/components/footer/PharosFooter.react.stories.jsx new file mode 100644 index 000000000..42e372ac8 --- /dev/null +++ b/packages/pharos/src/components/footer/PharosFooter.react.stories.jsx @@ -0,0 +1,19 @@ +import { Footer } from '../../pages/shared/react/Footer'; +import { PharosFooter } from '../../../lib/react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Organisms/Footer', + component: PharosFooter, + parameters: { + docs: { page: configureDocsPage('footer') }, + layout: 'fullscreen', + }, +}; + +export const Base = { + render: (_) => <Footer />, + parameters: { + chromatic: { viewports: [320, 1024, 1200] }, + }, +}; diff --git a/packages/pharos/src/components/footer/PharosFooter.react.stories.mdx b/packages/pharos/src/components/footer/PharosFooter.react.stories.mdx deleted file mode 100644 index 003e7861f..000000000 --- a/packages/pharos/src/components/footer/PharosFooter.react.stories.mdx +++ /dev/null @@ -1,29 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosFooter } from '../../react-components/footer/pharos-footer'; -import { Footer } from '../../pages/shared/react/Footer'; - -<Meta - title="Organisms/Footer" - parameters={{ - component: PharosFooter, - layout: 'fullscreen', - }} -/> - -# Footer - -<GuidelineLink path="footer" /> - -<Canvas withToolbar> - <Story name="Base"> - {() => { - return <Footer />; - }} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosFooter} /> diff --git a/packages/pharos/src/components/footer/pharos-footer.wc.stories.jsx b/packages/pharos/src/components/footer/pharos-footer.wc.stories.jsx new file mode 100644 index 000000000..7ed530510 --- /dev/null +++ b/packages/pharos/src/components/footer/pharos-footer.wc.stories.jsx @@ -0,0 +1,18 @@ +import { Footer } from '../../pages/shared/wc/footer'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Organisms/Footer', + component: 'pharos-footer', + parameters: { + docs: { page: configureDocsPage('footer') }, + layout: 'fullscreen', + }, +}; + +export const Base = { + render: (_) => Footer(), + parameters: { + chromatic: { viewports: [320, 1024, 1200] }, + }, +}; diff --git a/packages/pharos/src/components/footer/pharos-footer.wc.stories.mdx b/packages/pharos/src/components/footer/pharos-footer.wc.stories.mdx deleted file mode 100644 index 9a7aba4a5..000000000 --- a/packages/pharos/src/components/footer/pharos-footer.wc.stories.mdx +++ /dev/null @@ -1,27 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { Footer } from '../../pages/shared/wc/footer'; - -<Meta - title="Organisms/Footer" - parameters={{ - layout: 'fullscreen', - }} -/> - -# Footer - -<GuidelineLink path="footer" /> - -<Canvas> - <Story name="Base" parameters={{ chromatic: { viewports: [320, 1024, 1200] } }}> - {() => { - return Footer(); - }} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-footer" /> diff --git a/packages/pharos/src/components/header/PharosHeader.react.stories.mdx b/packages/pharos/src/components/header/PharosHeader.react.stories.jsx similarity index 80% rename from packages/pharos/src/components/header/PharosHeader.react.stories.mdx rename to packages/pharos/src/components/header/PharosHeader.react.stories.jsx index 604c25e18..666fb7a6a 100644 --- a/packages/pharos/src/components/header/PharosHeader.react.stories.mdx +++ b/packages/pharos/src/components/header/PharosHeader.react.stories.jsx @@ -1,68 +1,27 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; +import { + PharosHeader, + PharosLink, + PharosDropdownMenuNav, + PharosDropdownMenuNavLink, + PharosDropdownMenu, + PharosDropdownMenuItem, + PharosInputGroup, + PharosButton, + PharosIcon, +} from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; -import { PharosHeader } from '../../react-components/header/pharos-header'; -import { PharosLink } from '../../react-components/link/pharos-link'; -import { PharosDropdownMenuNav } from '../../react-components/dropdown-menu-nav/pharos-dropdown-menu-nav'; -import { PharosDropdownMenuNavLink } from '../../react-components/dropdown-menu-nav/pharos-dropdown-menu-nav-link'; -import { PharosDropdownMenu } from '../../react-components/dropdown-menu/pharos-dropdown-menu'; -import { PharosDropdownMenuItem } from '../../react-components/dropdown-menu/pharos-dropdown-menu-item'; -import { PharosInputGroup } from '../../react-components/input-group/pharos-input-group'; -import { PharosButton } from '../../react-components/button/pharos-button'; -import { PharosIcon } from '../../react-components/icon/pharos-icon'; - -<Meta - title="Organisms/Header" - parameters={{ - component: PharosHeader, +export default { + title: 'Organisms/Header', + component: PharosHeader, + parameters: { + docs: { page: configureDocsPage('haeder') }, layout: 'fullscreen', - }} -/> - -# Header - -<GuidelineLink path="header" /> - -# Base - -export const accountNav = (section) => ( - <PharosDropdownMenuNav label="profile"> - <PharosDropdownMenuNavLink - href="/account/profile" - id={`profile-link-${section}`} - data-dropdown-menu-id={`profile-menu-${section}`} - data-dropdown-menu-hover - > - <span className="hide-for-small">human@ithaka.org</span> - <span className="show-for-small" style={{ display: 'none' }}> - Account - </span> - </PharosDropdownMenuNavLink> - <PharosDropdownMenu id={`profile-menu-${section}`}> - <PharosDropdownMenuItem link="/account/profile" id={`profile-link-${section}`}> - Profile - </PharosDropdownMenuItem> - <PharosDropdownMenuItem link="/account/workspace" id={`workspace-link-${section}`}> - Workspace - </PharosDropdownMenuItem> - <PharosDropdownMenuItem link="/account/read-online" id={`article-link-${section}`}> - Free Article Views - </PharosDropdownMenuItem> - <PharosDropdownMenuItem link="/account/subscriptions" id={`jpass-link-${section}`}> - JPASS Downloads - </PharosDropdownMenuItem> - <PharosDropdownMenuItem link="/account/purchases" id={`purchase-link-${section}`}> - Purchase History - </PharosDropdownMenuItem> - <PharosDropdownMenuItem link="/action/doLogout" id={`logout-link-${section}`}> - Logout - </PharosDropdownMenuItem> - </PharosDropdownMenu> - </PharosDropdownMenuNav> -); + }, +}; -<Canvas withToolbar> - <Story name="Base"> +export const Base = { + render: (_) => ( <PharosHeader> <div id="pds" slot="top" className="hide-for-small"> <div @@ -124,7 +83,7 @@ export const accountNav = (section) => ( </PharosInputGroup> </div> <div slot="end-top"> - <div>{accountNav('end')}</div> + <div>{_accountNav('end')}</div> </div> <div slot="end-bottom" @@ -173,9 +132,41 @@ export const accountNav = (section) => ( </PharosDropdownMenuNav> </div> </PharosHeader> - </Story> -</Canvas> - -## API + ), +}; -<ArgsTable of={PharosHeader} /> +const _accountNav = (section) => ( + <PharosDropdownMenuNav label="profile"> + <PharosDropdownMenuNavLink + href="/account/profile" + id={`profile-link-${section}`} + data-dropdown-menu-id={`profile-menu-${section}`} + data-dropdown-menu-hover + > + <span className="hide-for-small">human@ithaka.org</span> + <span className="show-for-small" style={{ display: 'none' }}> + Account + </span> + </PharosDropdownMenuNavLink> + <PharosDropdownMenu id={`profile-menu-${section}`}> + <PharosDropdownMenuItem link="/account/profile" id={`profile-link-${section}`}> + Profile + </PharosDropdownMenuItem> + <PharosDropdownMenuItem link="/account/workspace" id={`workspace-link-${section}`}> + Workspace + </PharosDropdownMenuItem> + <PharosDropdownMenuItem link="/account/read-online" id={`article-link-${section}`}> + Free Article Views + </PharosDropdownMenuItem> + <PharosDropdownMenuItem link="/account/subscriptions" id={`jpass-link-${section}`}> + JPASS Downloads + </PharosDropdownMenuItem> + <PharosDropdownMenuItem link="/account/purchases" id={`purchase-link-${section}`}> + Purchase History + </PharosDropdownMenuItem> + <PharosDropdownMenuItem link="/action/doLogout" id={`logout-link-${section}`}> + Logout + </PharosDropdownMenuItem> + </PharosDropdownMenu> + </PharosDropdownMenuNav> +); diff --git a/packages/pharos/src/components/header/pharos-header.wc.stories.jsx b/packages/pharos/src/components/header/pharos-header.wc.stories.jsx new file mode 100644 index 000000000..e94b40fe6 --- /dev/null +++ b/packages/pharos/src/components/header/pharos-header.wc.stories.jsx @@ -0,0 +1,151 @@ +import { html } from 'lit'; + +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Organisms/Header', + component: 'pharos-header', + parameters: { + docs: { page: configureDocsPage('header') }, + layout: 'fullscreen', + }, +}; + +export const Base = { + render: (_) => { + const accountNav = (section) => html` + <pharos-dropdown-menu-nav label="profile"> + <pharos-dropdown-menu-nav-link + href="/account/profile" + id="profile-link-${section}" + data-dropdown-menu-id="profile-menu-${section}" + data-dropdown-menu-hover + ><span class="hide-for-small">human@ithaka.org</span + ><span class="show-for-small" style="display: none" + >Account</span + ></pharos-dropdown-menu-nav-link + > + <pharos-dropdown-menu id="profile-menu-${section}"> + <pharos-dropdown-menu-item link="/account/profile" id="profile-link-${section}" + >Profile</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item link="/account/workspace" id="workspace-link-${section}" + >Workspace</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item link="/account/read-online" id="article-link-${section}" + >Free Article Views</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item link="/account/subscriptions" id="jpass-link-${section}" + >JPASS Downloads</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item link="/account/purchases" id="purchase-link-${section}" + >Purchase History</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item link="/action/doLogout" id="logout-link-${section}" + >Logout</pharos-dropdown-menu-item + > + </pharos-dropdown-menu> + </pharos-dropdown-menu-nav> + `; + return html` + <pharos-header> + <div id="pds" slot="top" class="hide-for-small"> + <div + tabindex="0" + style="display: flex" + data-dropdown-menu-id="pds-menu" + data-dropdown-menu-hover + > + <span>Access provided by </span> + <span style="font-weight: bold">JSTOR</span> + <pharos-icon name="chevron-down" style="margin-left: 1rem"></pharos-icon> + </div> + <pharos-dropdown-menu id="pds-menu" placement="bottom"> + <div style="padding: 1rem"> + <p> + Please contact + <pharos-link href="//jstor.org">JSTOR</pharos-link> for additional help and + information. + </p> + </div> + </pharos-dropdown-menu> + </div> + <span slot="top" class="show-for-small" style="display: none; font-weight: bold" + >JSTOR</span + > + <pharos-link slot="start" href="/" id="jstor-logo"> + <img src="./images/jstor-logo.svg" alt="JSTOR Home" width="65" height="90" /> + </pharos-link> + <div slot="center"> + <pharos-input-group + name="my-input-group" + hide-label + placeholder="Search JSTOR" + class="header-example__input-group" + > + <span slot="label">Search JSTOR</span> + <pharos-button + name="search-button" + icon="search" + variant="subtle" + label="search" + ></pharos-button> + </pharos-input-group> + </div> + <div slot="end-top""> + <div>${accountNav('end')}</div> + </div> + <div slot="end-bottom" style="display: flex;"> + <pharos-dropdown-menu-nav label="main navigation" style="display: inline-block"> + <pharos-dropdown-menu-nav-link + href="action/showAdvancedSearch" + id="adv-search-link" + >Advanced Search</pharos-dropdown-menu-nav-link + > + <pharos-dropdown-menu-nav-link + href="/subjects" + id="browse-link" + data-dropdown-menu-id="browse-menu" + data-dropdown-menu-hover + >Browse</pharos-dropdown-menu-nav-link + > + <pharos-dropdown-menu id="browse-menu"> + <pharos-dropdown-menu-item link="/subjects">by Subject</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item link="/action/showJournals?browseType=title" + >by Title</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item link="/site/collection-list" + >by Collections</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item link="/publishers" + >by Publisher</pharos-dropdown-menu-item + > + </pharos-dropdown-menu> + <pharos-dropdown-menu-nav-link + href="/account/workspace" + id="tools-link" + data-dropdown-menu-id="tools-menu" + data-dropdown-menu-hover + >Tools</pharos-dropdown-menu-nav-link + > + <pharos-dropdown-menu id="tools-menu"> + <pharos-dropdown-menu-item link="/account/workspace" + >Workspace</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item link="/analyze" + >Text Analyzer</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item link="/understand" + >The JSTOR Understanding Series</pharos-dropdown-menu-item + > + <pharos-dropdown-menu-item link="/dfr" + >Data for Research</pharos-dropdown-menu-item + > + </pharos-dropdown-menu> + </pharos-dropdown-menu-nav> + </div> + </pharos-header> + `; + }, + parameters: { chromatic: { viewports: [320, 1200] } }, +}; diff --git a/packages/pharos/src/components/header/pharos-header.wc.stories.mdx b/packages/pharos/src/components/header/pharos-header.wc.stories.mdx deleted file mode 100644 index 17cb4ee4a..000000000 --- a/packages/pharos/src/components/header/pharos-header.wc.stories.mdx +++ /dev/null @@ -1,160 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta - title="Organisms/Header" - parameters={{ - layout: 'fullscreen', - }} -/> - -# Header - -<GuidelineLink path="header" /> - -# Base - -<Canvas> - <Story name="Base" parameters={{ chromatic: { viewports: [320, 1200] } }}> - {() => { - const accountNav = (section) => html` - <pharos-dropdown-menu-nav label="profile"> - <pharos-dropdown-menu-nav-link - href="/account/profile" - id="profile-link-${section}" - data-dropdown-menu-id="profile-menu-${section}" - data-dropdown-menu-hover - ><span class="hide-for-small">human@ithaka.org</span - ><span class="show-for-small" style="display: none" - >Account</span - ></pharos-dropdown-menu-nav-link - > - <pharos-dropdown-menu id="profile-menu-${section}"> - <pharos-dropdown-menu-item link="/account/profile" id="profile-link-${section}" - >Profile</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item link="/account/workspace" id="workspace-link-${section}" - >Workspace</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item link="/account/read-online" id="article-link-${section}" - >Free Article Views</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item link="/account/subscriptions" id="jpass-link-${section}" - >JPASS Downloads</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item link="/account/purchases" id="purchase-link-${section}" - >Purchase History</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item link="/action/doLogout" id="logout-link-${section}" - >Logout</pharos-dropdown-menu-item - > - </pharos-dropdown-menu> - </pharos-dropdown-menu-nav> - `; - return html` - <pharos-header> - <div id="pds" slot="top" class="hide-for-small"> - <div - tabindex="0" - style="display: flex" - data-dropdown-menu-id="pds-menu" - data-dropdown-menu-hover - > - <span>Access provided by </span> - <span style="font-weight: bold">JSTOR</span> - <pharos-icon name="chevron-down" style="margin-left: 1rem"></pharos-icon> - </div> - <pharos-dropdown-menu id="pds-menu" placement="bottom"> - <div style="padding: 1rem"> - <p> - Please contact - <pharos-link href="//jstor.org">JSTOR</pharos-link> for additional help and - information. - </p> - </div> - </pharos-dropdown-menu> - </div> - <span slot="top" class="show-for-small" style="display: none; font-weight: bold" - >JSTOR</span - > - <pharos-link slot="start" href="/" id="jstor-logo"> - <img src="./images/jstor-logo.svg" alt="JSTOR Home" width="65" height="90" /> - </pharos-link> - <div slot="center"> - <pharos-input-group - name="my-input-group" - hide-label - placeholder="Search JSTOR" - class="header-example__input-group" - > - <span slot="label">Search JSTOR</span> - <pharos-button - name="search-button" - icon="search" - variant="subtle" - label="search" - ></pharos-button> - </pharos-input-group> - </div> - <div slot="end-top""> - <div>${accountNav('end')}</div> - </div> - <div slot="end-bottom" style="display: flex;"> - <pharos-dropdown-menu-nav label="main navigation" style="display: inline-block"> - <pharos-dropdown-menu-nav-link - href="action/showAdvancedSearch" - id="adv-search-link" - >Advanced Search</pharos-dropdown-menu-nav-link - > - <pharos-dropdown-menu-nav-link - href="/subjects" - id="browse-link" - data-dropdown-menu-id="browse-menu" - data-dropdown-menu-hover - >Browse</pharos-dropdown-menu-nav-link - > - <pharos-dropdown-menu id="browse-menu"> - <pharos-dropdown-menu-item link="/subjects">by Subject</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item link="/action/showJournals?browseType=title" - >by Title</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item link="/site/collection-list" - >by Collections</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item link="/publishers" - >by Publisher</pharos-dropdown-menu-item - > - </pharos-dropdown-menu> - <pharos-dropdown-menu-nav-link - href="/account/workspace" - id="tools-link" - data-dropdown-menu-id="tools-menu" - data-dropdown-menu-hover - >Tools</pharos-dropdown-menu-nav-link - > - <pharos-dropdown-menu id="tools-menu"> - <pharos-dropdown-menu-item link="/account/workspace" - >Workspace</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item link="/analyze" - >Text Analyzer</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item link="/understand" - >The JSTOR Understanding Series</pharos-dropdown-menu-item - > - <pharos-dropdown-menu-item link="/dfr" - >Data for Research</pharos-dropdown-menu-item - > - </pharos-dropdown-menu> - </pharos-dropdown-menu-nav> - </div> - </pharos-header> - `; - }} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-header" /> diff --git a/packages/pharos/src/components/heading/PharosHeading.react.stories.jsx b/packages/pharos/src/components/heading/PharosHeading.react.stories.jsx new file mode 100644 index 000000000..004c8cbfa --- /dev/null +++ b/packages/pharos/src/components/heading/PharosHeading.react.stories.jsx @@ -0,0 +1,69 @@ +import { PharosHeading, PharosCheckboxGroup, PharosCheckbox } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; +import { allPresets } from './pharos-heading'; + +export default { + title: 'Components/Heading', + component: PharosHeading, + parameters: { + docs: { page: configureDocsPage('heading') }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; + +export const Base = { + render: (args) => ( + <PharosHeading level={args.level} preset={args.preset} noMargin={args.noMargin}> + {args.text} + <br /> + second line + </PharosHeading> + ), + args: defaultArgs, + argTypes: { + ...argTypes, + preset: { + options: allPresets.filter((preset) => !preset.includes('--bold')), + control: { type: 'inline-radio' }, + }, + }, +}; + +export const Bold = { + ...Base, + args: { + ...Base.args, + preset: '5--bold', + }, + argTypes: { + ...argTypes, + preset: { + options: allPresets.filter((preset) => preset.includes('--bold')), + control: { type: 'inline-radio' }, + }, + }, +}; + +export const Legend = { + render: (args) => ( + <PharosCheckboxGroup> + <PharosHeading slot="legend" level={args.level} preset={args.preset}> + {args.text} + </PharosHeading> + <PharosCheckbox value="1"> + <span slot="label">Checkbox 1</span> + </PharosCheckbox> + <PharosCheckbox value="2"> + <span slot="label">Checkbox 2</span> + </PharosCheckbox> + </PharosCheckboxGroup> + ), + args: { + ...Base.args, + text: 'I am legend', + level: 2, + preset: 'legend', + }, +}; diff --git a/packages/pharos/src/components/heading/PharosHeading.react.stories.mdx b/packages/pharos/src/components/heading/PharosHeading.react.stories.mdx deleted file mode 100644 index 84b71bb40..000000000 --- a/packages/pharos/src/components/heading/PharosHeading.react.stories.mdx +++ /dev/null @@ -1,89 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosHeading } from '../../react-components/heading/pharos-heading'; -import { PharosCheckboxGroup } from '../../react-components/checkbox-group/pharos-checkbox-group'; -import { PharosCheckbox } from '../../react-components/checkbox/pharos-checkbox'; - -<Meta - title="Components/Heading" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Heading - -<GuidelineLink path="heading" /> - -export const Template = (args) => ( - <PharosHeading level={args.level} preset={args.preset}> - {args.text} - <br /> - second line - </PharosHeading> -); - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - text: { control: { type: 'text' }, defaultValue: 'Heading style' }, - level: { - control: { type: 'range', min: 1, max: 6, step: 1 }, - defaultValue: 1, - }, - preset: { - defaultValue: '5', - options: ['1', '2', '3', '4', '5', '6', '7', 'legend'], - control: { - type: 'radio', - }, - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Bold" - argTypes={{ - text: { control: { type: 'text' }, defaultValue: 'Heading style' }, - level: { - control: { type: 'range', min: 1, max: 6, step: 1 }, - defaultValue: 1, - }, - preset: { - defaultValue: '5--bold', - options: ['1--bold', '2--bold', '3--bold', '4--bold', '5--bold', '6--bold', '7--bold'], - control: { - type: 'radio', - }, - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosHeading} /> - -<Canvas> - <Story name="Legend"> - <PharosCheckboxGroup> - <PharosHeading slot="legend" level={2} preset={'legend'}> - I am legend - </PharosHeading> - <PharosCheckbox value="1"> - <span slot="label">Checkbox 1</span> - </PharosCheckbox> - <PharosCheckbox value="2"> - <span slot="label">Checkbox 2</span> - </PharosCheckbox> - </PharosCheckboxGroup> - </Story> -</Canvas> diff --git a/packages/pharos/src/components/heading/pharos-heading.ts b/packages/pharos/src/components/heading/pharos-heading.ts index 493734e75..f641579bc 100644 --- a/packages/pharos/src/components/heading/pharos-heading.ts +++ b/packages/pharos/src/components/heading/pharos-heading.ts @@ -24,9 +24,9 @@ export type HeadingPreset = | '7--bold' | 'legend'; -const LEVELS = [1, 2, 3, 4, 5, 6]; +export const allLevels = [1, 2, 3, 4, 5, 6] as HeadingLevel[]; -const PRESETS = [ +export const allPresets = [ '1', '1--bold', '2', @@ -42,7 +42,7 @@ const PRESETS = [ '7', '7--bold', 'legend', -]; +] as HeadingPreset[]; /** * Pharos heading component. @@ -84,15 +84,15 @@ export class PharosHeading extends PharosElement { throw new Error(`level is a required attribute.`); } - if (changedProperties.has('level') && !LEVELS.includes(this.level)) { + if (changedProperties.has('level') && !allLevels.includes(this.level)) { throw new Error( - `${this.level} is not a valid heading level. Valid levels are: ${LEVELS.join(', ')}` + `${this.level} is not a valid heading level. Valid levels are: ${allLevels.join(', ')}` ); } - if (changedProperties.has('preset') && !PRESETS.includes(this.preset)) { + if (changedProperties.has('preset') && !allPresets.includes(this.preset)) { throw new Error( `${this.preset} is not a valid preset. - Available presets are ${PRESETS.join(', ')}.` + Available presets are ${allPresets.join(', ')}.` ); } } diff --git a/packages/pharos/src/components/heading/pharos-heading.wc.stories.jsx b/packages/pharos/src/components/heading/pharos-heading.wc.stories.jsx new file mode 100644 index 000000000..60fdc0daa --- /dev/null +++ b/packages/pharos/src/components/heading/pharos-heading.wc.stories.jsx @@ -0,0 +1,66 @@ +import { html } from 'lit'; + +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; +import { allPresets } from './pharos-heading'; + +export default { + title: 'Components/Heading', + component: 'pharos-heading', + parameters: { + docs: { page: configureDocsPage('heading') }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; + +export const Base = { + render: (args) => + html` + <pharos-heading level=${args.level} preset=${args.preset} ?no-margin=${args.noMargin}> + ${args.text}<br />second line + </pharos-heading> + `, + args: defaultArgs, + argTypes: { + ...argTypes, + preset: { + options: allPresets.filter((preset) => !preset.includes('--bold')), + control: { type: 'inline-radio' }, + }, + }, +}; + +export const Bold = { + ...Base, + args: { + ...Base.args, + preset: '5--bold', + }, + argTypes: { + ...argTypes, + preset: { + options: allPresets.filter((preset) => preset.includes('--bold')), + control: { type: 'inline-radio' }, + }, + }, +}; + +export const Legend = { + render: (args) => + html` + <pharos-checkbox-group> + <pharos-heading slot="legend" level="${args.level}" preset="${args.preset}" + >${args.text}</pharos-heading + > + <pharos-checkbox value="1"><span slot="label">Checkbox 1</span></pharos-checkbox> + <pharos-checkbox value="2"><span slot="label">Checkbox 2</span></pharos-checkbox> + </pharos-checkbox-group> + `, + args: { + ...Base.args, + text: 'I am legend', + level: 2, + preset: 'legend', + }, +}; diff --git a/packages/pharos/src/components/heading/pharos-heading.wc.stories.mdx b/packages/pharos/src/components/heading/pharos-heading.wc.stories.mdx deleted file mode 100644 index 4eab6067c..000000000 --- a/packages/pharos/src/components/heading/pharos-heading.wc.stories.mdx +++ /dev/null @@ -1,83 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta - title="Components/Heading" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Heading - -<GuidelineLink path="heading" /> - -export const Template = (args) => - html` - <pharos-heading level=${args.level} preset=${args.preset}> - ${args.text}<br />second line - </pharos-heading> - `; - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - text: { control: { type: 'text' }, defaultValue: 'Heading style' }, - level: { - control: { type: 'range', min: 1, max: 6, step: 1 }, - defaultValue: 1, - }, - preset: { - defaultValue: '5', - options: ['1', '2', '3', '4', '5', '6', '7', 'legend'], - control: { - type: 'radio', - }, - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Bold" - argTypes={{ - text: { control: { type: 'text' }, defaultValue: 'Heading style' }, - level: { - control: { type: 'range', min: 1, max: 6, step: 1 }, - defaultValue: 1, - }, - preset: { - defaultValue: '5--bold', - options: ['1--bold', '2--bold', '3--bold', '4--bold', '5--bold', '6--bold', '7--bold'], - control: { - type: 'radio', - }, - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-heading" /> - -# Legend - -<Canvas withToolbar> - <Story name="Legend"> - {html` - <pharos-checkbox-group> - <pharos-heading slot="legend" level="2" preset="legend">I am legend</pharos-heading> - <pharos-checkbox value="1"><span slot="label">Checkbox 1</span></pharos-checkbox> - <pharos-checkbox value="2"><span slot="label">Checkbox 2</span></pharos-checkbox> - </pharos-checkbox-group> - `} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/heading/storyArgs.ts b/packages/pharos/src/components/heading/storyArgs.ts new file mode 100644 index 000000000..8b9d45bff --- /dev/null +++ b/packages/pharos/src/components/heading/storyArgs.ts @@ -0,0 +1,23 @@ +import { allPresets, allLevels } from './pharos-heading'; + +export const argTypes = { + level: { + control: { + type: 'range', + min: Math.min(...allLevels), + max: Math.max(...allLevels), + step: 1, + }, + }, + preset: { + options: allPresets, + control: { type: 'inline-radio' }, + }, +}; + +export const defaultArgs = { + level: 1, + noMargin: false, + preset: '5', + text: 'Heading style', +}; diff --git a/packages/pharos/src/components/icon/PharosIcon.react.stories.jsx b/packages/pharos/src/components/icon/PharosIcon.react.stories.jsx new file mode 100644 index 000000000..0bf73ea1d --- /dev/null +++ b/packages/pharos/src/components/icon/PharosIcon.react.stories.jsx @@ -0,0 +1,42 @@ +import { PharosIcon } from '../../react-components'; +import { iconNames } from '../../utils/iconNames'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; + +export default { + title: 'Components/Icon', + component: PharosIcon, + parameters: { + docs: { page: configureDocsPage('icon') }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; + +export const Base = { + render: (args) => <PharosIcon name={args.name} className="icon-example__icon"></PharosIcon>, + args: defaultArgs, +}; + +export const Names = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridTemplateColumns: 'repeat(4, auto)', + gridGap: '2rem', + marginTop: '2rem', + justifyContent: 'space-evenly', + }} + > + {iconNames.map((name, index) => { + return ( + <div className="icon-example__container" key={index}> + <PharosIcon name={name} className="icon-example__icon"></PharosIcon> + <div className="icon-example__name">{name}</div> + </div> + ); + })} + </div> + ), +}; diff --git a/packages/pharos/src/components/icon/PharosIcon.react.stories.mdx b/packages/pharos/src/components/icon/PharosIcon.react.stories.mdx deleted file mode 100644 index c9be438c6..000000000 --- a/packages/pharos/src/components/icon/PharosIcon.react.stories.mdx +++ /dev/null @@ -1,66 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosIcon } from '../../react-components/icon/pharos-icon'; -import { iconNames } from '../../utils/iconNames'; - -<Meta - title="Components/Icon" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -export const Template = (args) => ( - <PharosIcon name={args.name} className="icon-example__icon"></PharosIcon> -); - -# Icon - -<GuidelineLink path="icon" /> - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - name: { - options: iconNames, - control: { - type: 'inline-radio', - }, - defaultValue: 'checkmark', - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosIcon} /> - -# Names - -<Canvas withToolbar> - <Story name="Names"> - <div - style={{ - display: 'grid', - gridTemplateColumns: 'repeat(4, auto)', - gridGap: '2rem', - marginTop: '2rem', - justifyContent: 'space-evenly', - }} - > - {iconNames.map((name, index) => { - return ( - <div className="icon-example__container" key={index}> - <PharosIcon name={name} className="icon-example__icon"></PharosIcon> - <div className="icon-example__name">{name}</div> - </div> - ); - })} - </div> - </Story> -</Canvas> diff --git a/packages/pharos/src/components/icon/pharos-icon.wc.stories.jsx b/packages/pharos/src/components/icon/pharos-icon.wc.stories.jsx new file mode 100644 index 000000000..af271b2ae --- /dev/null +++ b/packages/pharos/src/components/icon/pharos-icon.wc.stories.jsx @@ -0,0 +1,37 @@ +import { html } from 'lit'; + +import { iconNames } from '../../utils/iconNames'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; + +export default { + title: 'Components/Icon', + component: 'pharos-icon', + parameters: { + docs: { page: configureDocsPage('icon') }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; + +export const Base = { + render: (args) => + html` <pharos-icon name=${args.name} class="icon-example__icon"></pharos-icon> `, + args: defaultArgs, +}; + +export const Names = { + render: (_) => + html` + <div + style="display: grid; grid-template-columns: repeat(4, auto); grid-gap: 2rem; margin-top: 2rem; justify-content: space-evenly;" + > + ${iconNames.map((name) => { + return html` <div class="icon-example__container"> + <pharos-icon name="${name}" class="icon-example__icon"></pharos-icon> + <div class="icon-example__name">${name}</div> + </div>`; + })} + </div> + `, +}; diff --git a/packages/pharos/src/components/icon/pharos-icon.wc.stories.mdx b/packages/pharos/src/components/icon/pharos-icon.wc.stories.mdx deleted file mode 100644 index 91bdb9efc..000000000 --- a/packages/pharos/src/components/icon/pharos-icon.wc.stories.mdx +++ /dev/null @@ -1,59 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { iconNames } from '../../utils/iconNames'; - -<Meta - title="Components/Icon" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -export const Template = (args) => - html` <pharos-icon name=${args.name} class="icon-example__icon"></pharos-icon> `; - -# Icon - -<GuidelineLink path="icon" /> - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - name: { - options: iconNames, - control: { - type: 'inline-radio', - }, - defaultValue: 'checkmark', - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-icon" /> - -# Names - -<Canvas withToolbar> - <Story name="Names"> - {html` - <div - style="display: grid; grid-template-columns: repeat(4, auto); grid-gap: 2rem; margin-top: 2rem; justify-content: space-evenly;" - > - ${iconNames.map((name) => { - return html` <div class="icon-example__container"> - <pharos-icon name="${name}" class="icon-example__icon"></pharos-icon> - <div class="icon-example__name">${name}</div> - </div>`; - })} - </div> - `} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/icon/storyArgs.ts b/packages/pharos/src/components/icon/storyArgs.ts new file mode 100644 index 000000000..56206b827 --- /dev/null +++ b/packages/pharos/src/components/icon/storyArgs.ts @@ -0,0 +1,15 @@ +import { iconNames } from '../../utils/iconNames'; + +export const defaultArgs = { + name: 'checkmark', + description: '', +}; + +export const argTypes = { + name: { + options: iconNames, + control: { + type: 'select', + }, + }, +}; diff --git a/packages/pharos/src/components/image-card/PharosImageCard.react.stories.jsx b/packages/pharos/src/components/image-card/PharosImageCard.react.stories.jsx new file mode 100644 index 000000000..80ed318a6 --- /dev/null +++ b/packages/pharos/src/components/image-card/PharosImageCard.react.stories.jsx @@ -0,0 +1,478 @@ +import { Fragment } from 'react'; +import { viewports } from '../../pages/shared/viewports'; + +import { + PharosButton, + PharosImageCard, + PharosLayout, + PharosLink, + PharosDropdownMenu, + PharosDropdownMenuItem, +} from '../../react-components'; + +import { items, collections } from '../../pages/item-detail/mocks'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Components/Image Card', + component: PharosImageCard, + parameters: { + docs: { page: configureDocsPage('image-card') }, + viewport: viewports, + }, +}; + +const Template = { + render: (args) => ( + <PharosLayout style={{ margin: '1rem 0' }}> + <PharosImageCard + title="South Hall" + link="https://www.jstor.org/stable/10.2307/community.26220188" + error={args.error} + subtle={args.subtle} + style={{ gridColumn: 'span 2' }} + > + <img id="image" src="./images/item-detail/collection_5.png" alt="south hall" slot="image" /> + <div id="creator" slot="metadata"> + Tubby, William Bunker (American architect,... + </div> + <div id="item-date" slot="metadata"> + 1889-1892 (creation) + </div> + <div id="collection" slot="metadata"> + Part of + <PharosLink + href="https://www.jstor.org/site/pratt/buildings-image" + onBackground={args.subtle} + > + Pratt Institute Buildings Image Collection + </PharosLink> + </div> + </PharosImageCard> + </PharosLayout> + ), + args: defaultArgs, +}; + +export const Base = { + render: (_) => ( + <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> + {items.map((item, index) => { + return ( + <li style={{ gridColumn: 'span 2' }} key={index}> + <PharosImageCard id={`card-${index}`} title="Card Title" link="#"> + <img + id={`image-${index}`} + src={`./images/item-detail/${item.image}`} + alt={`Card Title ${index}`} + slot="image" + /> + <div id={`creator-${index}`} slot="metadata"> + Creator of the item + </div> + <div id={`item-date-${index}`} slot="metadata"> + 1990-2000 + </div> + <div id={`collection-${index}`} slot="metadata"> + Part of{' '} + <PharosLink href="https://www.jstor.org/site/pratt/buildings-image"> + An Example Collection + </PharosLink> + </div> + </PharosImageCard> + </li> + ); + })} + </PharosLayout> + ), +}; + +export const WithSourceTypes = { + render: (_) => ( + <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> + {items.map((item, index) => { + return ( + <li style={{ gridColumn: 'span 2' }} key={index}> + <PharosImageCard id={`card-${index}`} title="Card Title" link="#" source-type="Image"> + <img + id={`image-${index}`} + src={`./images/item-detail/${item.image}`} + alt={`Card Title ${index}`} + slot="image" + /> + <div id={`creator-${index}`} slot="metadata"> + Creator of the item + </div> + <div id={`item-date-${index}`} slot="metadata"> + 1990-2000 + </div> + <div id={`collection-${index}`} slot="metadata"> + Part of{' '} + <PharosLink href="https://www.jstor.org/site/pratt/buildings-image"> + An Example Collection + </PharosLink> + </div> + </PharosImageCard> + </li> + ); + })} + </PharosLayout> + ), +}; + +export const Collection = { + render: (_) => ( + <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> + {collections.map((collection, index) => { + return ( + <li className="image-card-example__card--collection" key={index}> + <PharosImageCard + id={`card-${index}`} + title={collection.title} + link="#" + variant="collection" + > + <img + id={`image-${index}`} + src={`./images/item-detail/${collection.image}`} + alt={collection.title} + slot="image" + /> + <strong id={`items-${index}`} slot="metadata"> + {collection.items} items + </strong> + <div id={`description-${index}`} slot="metadata"> + Selections from the global permanent collection. + </div> + </PharosImageCard> + </li> + ); + })} + </PharosLayout> + ), +}; + +export const Promotional = { + render: (_) => ( + <PharosLayout style={{ margin: '1rem 0' }}> + <div className="image-card-example__card--promotional"> + <PharosImageCard title="Bring your work to life with images" link="#" variant="promotional"> + <img src="./images/item-detail/open_collection_3.png" alt="" slot="image" /> + <p slot="metadata"> + Harness the power of visual materials—explore more than 3 million images now on JSTOR. + </p> + </PharosImageCard> + <PharosButton variant="secondary">Search for images</PharosButton> + </div> + </PharosLayout> + ), +}; + +export const Selectable = { + render: (_) => ( + <PharosLayout tag="ol" style="margin: 1rem 0"> + <li style="grid-column: span 3"> + <PharosImageCard title="Selectable" link="#" source-type="Image" variant="selectable"> + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + <li style="grid-column: span 3"> + <PharosImageCard + title="Subtle select" + link="#" + source-type="Image" + variant="selectable" + subtle-select="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + <li style="grid-column: span 3"> + <PharosImageCard + title="Selected Disabled" + link="#" + source-type="Image" + variant="selectable" + disabled="true" + selected="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + <li style="grid-column: span 3"> + <PharosImageCard + title="Selectable Error State" + link="#" + source-type="Image" + variant="selectable" + error="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + <li style="grid-column: span 3"> + <PharosImageCard + title="Subtle Select Error State" + link="#" + source-type="Image" + variant="selectable" + error="true" + subtle-select="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + </PharosLayout> + ), +}; + +export const SubtleSelectable = { + render: (_) => ( + <PharosLayout tag="ol" style="margin: 1rem 0"> + <li style="grid-column: span 3"> + <PharosImageCard + title="Selectable" + link="#" + source-type="Image" + variant="selectable" + subtle="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + <li style="grid-column: span 3"> + <PharosImageCard + title="Subtle select" + link="#" + source-type="Image" + variant="selectable" + subtle="true" + subtle-select="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + <li style="grid-column: span 3"> + <PharosImageCard + title="Selected Disabled" + link="#" + source-type="Image" + variant="selectable" + subtle="true" + disabled="true" + selected="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + <li style="grid-column: span 3"> + <PharosImageCard + title="Selectable Error State" + link="#" + source-type="Image" + variant="selectable" + subtle="true" + error="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + <li style="grid-column: span 3"> + <PharosImageCard + title="Subtle Select Error State" + link="#" + source-type="Image" + variant="selectable" + subtle="true" + error="true" + subtle-select="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + </PharosLayout> + ), +}; + +export const ErrorState = { + ...Template, + args: { + ...Template.args, + error: true, + }, +}; + +export const SubtleState = { + ...Template, + args: { + ...Template.args, + subtle: true, + }, +}; + +export const VisitedTitleLink = { + ...Template, + args: { + ...Template.args, + indicateLinkVisited: true, + }, +}; + +export const WithActionMenu = { + render: (_) => ( + <Fragment> + <PharosLayout style={{ margin: '1rem 0' }}> + <PharosImageCard + title="South Hall" + link="https://www.jstor.org/stable/10.2307/community.26220188" + actionMenu="my-dropdown-menu" + style={{ gridColumn: 'span 2' }} + > + <img + id="image" + src="./images/item-detail/collection_5.png" + alt="south hall" + slot="image" + /> + <div id="creator" slot="metadata"> + Tubby, William Bunker (American architect,... + </div> + <div id="item-date" slot="metadata"> + 1889-1892 (creation) + </div> + <div id="collection" slot="metadata"> + Part of + <PharosLink href="https://www.jstor.org/site/pratt/buildings-image"> + Pratt Institute Buildings Image Collection + </PharosLink> + </div> + </PharosImageCard> + </PharosLayout> + <PharosDropdownMenu id="my-dropdown-menu"> + <PharosDropdownMenuItem>Item 1</PharosDropdownMenuItem> + <PharosDropdownMenuItem>Item 2</PharosDropdownMenuItem> + <PharosDropdownMenuItem>Item 3</PharosDropdownMenuItem> + </PharosDropdownMenu> + </Fragment> + ), +}; + +export const WithActionButtonSlot = { + render: (_) => ( + <Fragment> + <PharosLayout style={{ margin: '1rem 0' }}> + <PharosImageCard + title="South Hall" + link="https://www.jstor.org/stable/10.2307/community.26220188" + style={{ gridColumn: 'span 2' }} + > + <img + id="image" + src="./images/item-detail/collection_5.png" + alt="south hall" + slot="image" + /> + <div id="creator" slot="metadata"> + Tubby, William Bunker (American architect,... + </div> + <div id="item-date" slot="metadata"> + 1889-1892 (creation) + </div> + <div id="collection" slot="metadata"> + Part of + <PharosLink href="https://www.jstor.org/site/pratt/buildings-image"> + Pratt Institute Buildings Image Collection + </PharosLink> + </div> + <PharosButton + slot="action-button" + data-dropdown-menu-id="dropdownId" + icon="ellipses-vertical" + iconCondensed + variant="subtle" + ></PharosButton> + </PharosImageCard> + <PharosDropdownMenu id="dropdownId"> + <PharosDropdownMenuItem>Item 1</PharosDropdownMenuItem> + <PharosDropdownMenuItem>Item 2</PharosDropdownMenuItem> + <PharosDropdownMenuItem>Item 3</PharosDropdownMenuItem> + </PharosDropdownMenu> + </PharosLayout> + </Fragment> + ), +}; + +export const SelectableCollection = { + render: (_) => ( + <PharosLayout tag="ol" style="margin: 1rem 0"> + <li class="image-card-example__card--collection"> + <PharosImageCard title="Selectable" link="#" variant="selectable-collection"> + <img src="./images/item-detail/open_collection_1.png" slot="image" /> + <strong slot="metadata">50 items</strong> + <div slot="metadata">Selections from the global permanent collection.</div> + </PharosImageCard> + </li> + <li class="image-card-example__card--collection"> + <PharosImageCard + title="Subtle Select" + link="#" + variant="selectable-collection" + subtle-select="true" + > + <img src="./images/item-detail/open_collection_2.png" slot="image" /> + <strong slot="metadata">50 items</strong> + <div slot="metadata">Selections from the global permanent collection.</div> + </PharosImageCard> + </li> + <li class="image-card-example__card--collection"> + <PharosImageCard + title="Selected Disabled" + link="#" + variant="selectable-collection" + disabled="true" + selected="true" + > + <img src="./images/item-detail/open_collection_3.png" slot="image" /> + <strong slot="metadata">50 items</strong> + <div slot="metadata">Selections from the global permanent collection.</div> + </PharosImageCard> + </li> + </PharosLayout> + ), +}; + +export const Disabled = { + render: (_) => ( + <PharosLayout tag="ol" style="margin: 1rem 0"> + <li style="grid-column: span 3"> + <PharosImageCard title="Disabled" link="#" source-type="Image" disabled="true"> + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + <li style="grid-column: span 3"> + <PharosImageCard + title="Selectable Disabled" + link="#" + source-type="Image" + disabled="true" + variant="selectable" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + <li style="grid-column: span 3"> + <PharosImageCard + title="Selected Disabled" + link="#" + source-type="Image" + variant="selectable" + disabled="true" + selected="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </PharosImageCard> + </li> + </PharosLayout> + ), +}; diff --git a/packages/pharos/src/components/image-card/PharosImageCard.react.stories.mdx b/packages/pharos/src/components/image-card/PharosImageCard.react.stories.mdx deleted file mode 100644 index db54cb8e9..000000000 --- a/packages/pharos/src/components/image-card/PharosImageCard.react.stories.mdx +++ /dev/null @@ -1,300 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { Fragment } from 'react'; -import { viewports } from '../../pages/shared/viewports'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosButton } from '../../react-components/button/pharos-button'; -import { PharosImageCard } from '../../react-components/image-card/pharos-image-card'; -import { PharosLayout } from '../../react-components/layout/pharos-layout'; -import { PharosLink } from '../../react-components/link/pharos-link'; -import { PharosDropdownMenu } from '../../react-components/dropdown-menu/pharos-dropdown-menu'; -import { PharosDropdownMenuItem } from '../../react-components/dropdown-menu/pharos-dropdown-menu-item'; - -import { items, collections } from '../../pages/item-detail/mocks'; - -<Meta - title="Components/Image Card" - parameters={{ - component: PharosImageCard, - viewport: { - viewports, - }, - }} -/> - -# Image Card - -<GuidelineLink path="image-card" /> - -export const Template = (args) => ( - <PharosLayout style={{ margin: '1rem 0' }}> - <PharosImageCard - title="South Hall" - link="https://www.jstor.org/stable/10.2307/community.26220188" - error={args.error} - subtle={args.subtle} - style={{ gridColumn: 'span 2' }} - > - <img id="image" src="./images/item-detail/collection_5.png" alt="south hall" slot="image" /> - <div id="creator" slot="metadata"> - Tubby, William Bunker (American architect,... - </div> - <div id="item-date" slot="metadata"> - 1889-1892 (creation) - </div> - <div id="collection" slot="metadata"> - Part of - <PharosLink - href="https://www.jstor.org/site/pratt/buildings-image" - onBackground={args.subtle} - > - Pratt Institute Buildings Image Collection - </PharosLink> - </div> - </PharosImageCard> - </PharosLayout> -); - -export const MultipleTemplate = () => ( - <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> - {items.map((item, index) => { - return ( - <li style={{ gridColumn: 'span 2' }} key={index}> - <PharosImageCard id={`card-${index}`} title="Card Title" link="#"> - <img - id={`image-${index}`} - src={`./images/item-detail/${item.image}`} - alt={`Card Title ${index}`} - slot="image" - /> - <div id={`creator-${index}`} slot="metadata"> - Creator of the item - </div> - <div id={`item-date-${index}`} slot="metadata"> - 1990-2000 - </div> - <div id={`collection-${index}`} slot="metadata"> - Part of{' '} - <PharosLink href="https://www.jstor.org/site/pratt/buildings-image"> - An Example Collection - </PharosLink> - </div> - </PharosImageCard> - </li> - ); - })} - </PharosLayout> -); - -export const SourceTypesTemplate = () => ( - <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> - {items.map((item, index) => { - return ( - <li style={{ gridColumn: 'span 2' }} key={index}> - <PharosImageCard id={`card-${index}`} title="Card Title" link="#" source-type="Image"> - <img - id={`image-${index}`} - src={`./images/item-detail/${item.image}`} - alt={`Card Title ${index}`} - slot="image" - /> - <div id={`creator-${index}`} slot="metadata"> - Creator of the item - </div> - <div id={`item-date-${index}`} slot="metadata"> - 1990-2000 - </div> - <div id={`collection-${index}`} slot="metadata"> - Part of{' '} - <PharosLink href="https://www.jstor.org/site/pratt/buildings-image"> - An Example Collection - </PharosLink> - </div> - </PharosImageCard> - </li> - ); - })} - </PharosLayout> -); - -export const CollectionsTemplate = () => ( - <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> - {collections.map((collection, index) => { - return ( - <li className="image-card-example__card--collection" key={index}> - <PharosImageCard - id={`card-${index}`} - title={collection.title} - link="#" - variant="collection" - > - <img - id={`image-${index}`} - src={`./images/item-detail/${collection.image}`} - alt={collection.title} - slot="image" - /> - <strong id={`items-${index}`} slot="metadata"> - {collection.items} items - </strong> - <div id={`description-${index}`} slot="metadata"> - Selections from the global permanent collection. - </div> - </PharosImageCard> - </li> - ); - })} - </PharosLayout> -); - -export const PromotionalTemplate = () => ( - <PharosLayout style={{ margin: '1rem 0' }}> - <div className="image-card-example__card--promotional"> - <PharosImageCard title="Bring your work to life with images" link="#" variant="promotional"> - <img src="./images/item-detail/open_collection_3.png" alt="" slot="image" /> - <p slot="metadata"> - Harness the power of visual materials—explore more than 3 million images now on JSTOR. - </p> - </PharosImageCard> - <PharosButton variant="secondary">Search for images</PharosButton> - </div> - </PharosLayout> -); - -<Canvas> - <Story name="Base">{MultipleTemplate.bind({})}</Story> -</Canvas> - -## API - -<ArgsTable of={PharosImageCard} /> - -# With Source Types - -<Canvas> - <Story name="With Source Types">{SourceTypesTemplate.bind()}</Story> -</Canvas> - -# Error State - -<Canvas> - <Story name="Error State" args={{ error: true }}> - {Template.bind({})} - </Story> -</Canvas> - -# Subtle State - -<Canvas> - <Story name="Subtle State" args={{ subtle: true }}> - {Template.bind({})} - </Story> -</Canvas> - -# Visited Title Link - -<Canvas> - <Story name="Visited Title Link" args={{ indicateLinkVisited: true }}> - {Template.bind({})} - </Story> -</Canvas> - -# With Action Menu - -<Canvas> - <Story name="With Action Menu"> - <Fragment> - <PharosLayout style={{ margin: '1rem 0' }}> - <PharosImageCard - title="South Hall" - link="https://www.jstor.org/stable/10.2307/community.26220188" - actionMenu="my-dropdown-menu" - style={{ gridColumn: 'span 2' }} - > - <img - id="image" - src="./images/item-detail/collection_5.png" - alt="south hall" - slot="image" - /> - <div id="creator" slot="metadata"> - Tubby, William Bunker (American architect,... - </div> - <div id="item-date" slot="metadata"> - 1889-1892 (creation) - </div> - <div id="collection" slot="metadata"> - Part of - <PharosLink href="https://www.jstor.org/site/pratt/buildings-image"> - Pratt Institute Buildings Image Collection - </PharosLink> - </div> - </PharosImageCard> - </PharosLayout> - <PharosDropdownMenu id="my-dropdown-menu"> - <PharosDropdownMenuItem>Item 1</PharosDropdownMenuItem> - <PharosDropdownMenuItem>Item 2</PharosDropdownMenuItem> - <PharosDropdownMenuItem>Item 3</PharosDropdownMenuItem> - </PharosDropdownMenu> - </Fragment> - </Story> -</Canvas> - -# With Action Button Slot - -<Canvas> - <Story name="With Action Button Slot"> - <Fragment> - <PharosLayout style={{ margin: '1rem 0' }}> - <PharosImageCard - title="South Hall" - link="https://www.jstor.org/stable/10.2307/community.26220188" - style={{ gridColumn: 'span 2' }} - > - <img - id="image" - src="./images/item-detail/collection_5.png" - alt="south hall" - slot="image" - /> - <div id="creator" slot="metadata"> - Tubby, William Bunker (American architect,... - </div> - <div id="item-date" slot="metadata"> - 1889-1892 (creation) - </div> - <div id="collection" slot="metadata"> - Part of - <PharosLink href="https://www.jstor.org/site/pratt/buildings-image"> - Pratt Institute Buildings Image Collection - </PharosLink> - </div> - <PharosButton - slot="action-button" - data-dropdown-menu-id="dropdownId" - icon="ellipses-vertical" - iconCondensed - variant="subtle" - ></PharosButton> - </PharosImageCard> - <PharosDropdownMenu id="dropdownId"> - <PharosDropdownMenuItem>Item 1</PharosDropdownMenuItem> - <PharosDropdownMenuItem>Item 2</PharosDropdownMenuItem> - <PharosDropdownMenuItem>Item 3</PharosDropdownMenuItem> - </PharosDropdownMenu> - </PharosLayout> - </Fragment> - </Story> -</Canvas> - -# Collection - -<Canvas> - <Story name="Collection">{CollectionsTemplate.bind({})}</Story> -</Canvas> - -# Promotional - -<Canvas> - <Story name="Promotional">{PromotionalTemplate.bind({})}</Story> -</Canvas> diff --git a/packages/pharos/src/components/image-card/pharos-image-card.ts b/packages/pharos/src/components/image-card/pharos-image-card.ts index 316998962..bddf300e4 100644 --- a/packages/pharos/src/components/image-card/pharos-image-card.ts +++ b/packages/pharos/src/components/image-card/pharos-image-card.ts @@ -26,9 +26,15 @@ export type ImageCardVariant = | 'selectable' | 'selectable-collection'; -const VARIANTS = ['base', 'collection', 'promotional', 'selectable', 'selectable-collection']; - -const DEFAULT_HEADING_LEVEL = 3; +const VARIANTS = [ + 'base', + 'collection', + 'promotional', + 'selectable', + 'selectable-collection', +] as ImageCardVariant[]; + +const DEFAULT_HEADING_LEVEL = 3 as HeadingLevel; /** * Pharos image card component. diff --git a/packages/pharos/src/components/image-card/pharos-image-card.wc.stories.jsx b/packages/pharos/src/components/image-card/pharos-image-card.wc.stories.jsx new file mode 100644 index 000000000..8b255cfc8 --- /dev/null +++ b/packages/pharos/src/components/image-card/pharos-image-card.wc.stories.jsx @@ -0,0 +1,433 @@ +import { html } from 'lit'; +import { viewports } from '../../pages/shared/viewports'; + +import { items, collections } from '../../pages/item-detail/mocks'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Components/Image Card', + component: 'pharos-image-card', + parameters: { + docs: { page: configureDocsPage('image-card') }, + viewport: viewports, + }, +}; + +const Template = { + render: (args) => + html`<pharos-layout style="margin: 1rem 0" + ><pharos-image-card + title="South Hall" + link="https://www.jstor.org/stable/10.2307/community.26220188" + ?error=${args.error} + ?subtle=${args.subtle} + style="grid-column: span 2" + > + <img id="image" src="./images/item-detail/collection_5.png" alt="south hall" slot="image" /> + <div id="creator" slot="metadata">Tubby, William Bunker (American architect,...</div> + <div id="item-date" slot="metadata">1889-1892 (creation)</div> + <div id="collection" slot="metadata"> + Part of + <pharos-link + href="https://www.jstor.org/site/pratt/buildings-image" + ?on-background=${args.subtle} + >Pratt Institute Buildings Image Collection</pharos-link + > + </div> + </pharos-image-card></pharos-layout + >`, + args: defaultArgs, +}; + +export const Base = { + render: (_) => + html` <pharos-layout tag="ol" style="margin: 1rem 0"> + ${items.map((item, index) => { + return html` <li style="grid-column: span 2"> + <pharos-image-card id="card-${index}" title="Card Title" link="#"> + <img + id="image-${index}" + src="./images/item-detail/${item.image}" + alt="Card Title ${index}" + slot="image" + /> + <div id="creator-${index}" slot="metadata">Creator of the item</div> + <div id="item-date-${index}" slot="metadata">1990-2000</div> + <div id="collection-${index}" slot="metadata"> + Part of + <pharos-link href="https://www.jstor.org/site/pratt/buildings-image" + >An Example Collection + </pharos-link> + </div> + </pharos-image-card> + </li>`; + })} + </pharos-layout>`, +}; + +export const WithSourceTypes = { + render: (_) => + html` <pharos-layout tag="ol" style="margin: 1rem 0"> + ${items.map((item, index) => { + return html` <li style="grid-column: span 2"> + <pharos-image-card id="card-${index}" title="Card Title" link="#" source-type="Image"> + <img + id="image-${index}" + src="./images/item-detail/${item.image}" + alt="Card Title ${index}" + slot="image" + /> + <div id="creator-${index}" slot="metadata">Creator of the item</div> + <div id="item-date-${index}" slot="metadata">1990-2000</div> + <div id="collection-${index}" slot="metadata"> + Part of + <pharos-link href="https://www.jstor.org/site/pratt/buildings-image" + >An Example Collection + </pharos-link> + </div> + </pharos-image-card> + </li>`; + })} + </pharos-layout>`, +}; + +export const Collection = { + render: (_) => + html` <pharos-layout tag="ol" style="margin: 1rem 0"> + ${collections.map((collection, index) => { + return html` <li class="image-card-example__card--collection"> + <pharos-image-card + id="card-${index}" + title="${collection.title}" + link="#" + variant="collection" + > + <img + id="image-${index}" + src="./images/item-detail/${collection.image}" + alt="${collection.title}" + slot="image" + /> + <strong id="items-${index}" slot="metadata">${collection.items} items</strong> + <div id="description-${index}" slot="metadata"> + Selections from the global permanent collection. + </div> + </pharos-image-card> + </li>`; + })} + </pharos-layout>`, +}; + +export const Promotional = { + render: (_) => + html` <pharos-layout style="margin: 1rem 0"> + <div class="image-card-example__card--promotional"> + <pharos-image-card + title="Bring your work to life with images" + link="#" + variant="promotional" + > + <img src="./images/item-detail/open_collection_3.png" alt="" slot="image" /> + <p slot="metadata"> + Harness the power of visual materials—explore more than 3 million images now on JSTOR. + </p> + </pharos-image-card> + <pharos-button variant="secondary">Search for images</pharos-button> + </div> + </pharos-layout>`, +}; + +export const Selectable = { + render: (_) => + html` <pharos-layout tag="ol" style="margin: 1rem 0"> + <li style="grid-column: span 3"> + <pharos-image-card title="Selectable" link="#" source-type="Image" variant="selectable"> + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + <li style="grid-column: span 3"> + <pharos-image-card + title="Subtle select" + link="#" + source-type="Image" + variant="selectable" + subtle-select="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + <li style="grid-column: span 3"> + <pharos-image-card + title="Selected Disabled" + link="#" + source-type="Image" + variant="selectable" + disabled="true" + selected="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + <li style="grid-column: span 3"> + <pharos-image-card + title="Selectable Error State" + link="#" + source-type="Image" + variant="selectable" + error="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + <li style="grid-column: span 3"> + <pharos-image-card + title="Subtle Select Error State" + link="#" + source-type="Image" + variant="selectable" + error="true" + subtle-select="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + </pharos-layout>`, +}; + +export const SubtleSelectable = { + render: () => + html` <pharos-layout tag="ol" style="margin: 1rem 0"> + <li style="grid-column: span 3"> + <pharos-image-card + title="Selectable" + link="#" + source-type="Image" + variant="selectable" + subtle="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + <li style="grid-column: span 3"> + <pharos-image-card + title="Subtle select" + link="#" + source-type="Image" + variant="selectable" + subtle="true" + subtle-select="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + <li style="grid-column: span 3"> + <pharos-image-card + title="Selected Disabled" + link="#" + source-type="Image" + variant="selectable" + subtle="true" + disabled="true" + selected="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + <li style="grid-column: span 3"> + <pharos-image-card + title="Selectable Error State" + link="#" + source-type="Image" + variant="selectable" + subtle="true" + error="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + <li style="grid-column: span 3"> + <pharos-image-card + title="Subtle Select Error State" + link="#" + source-type="Image" + variant="selectable" + subtle="true" + error="true" + subtle-select="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + </pharos-layout>`, +}; + +export const ErrorState = { + ...Template, + args: { + ...Template.args, + error: true, + }, +}; + +export const SubtleState = { + ...Template, + args: { + ...Template.args, + subtle: true, + }, +}; + +export const VisitedTitleLink = { + ...Template, + args: { + ...Template.args, + indicatedLinkVisited: true, + }, +}; + +export const WithActionMenu = { + render: (_) => + html` + <pharos-layout style="margin: 1rem 0"> + <pharos-image-card + title="South Hall" + link="https://www.jstor.org/stable/10.2307/community.26220188" + action-menu="my-dropdown-menu" + style="grid-column: span 2" + > + <img + id="image" + src="./images/item-detail/collection_5.png" + alt="south hall" + slot="image" + /> + <div id="creator" slot="metadata">Tubby, William Bunker (American architect,...</div> + <div id="item-date" slot="metadata">1889-1892 (creation)</div> + <div id="collection" slot="metadata"> + Part of + <pharos-link href="https://www.jstor.org/site/pratt/buildings-image" + >Pratt Institute Buildings Image Collection</pharos-link + > + </div> + </pharos-image-card> + </pharos-layout> + <pharos-dropdown-menu id="my-dropdown-menu"> + <pharos-dropdown-menu-item>Item 1</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 2</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 3</pharos-dropdown-menu-item> + </pharos-dropdown-menu> + `, +}; + +export const WithActionButtonSlot = { + render: (_) => + html` + <pharos-layout style="margin: 1rem 0"> + <pharos-image-card + title="South Hall" + link="https://www.jstor.org/stable/10.2307/community.26220188" + style="grid-column: span 2" + > + <img + id="image" + src="./images/item-detail/collection_5.png" + alt="south hall" + slot="image" + /> + <div id="creator" slot="metadata">Tubby, William Bunker (American architect,...</div> + <div id="item-date" slot="metadata">1889-1892 (creation)</div> + <div id="collection" slot="metadata"> + Part of + <pharos-link href="https://www.jstor.org/site/pratt/buildings-image" + >Pratt Institute Buildings Image Collection</pharos-link + > + </div> + <pharos-button + slot="action-button" + data-dropdown-menu-id="dropdownId" + icon="ellipses-vertical" + icon-condensed + variant="subtle" + ></pharos-button> + </pharos-image-card> + <pharos-dropdown-menu id="dropdownId"> + <pharos-dropdown-menu-item>Item 1</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 2</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Item 3</pharos-dropdown-menu-item> + </pharos-dropdown-menu> + </pharos-layout> + `, +}; + +export const SelectableCollection = { + render: (_) => + html` <pharos-layout tag="ol" style="margin: 1rem 0"> + <li class="image-card-example__card--collection"> + <pharos-image-card title="Selectable" link="#" variant="selectable-collection"> + <img src="./images/item-detail/open_collection_1.png" slot="image" /> + <strong slot="metadata">50 items</strong> + <div slot="metadata">Selections from the global permanent collection.</div> + </pharos-image-card> + </li> + <li class="image-card-example__card--collection"> + <pharos-image-card + title="Subtle Select" + link="#" + variant="selectable-collection" + subtle-select="true" + > + <img src="./images/item-detail/open_collection_2.png" slot="image" /> + <strong slot="metadata">50 items</strong> + <div slot="metadata">Selections from the global permanent collection.</div> + </pharos-image-card> + </li> + <li class="image-card-example__card--collection"> + <pharos-image-card + title="Selected Disabled" + link="#" + variant="selectable-collection" + disabled="true" + selected="true" + > + <img src="./images/item-detail/open_collection_3.png" slot="image" /> + <strong slot="metadata">50 items</strong> + <div slot="metadata">Selections from the global permanent collection.</div> + </pharos-image-card> + </li> + </pharos-layout>`, +}; + +export const Disabled = { + render: (_) => + html` <pharos-layout tag="ol" style="margin: 1rem 0"> + <li style="grid-column: span 3"> + <pharos-image-card title="Disabled" link="#" source-type="Image" disabled="true"> + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + <li style="grid-column: span 3"> + <pharos-image-card + title="Selectable Disabled" + link="#" + source-type="Image" + disabled="true" + variant="selectable" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + <li style="grid-column: span 3"> + <pharos-image-card + title="Selected Disabled" + link="#" + source-type="Image" + variant="selectable" + disabled="true" + selected="true" + > + <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> + </pharos-image-card> + </li> + </pharos-layout>`, +}; diff --git a/packages/pharos/src/components/image-card/pharos-image-card.wc.stories.mdx b/packages/pharos/src/components/image-card/pharos-image-card.wc.stories.mdx deleted file mode 100644 index 2569f1591..000000000 --- a/packages/pharos/src/components/image-card/pharos-image-card.wc.stories.mdx +++ /dev/null @@ -1,465 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { viewports } from '../../pages/shared/viewports'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { items, collections } from '../../pages/item-detail/mocks'; - -<Meta - title="Components/Image Card" - parameters={{ - layout: 'fullscreen', - viewport: { - viewports, - }, - }} -/> - -# Image Card - -<GuidelineLink path="image-card" /> - -export const Template = (args) => html`<pharos-layout style="margin: 1rem 0" - ><pharos-image-card - title="South Hall" - link="https://www.jstor.org/stable/10.2307/community.26220188" - ?error=${args.error} - ?subtle=${args.subtle} - style="grid-column: span 2" - > - <img id="image" src="./images/item-detail/collection_5.png" alt="south hall" slot="image" /> - <div id="creator" slot="metadata">Tubby, William Bunker (American architect,...</div> - <div id="item-date" slot="metadata">1889-1892 (creation)</div> - <div id="collection" slot="metadata"> - Part of - <pharos-link - href="https://www.jstor.org/site/pratt/buildings-image" - ?on-background=${args.subtle} - >Pratt Institute Buildings Image Collection</pharos-link - > - </div> - </pharos-image-card></pharos-layout ->`; - -export const MultipleTemplate = () => html`<pharos-layout tag="ol" style="margin: 1rem 0"> - ${items.map((item, index) => { - return html`<li style="grid-column: span 2"> - <pharos-image-card id="card-${index}" title="Card Title" link="#"> - <img - id="image-${index}" - src="./images/item-detail/${item.image}" - alt="Card Title ${index}" - slot="image" - /> - <div id="creator-${index}" slot="metadata">Creator of the item</div> - <div id="item-date-${index}" slot="metadata">1990-2000</div> - <div id="collection-${index}" slot="metadata"> - Part of - <pharos-link href="https://www.jstor.org/site/pratt/buildings-image" - >An Example Collection</pharos-link - > - </div> - </pharos-image-card> - </li>`; - })}</pharos-layout ->`; - -export const SourceTypesTemplate = () => html`<pharos-layout tag="ol" style="margin: 1rem 0"> - ${items.map((item, index) => { - return html`<li style="grid-column: span 2"> - <pharos-image-card id="card-${index}" title="Card Title" link="#" source-type="Image"> - <img - id="image-${index}" - src="./images/item-detail/${item.image}" - alt="Card Title ${index}" - slot="image" - /> - <div id="creator-${index}" slot="metadata">Creator of the item</div> - <div id="item-date-${index}" slot="metadata">1990-2000</div> - <div id="collection-${index}" slot="metadata"> - Part of - <pharos-link href="https://www.jstor.org/site/pratt/buildings-image" - >An Example Collection</pharos-link - > - </div> - </pharos-image-card> - </li>`; - })}</pharos-layout ->`; - -export const CollectionsTemplate = () => html`<pharos-layout tag="ol" style="margin: 1rem 0"> - ${collections.map((collection, index) => { - return html`<li class="image-card-example__card--collection"> - <pharos-image-card - id="card-${index}" - title="${collection.title}" - link="#" - variant="collection" - > - <img - id="image-${index}" - src="./images/item-detail/${collection.image}" - alt="${collection.title}" - slot="image" - /> - <strong id="items-${index}" slot="metadata">${collection.items} items</strong> - <div id="description-${index}" slot="metadata"> - Selections from the global permanent collection. - </div> - </pharos-image-card> - </li>`; - })}</pharos-layout ->`; - -export const PromotionalTemplate = () => html`<pharos-layout style="margin: 1rem 0"> - <div class="image-card-example__card--promotional"> - <pharos-image-card title="Bring your work to life with images" link="#" variant="promotional"> - <img src="./images/item-detail/open_collection_3.png" alt="" slot="image" /> - <p slot="metadata"> - Harness the power of visual materials—explore more than 3 million images now on JSTOR. - </p> - </pharos-image-card> - <pharos-button variant="secondary">Search for images</pharos-button> - </div> -</pharos-layout>`; - -export const Selectable = () => html`<pharos-layout tag="ol" style="margin: 1rem 0"> - <li style="grid-column: span 3"> - <pharos-image-card title="Selectable" link="#" source-type="Image" variant="selectable"> - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> - <li style="grid-column: span 3"> - <pharos-image-card - title="Subtle select" - link="#" - source-type="Image" - variant="selectable" - subtle-select="true" - > - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> - <li style="grid-column: span 3"> - <pharos-image-card - title="Selected Disabled" - link="#" - source-type="Image" - variant="selectable" - disabled="true" - selected="true" - > - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> - <li style="grid-column: span 3"> - <pharos-image-card - title="Selectable Error State" - link="#" - source-type="Image" - variant="selectable" - error="true" - > - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> - <li style="grid-column: span 3"> - <pharos-image-card - title="Subtle Select Error State" - link="#" - source-type="Image" - variant="selectable" - error="true" - subtle-select="true" - > - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> -</pharos-layout>`; - -export const SubtleSelectable = () => html`<pharos-layout tag="ol" style="margin: 1rem 0"> - <li style="grid-column: span 3"> - <pharos-image-card - title="Selectable" - link="#" - source-type="Image" - variant="selectable" - subtle="true" - > - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> - <li style="grid-column: span 3"> - <pharos-image-card - title="Subtle select" - link="#" - source-type="Image" - variant="selectable" - subtle="true" - subtle-select="true" - > - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> - <li style="grid-column: span 3"> - <pharos-image-card - title="Selected Disabled" - link="#" - source-type="Image" - variant="selectable" - subtle="true" - disabled="true" - selected="true" - > - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> - <li style="grid-column: span 3"> - <pharos-image-card - title="Selectable Error State" - link="#" - source-type="Image" - variant="selectable" - subtle="true" - error="true" - > - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> - <li style="grid-column: span 3"> - <pharos-image-card - title="Subtle Select Error State" - link="#" - source-type="Image" - variant="selectable" - subtle="true" - error="true" - subtle-select="true" - > - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> -</pharos-layout>`; - -<Canvas> - <Story name="Base">{MultipleTemplate.bind({})}</Story> -</Canvas> - -## API - -<ArgsTable of="pharos-image-card" /> - -# With Source Types - -<Canvas> - <Story name="With Source Types">{SourceTypesTemplate.bind()}</Story> -</Canvas> - -# Error State - -<Canvas> - <Story name="Error State" args={{ error: true }}> - {Template.bind({})} - </Story> -</Canvas> - -# Subtle State - -<Canvas> - <Story name="Subtle State" args={{ subtle: true }}> - {Template.bind({})} - </Story> -</Canvas> - -# Subtle Selectable - -<Canvas> - <Story name="Subtle Selectable">{SubtleSelectable.bind({})}</Story> -</Canvas> - -# Visited Title Link - -<Canvas> - <Story name="Visited Title Link" args={{ indicateLinkVisited: true }}> - {Template.bind({})} - </Story> -</Canvas> - -# With Action Menu - -<Canvas> - <Story name="With Action Menu"> - {html` - <pharos-layout style="margin: 1rem 0"> - <pharos-image-card - title="South Hall" - link="https://www.jstor.org/stable/10.2307/community.26220188" - action-menu="my-dropdown-menu" - style="grid-column: span 2" - > - <img - id="image" - src="./images/item-detail/collection_5.png" - alt="south hall" - slot="image" - /> - <div id="creator" slot="metadata">Tubby, William Bunker (American architect,...</div> - <div id="item-date" slot="metadata">1889-1892 (creation)</div> - <div id="collection" slot="metadata"> - Part of - <pharos-link href="https://www.jstor.org/site/pratt/buildings-image" - >Pratt Institute Buildings Image Collection</pharos-link - > - </div> - </pharos-image-card> - </pharos-layout> - <pharos-dropdown-menu id="my-dropdown-menu"> - <pharos-dropdown-menu-item>Item 1</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 2</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 3</pharos-dropdown-menu-item> - </pharos-dropdown-menu> - `} - </Story> -</Canvas> - -# With Action Button Slot - -<Canvas> - <Story name="With Action Button Slot"> - {html` - <pharos-layout style="margin: 1rem 0"> - <pharos-image-card - title="South Hall" - link="https://www.jstor.org/stable/10.2307/community.26220188" - style="grid-column: span 2" - > - <img - id="image" - src="./images/item-detail/collection_5.png" - alt="south hall" - slot="image" - /> - <div id="creator" slot="metadata">Tubby, William Bunker (American architect,...</div> - <div id="item-date" slot="metadata">1889-1892 (creation)</div> - <div id="collection" slot="metadata"> - Part of - <pharos-link href="https://www.jstor.org/site/pratt/buildings-image" - >Pratt Institute Buildings Image Collection</pharos-link - > - </div> - <pharos-button - slot="action-button" - data-dropdown-menu-id="dropdownId" - icon="ellipses-vertical" - icon-condensed - variant="subtle" - ></pharos-button> - </pharos-image-card> - <pharos-dropdown-menu id="dropdownId"> - <pharos-dropdown-menu-item>Item 1</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 2</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Item 3</pharos-dropdown-menu-item> - </pharos-dropdown-menu> - </pharos-layout> - `} - </Story> -</Canvas> - -# Collection - -<Canvas> - <Story name="Collection">{CollectionsTemplate.bind({})}</Story> -</Canvas> - -# Promotional - -<Canvas> - <Story name="Promotional">{PromotionalTemplate.bind({})}</Story> -</Canvas> - -# Selectable - -<Canvas> - <Story name="Selectable">{Selectable.bind({})}</Story> -</Canvas> - -# Selectable Collection - -<Canvas> - <Story name="Selectable Collection">{SelectableCollectionsTemplate.bind({})}</Story> -</Canvas> - -export const SelectableCollectionsTemplate = () => html` <pharos-layout - tag="ol" - style="margin: 1rem 0" -> - <li class="image-card-example__card--collection"> - <pharos-image-card title="Selectable" link="#" variant="selectable-collection"> - <img src="./images/item-detail/open_collection_1.png" slot="image" /> - <strong slot="metadata">50 items</strong> - <div slot="metadata">Selections from the global permanent collection.</div> - </pharos-image-card> - </li> - <li class="image-card-example__card--collection"> - <pharos-image-card - title="Subtle Select" - link="#" - variant="selectable-collection" - subtle-select="true" - > - <img src="./images/item-detail/open_collection_2.png" slot="image" /> - <strong slot="metadata">50 items</strong> - <div slot="metadata">Selections from the global permanent collection.</div> - </pharos-image-card> - </li> - <li class="image-card-example__card--collection"> - <pharos-image-card - title="Selected Disabled" - link="#" - variant="selectable-collection" - disabled="true" - selected="true" - > - <img src="./images/item-detail/open_collection_3.png" slot="image" /> - <strong slot="metadata">50 items</strong> - <div slot="metadata">Selections from the global permanent collection.</div> - </pharos-image-card> - </li> -</pharos-layout>`; - -# Disabled - -<Canvas> - <Story name="Disabled">{Disabled.bind({})}</Story> -</Canvas> - -export const Disabled = () => html`<pharos-layout tag="ol" style="margin: 1rem 0"> - <li style="grid-column: span 3"> - <pharos-image-card title="Disabled" link="#" source-type="Image" disabled="true"> - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> - <li style="grid-column: span 3"> - <pharos-image-card - title="Selectable Disabled" - link="#" - source-type="Image" - disabled="true" - variant="selectable" - > - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> - <li style="grid-column: span 3"> - <pharos-image-card - title="Selected Disabled" - link="#" - source-type="Image" - variant="selectable" - disabled="true" - selected="true" - > - <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> - </pharos-image-card> - </li> -</pharos-layout>`; diff --git a/packages/pharos/src/components/image-card/storyArgs.ts b/packages/pharos/src/components/image-card/storyArgs.ts new file mode 100644 index 000000000..ddc485980 --- /dev/null +++ b/packages/pharos/src/components/image-card/storyArgs.ts @@ -0,0 +1,5 @@ +export const defaultArgs = { + error: false, + subtle: false, + indicatedLinkVisited: false, +}; diff --git a/packages/pharos/src/components/input-group/PharosInputGroup.react.stories.mdx b/packages/pharos/src/components/input-group/PharosInputGroup.react.stories.jsx similarity index 76% rename from packages/pharos/src/components/input-group/PharosInputGroup.react.stories.mdx rename to packages/pharos/src/components/input-group/PharosInputGroup.react.stories.jsx index 013ec4bdd..24e44f853 100644 --- a/packages/pharos/src/components/input-group/PharosInputGroup.react.stories.mdx +++ b/packages/pharos/src/components/input-group/PharosInputGroup.react.stories.jsx @@ -1,24 +1,22 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; +import { + PharosInputGroup, + PharosInputGroupSelect, + PharosButton, + PharosIcon, +} from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; -import { PharosInputGroup } from '../../react-components/input-group/pharos-input-group'; -import { PharosInputGroupSelect } from '../../react-components/input-group/pharos-input-group-select'; -import { PharosButton } from '../../react-components/button/pharos-button'; -import { PharosIcon } from '../../react-components/icon/pharos-icon'; +export default { + title: 'Forms/Input Group', + component: PharosInputGroup, + subcomponents: { PharosInputGroupSelect }, + parameters: { + docs: { page: configureDocsPage('input-group') }, + }, +}; -<Meta - title="Forms/Input Group" - parameters={{ - component: PharosInputGroup, - }} -/> - -# Input Group - -<GuidelineLink path="input-group" /> - -<Canvas withToolbar> - <Story name="Base"> +export const Base = { + render: (_) => ( <div style={{ display: 'grid', @@ -36,17 +34,11 @@ import { PharosIcon } from '../../react-components/icon/pharos-icon'; ></PharosButton> </PharosInputGroup> </div> - </Story> -</Canvas> - -## API + ), +}; -<ArgsTable of={PharosInputGroup} /> - -# Prominent - -<Canvas withToolbar> - <Story name="Prominent"> +export const Prominent = { + render: (_) => ( <div style={{ display: 'grid', @@ -64,13 +56,11 @@ import { PharosIcon } from '../../react-components/icon/pharos-icon'; ></PharosButton> </PharosInputGroup> </div> - </Story> -</Canvas> + ), +}; -# Validity - -<Canvas withToolbar> - <Story name="Validity"> +export const Validity = { + render: (_) => ( <div style={{ display: 'grid', @@ -97,13 +87,11 @@ import { PharosIcon } from '../../react-components/icon/pharos-icon'; ></PharosButton> </PharosInputGroup> </div> - </Story> -</Canvas> - -# Composition + ), +}; -<Canvas withToolbar> - <Story name="Composition"> +export const Composition = { + render: (_) => ( <div style={{ display: 'grid', @@ -155,5 +143,5 @@ import { PharosIcon } from '../../react-components/icon/pharos-icon'; <span slot="label">Prepend</span> </PharosInputGroup> </div> - </Story> -</Canvas> + ), +}; diff --git a/packages/pharos/src/components/input-group/pharos-input-group.wc.stories.mdx b/packages/pharos/src/components/input-group/pharos-input-group.wc.stories.jsx similarity index 54% rename from packages/pharos/src/components/input-group/pharos-input-group.wc.stories.mdx rename to packages/pharos/src/components/input-group/pharos-input-group.wc.stories.jsx index 1e3296b25..a94e93eca 100644 --- a/packages/pharos/src/components/input-group/pharos-input-group.wc.stories.mdx +++ b/packages/pharos/src/components/input-group/pharos-input-group.wc.stories.jsx @@ -1,16 +1,19 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; -<Meta title="Forms/Input Group" /> +import { configureDocsPage } from '@config/docsPageConfig'; -# Input Group +export default { + title: 'Forms/Input Group', + component: 'pharos-input-group', + subcomponents: { PharosInputGroupSelect: 'pharos-input-group-select' }, + parameters: { + docs: { page: configureDocsPage('input-group') }, + }, +}; -<GuidelineLink path="input-group" /> - -<Canvas> - <Story name="Base"> - {html` +export const Base = { + render: (_) => + html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 524px;"> <pharos-input-group name="my-input-group"> <span slot="label">Search</span> @@ -22,19 +25,12 @@ import { GuidelineLink } from '@config/GuidelineLink'; ></pharos-button> </pharos-input-group> </div> - `} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-input-group" /> + `, +}; -# Prominent - -<Canvas> - <Story name="Prominent"> - {html` +export const Prominent = { + render: (_) => + html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 524px;"> <pharos-input-group name="my-input-group" variant="prominent"> <span slot="label">Basic</span> @@ -87,15 +83,12 @@ import { GuidelineLink } from '@config/GuidelineLink'; ></pharos-button> </pharos-input-group> </div> - `} - </Story> -</Canvas> - -# Validity + `, +}; -<Canvas> - <Story name="Validity"> - {html` +export const Validity = { + render: (_) => + html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 524px;"> <pharos-input-group invalidated value="not an email" name="my-input-group"> <span slot="label">Email</span> @@ -116,62 +109,56 @@ import { GuidelineLink } from '@config/GuidelineLink'; ></pharos-button> </pharos-input-group> </div> - `} - </Story> -</Canvas> + `, +}; -# Composition - -<Canvas> - <Story name="Composition"> - {() => { - return html` - <div style="display: grid; grid-gap: 1rem; grid-template-columns: 524px;"> - <pharos-input-group name="my-input-group-icon"> - <span slot="label">With icons</span> - <pharos-icon id="calendar" name="calendar"></pharos-icon> - </pharos-input-group> - <pharos-input-group name="my-input-group-buttons"> - <span slot="label">Multiple buttons</span> - <pharos-button - name="close-button" - icon="close" - variant="subtle" - label="close" - ></pharos-button> - <pharos-button - name="search-button" - icon="search" - variant="subtle" - label="search" - ></pharos-button> - </pharos-input-group> - <pharos-input-group name="my-input-group-select"> - <span slot="label">With select</span> - <pharos-input-group-select name="my-group-select" hide-label> - <span slot="label">Search</span> - <option value="">Search all content</option> - <option value="book">Search within this book</option> - </pharos-input-group-select> - <pharos-button - name="search-with-select-button" - icon="search" - variant="subtle" - label="search" - ></pharos-button> - </pharos-input-group> - <pharos-input-group name="my-input-group-prepend"> - <pharos-button - name="book-button" - slot="prepend" - icon="book" - variant="subtle" - label="book" - ></pharos-button> - <span slot="label">Prepend</span> - </pharos-input-group> - </div> - `; - }} - </Story> -</Canvas> +export const Composition = { + render: (_) => + html` + <div style="display: grid; grid-gap: 1rem; grid-template-columns: 524px;"> + <pharos-input-group name="my-input-group-icon"> + <span slot="label">With icons</span> + <pharos-icon id="calendar" name="calendar"></pharos-icon> + </pharos-input-group> + <pharos-input-group name="my-input-group-buttons"> + <span slot="label">Multiple buttons</span> + <pharos-button + name="close-button" + icon="close" + variant="subtle" + label="close" + ></pharos-button> + <pharos-button + name="search-button" + icon="search" + variant="subtle" + label="search" + ></pharos-button> + </pharos-input-group> + <pharos-input-group name="my-input-group-select"> + <span slot="label">With select</span> + <pharos-input-group-select name="my-group-select" hide-label> + <span slot="label">Search</span> + <option value="">Search all content</option> + <option value="book">Search within this book</option> + </pharos-input-group-select> + <pharos-button + name="search-with-select-button" + icon="search" + variant="subtle" + label="search" + ></pharos-button> + </pharos-input-group> + <pharos-input-group name="my-input-group-prepend"> + <pharos-button + name="book-button" + slot="prepend" + icon="book" + variant="subtle" + label="book" + ></pharos-button> + <span slot="label">Prepend</span> + </pharos-input-group> + </div> + `, +}; diff --git a/packages/pharos/src/components/layout/PharosLayout.react.stories.jsx b/packages/pharos/src/components/layout/PharosLayout.react.stories.jsx new file mode 100644 index 000000000..fa421ad08 --- /dev/null +++ b/packages/pharos/src/components/layout/PharosLayout.react.stories.jsx @@ -0,0 +1,129 @@ +import { Fragment } from 'react'; +import { viewports } from '../../pages/shared/viewports'; + +import { PharosLayout, PharosSidenav, PharosLink } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Layout', + component: PharosLayout, + parameters: { + docs: { page: configureDocsPage('layout') }, + viewport: { + viewports, + }, + layout: 'fullscreen', + }, +}; + +const _gridItems = (rows) => { + const arr = []; + rows.forEach((items) => { + for (let i = 0; i < items; i++) { + arr.push({ span: 12 / items, cols: items }); + } + }); + return arr.map((item, index) => ( + <div key={index} className="layout-example__item" style={{ gridColumn: `span ${item.span}` }}> + {item.cols} + </div> + )); +}; + +const _comboItems = (rows) => { + const arr = []; + rows.forEach((item) => { + arr.push({ span: item, cols: item }); + arr.push({ span: 12 - item, cols: 12 - item }); + }); + return arr.map((item, index) => ( + <div key={index} className="layout-example__item" style={{ gridColumn: `span ${item.span}` }}> + Span {item.cols} + </div> + )); +}; + +const _gridColumns = () => { + const arr = []; + for (let i = 1; i <= 12; i++) { + arr.push(<div className="layout-example__column">{i}</div>); + } + return arr; +}; + +export const OneColumn = { + name: 'One column', + render: (_) => <PharosLayout>{_gridColumns()}</PharosLayout>, +}; + +export const OneColumnWithSidenav = { + name: 'One column with sidenav', + render: (_) => ( + <div + style={{ + display: 'grid', + gridTemplateAreas: "'sidenav main'", + gridTemplateColumns: 'max-content 1fr', + }} + > + <PharosSidenav style={{ gridArea: 'sidenav' }}> + <PharosLink slot="top" href="/" id="jstor-logo"> + <img src="./images/jstor-logo-inverse.svg" alt="Pharos Home" width="72" height="100" /> + </PharosLink> + </PharosSidenav> + <main style={{ gridArea: 'main' }}> + <PharosLayout preset="1-col--sidenav">{_gridColumns()}</PharosLayout> + </main> + </div> + ), + parameters: { docs: { disable: true } }, +}; + +export const OneColumnWithSidenavAndComfySpacing = { + name: 'One column with sidenav and comfy spacing', + render: (_) => ( + <div + style={{ + display: 'grid', + gridTemplateAreas: "'sidenav main'", + gridTemplateColumns: 'max-content 1fr', + }} + > + <PharosSidenav style={{ gridArea: 'sidenav' }}> + <PharosLink slot="top" href="/" id="jstor-logo"> + <img src="./images/jstor-logo-inverse.svg" alt="Pharos Home" width="72" height="100" /> + </PharosLink> + </PharosSidenav> + <main style={{ gridArea: 'main' }}> + <PharosLayout preset="1-col--sidenav-comfy">{_gridColumns()}</PharosLayout> + </main> + </div> + ), + parameters: { docs: { disable: true } }, +}; + +export const TwoColumn = { + name: 'Two column', + render: (_) => ( + <Fragment> + <PharosLayout preset="2-col"> + <div className="layout-example__container--first"></div> + <div className="layout-example__container--second"></div> + <div className="layout-example__container--third"></div> + </PharosLayout> + <PharosLayout preset="2-col" style={{ position: 'absolute', top: 0, width: '100%' }}> + {_gridColumns()} + </PharosLayout> + </Fragment> + ), +}; + +export const ColumnLayouts = { + name: 'Column layouts', + render: (_) => ( + <PharosLayout style={{ margin: '1rem 0' }}> + {_gridItems([1, 2, 3, 4, 6])} + {_comboItems([7, 8, 9, 10])} + </PharosLayout> + ), +}; diff --git a/packages/pharos/src/components/layout/PharosLayout.react.stories.mdx b/packages/pharos/src/components/layout/PharosLayout.react.stories.mdx deleted file mode 100644 index 93808546f..000000000 --- a/packages/pharos/src/components/layout/PharosLayout.react.stories.mdx +++ /dev/null @@ -1,145 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { Fragment } from 'react'; -import { viewports } from '../../pages/shared/viewports'; - -import { PharosLayout } from '../../react-components/layout/pharos-layout'; -import { PharosSidenav } from '../../react-components/sidenav/pharos-sidenav'; -import { PharosLink } from '../../react-components/link/pharos-link'; - -<Meta - title="Components/Layout" - parameters={{ - component: PharosLayout, - viewport: { - viewports, - }, - layout: 'fullscreen', - }} -/> - -export const gridItems = (rows) => { - const arr = []; - rows.forEach((items) => { - for (let i = 0; i < items; i++) { - arr.push({ span: 12 / items, cols: items }); - } - }); - return arr.map((item, index) => ( - <div key={index} className="layout-example__item" style={{ gridColumn: `span ${item.span}` }}> - {item.cols} - </div> - )); -}; - -export const comboItems = (rows) => { - const arr = []; - rows.forEach((item) => { - arr.push({ span: item, cols: item }); - arr.push({ span: 12 - item, cols: 12 - item }); - }); - return arr.map((item, index) => ( - <div key={index} className="layout-example__item" style={{ gridColumn: `span ${item.span}` }}> - Span {item.cols} - </div> - )); -}; - -export const gridColumns = () => { - const arr = []; - for (let i = 1; i <= 12; i++) { - arr.push(<div className="layout-example__column">{i}</div>); - } - return arr; -}; - -# Layout - -<Canvas> - <Story name="One column">{<PharosLayout>{gridColumns()}</PharosLayout>}</Story> -</Canvas> - -## API - -<ArgsTable of={PharosLayout} /> - -# One column with sidenav - -<Canvas> - <Story name="One column with sidenav" parameters={{ docs: { disable: true } }}> - { - <div - style={{ - display: 'grid', - gridTemplateAreas: "'sidenav main'", - gridTemplateColumns: 'max-content 1fr', - }} - > - <PharosSidenav style={{ gridArea: 'sidenav' }}> - <PharosLink slot="top" href="/" id="jstor-logo"> - <img src="./images/jstor-logo-inverse.svg" alt="Pharos Home" width="72" height="100" /> - </PharosLink> - </PharosSidenav> - <main style={{ gridArea: 'main' }}> - <PharosLayout preset="1-col--sidenav">{gridColumns()}</PharosLayout> - </main> - </div> - } - </Story> -</Canvas> - -# One column with sidenav and comfy spacing - -<Canvas> - <Story name="One column with sidenav and comfy spacing" parameters={{ docs: { disable: true } }}> - { - <div - style={{ - display: 'grid', - gridTemplateAreas: "'sidenav main'", - gridTemplateColumns: 'max-content 1fr', - }} - > - <PharosSidenav style={{ gridArea: 'sidenav' }}> - <PharosLink slot="top" href="/" id="jstor-logo"> - <img src="./images/jstor-logo-inverse.svg" alt="Pharos Home" width="72" height="100" /> - </PharosLink> - </PharosSidenav> - <main style={{ gridArea: 'main' }}> - <PharosLayout preset="1-col--sidenav-comfy">{gridColumns()}</PharosLayout> - </main> - </div> - } - </Story> -</Canvas> - -# Two column - -<Canvas> - <Story name="Two column"> - { - <Fragment> - <PharosLayout preset="2-col"> - <div className="layout-example__container--first"></div> - <div className="layout-example__container--second"></div> - <div className="layout-example__container--third"></div> - </PharosLayout> - <PharosLayout preset="2-col" style={{ position: 'absolute', top: 0, width: '100%' }}> - {gridColumns()} - </PharosLayout> - </Fragment> - } - </Story> -</Canvas> - -# Column layouts - -<Canvas> - <Story name="Column layouts"> - { - <PharosLayout style={{ margin: '1rem 0' }}> - {gridItems([1, 2, 3, 4, 6])} - {comboItems([7, 8, 9, 10])} - </PharosLayout> - } - </Story> -</Canvas> diff --git a/packages/pharos/src/components/layout/pharos-layout.ts b/packages/pharos/src/components/layout/pharos-layout.ts index 206afff1f..cb87236e7 100644 --- a/packages/pharos/src/components/layout/pharos-layout.ts +++ b/packages/pharos/src/components/layout/pharos-layout.ts @@ -8,7 +8,7 @@ import { PharosSpacingThreeAndAHalfX } from '../../styles/variables'; export type LayoutPreset = '1-col' | '1-col--sidenav' | '1-col--sidenav-comfy' | '2-col'; -const PRESETS = ['1-col', '1-col--sidenav', '1-col--sidenav-comfy', '2-col']; +const PRESETS = ['1-col', '1-col--sidenav', '1-col--sidenav-comfy', '2-col'] as LayoutPreset[]; /** * Pharos layout component. diff --git a/packages/pharos/src/components/layout/pharos-layout.wc.stories.mdx b/packages/pharos/src/components/layout/pharos-layout.wc.stories.jsx similarity index 65% rename from packages/pharos/src/components/layout/pharos-layout.wc.stories.mdx rename to packages/pharos/src/components/layout/pharos-layout.wc.stories.jsx index 90d911536..a77c83d5d 100644 --- a/packages/pharos/src/components/layout/pharos-layout.wc.stories.mdx +++ b/packages/pharos/src/components/layout/pharos-layout.wc.stories.jsx @@ -1,19 +1,22 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; import { html } from 'lit'; + import { viewports, breakpoints } from '../../pages/shared/viewports'; +import { configureDocsPage } from '@config/docsPageConfig'; -<Meta - title="Components/Layout" - parameters={{ +export default { + title: 'Components/Layout', + component: 'pharos-layout', + parameters: { + docs: { page: configureDocsPage('layout') }, chromatic: { viewports: breakpoints }, - layout: 'fullscreen', viewport: { viewports, }, - }} -/> + layout: 'fullscreen', + }, +}; -export const gridItems = (rows) => { +const _gridItems = (rows) => { const arr = []; rows.forEach((items) => { for (let i = 0; i < items; i++) { @@ -27,7 +30,7 @@ export const gridItems = (rows) => { ); }; -export const comboItems = (rows) => { +const _comboItems = (rows) => { const arr = []; rows.forEach((item) => { arr.push({ span: item, cols: item }); @@ -40,7 +43,7 @@ export const comboItems = (rows) => { ); }; -export const gridColumns = () => { +const _gridColumns = () => { const arr = []; for (let i = 1; i <= 12; i++) { arr.push(html`<div class="layout-example__column">${i}</div>`); @@ -48,21 +51,15 @@ export const gridColumns = () => { return arr; }; -# Layout - -<Canvas> - <Story name="One column">{html` <pharos-layout>${gridColumns()}</pharos-layout> `}</Story> -</Canvas> - -## API - -<ArgsTable of="pharos-layout" /> - -# One column with sidenav +export const OneColumn = { + name: 'One column', + render: (_) => html` <pharos-layout>${_gridColumns()}</pharos-layout> `, +}; -<Canvas> - <Story name="One column with sidenav" parameters={{ docs: { disable: true } }}> - {html` +export const OneColumnWithSidenav = { + name: 'One column with sidenav', + render: (_) => + html` <div style="display: grid; grid-template-areas: 'sidenav main'; grid-template-columns: max-content 1fr" > @@ -72,18 +69,16 @@ export const gridColumns = () => { </pharos-link> </pharos-sidenav> <main style="grid-area: main"> - <pharos-layout preset="1-col--sidenav">${gridColumns()}</pharos-layout> + <pharos-layout preset="1-col--sidenav">${_gridColumns()}</pharos-layout> </main> </div> - `} - </Story> -</Canvas> - -# One column with sidenav and comfy spacing + `, +}; -<Canvas> - <Story name="One column with sidenav and comfy spacing" parameters={{ docs: { disable: true } }}> - {html` +export const OneColumnWithSidenavAndComfySpacing = { + name: 'One column with sidenav and comfy spacing', + render: (_) => + html` <div style="display: grid; grid-template-areas: 'sidenav main'; grid-template-columns: max-content 1fr" > @@ -93,38 +88,33 @@ export const gridColumns = () => { </pharos-link> </pharos-sidenav> <main style="grid-area: main"> - <pharos-layout preset="1-col--sidenav-comfy">${gridColumns()}</pharos-layout> + <pharos-layout preset="1-col--sidenav-comfy">${_gridColumns()}</pharos-layout> </main> </div> - `} - </Story> -</Canvas> - -# Two column + `, +}; -<Canvas> - <Story name="Two column"> - {html` +export const TwoColumn = { + name: 'Two column', + render: (_) => + html` <pharos-layout preset="2-col"> <div class="layout-example__container--first"></div> <div class="layout-example__container--second"></div> <div class="layout-example__container--third"></div> </pharos-layout> <pharos-layout preset="2-col" style="position: absolute; top: 0; width: 100%" - >${gridColumns()}</pharos-layout + >${_gridColumns()}</pharos-layout > - `} - </Story> -</Canvas> - -# Column layouts + `, +}; -<Canvas> - <Story name="Column layouts"> - {html` +export const ColumnLayouts = { + name: 'Column layouts', + render: (_) => + html` <pharos-layout style="margin: 1rem 0"> - ${gridItems([1, 2, 3, 4, 6])} ${comboItems([7, 8, 9, 10])} + ${_gridItems([1, 2, 3, 4, 6])} ${_comboItems([7, 8, 9, 10])} </pharos-layout> - `} - </Story> -</Canvas> + `, +}; diff --git a/packages/pharos/src/components/link/PharosLink.react.stories.jsx b/packages/pharos/src/components/link/PharosLink.react.stories.jsx new file mode 100644 index 000000000..92732af4e --- /dev/null +++ b/packages/pharos/src/components/link/PharosLink.react.stories.jsx @@ -0,0 +1,125 @@ +import { Fragment } from 'react'; + +import { PharosLink } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Components/Link', + component: PharosLink, + parameters: { + docs: { page: configureDocsPage('link') }, + }, +}; + +export const Base = { + render: (_) => ( + <PharosLink + bold={args.bold} + download={args.download} + flex={args.flex} + href={args.href} + hreflang={args.hreflang} + indicateVisited={args.indicateVisited} + label={args.label} + noHover={args.noHover} + onBackground={args.onBackground} + ping={args.ping} + rel={args.rel} + skip={args.skip} + subtle={args.subtle} + target={args.target} + type={args.type} + > + {args.text} + </PharosLink> + ), + args: defaultArgs, +}; + +export const VisitedLink = { + render: (_) => ( + <div style={{ marginBottom: '1rem' }}> + <PharosLink href="https://www.google.com" target="_blank" indicateVisited> + Visited link + </PharosLink> + </div> + ), +}; + +export const VisitedLinkHeading = { + render: (_) => ( + <div style={{ marginBottom: '1rem' }}> + <PharosLink href="https://www.google.com" target="_blank" indicateVisited> + <PharosHeading level="1"> Visited link heading </PharosHeading> + </PharosLink> + </div> + ), +}; + +export const Button = { + render: (_) => ( + <Fragment> + <div style={{ marginBottom: '1rem' }}> + <PharosLink name="primary" primary> + I am a button + </PharosLink> + </div> + <div + style={{ + backgroundColor: '#000000', + padding: '1rem', + marginBottom: '1rem', + }} + > + <PharosLink name="on-background" onBackground> + On compliant background + </PharosLink> + </div> + </Fragment> + ), +}; + +export const Variants = { + render: (_) => ( + <Fragment> + <div style={{ marginBottom: '1rem' }}> + <PharosLink name="primary" href="#"> + Primary link + </PharosLink> + </div> + <div style={{ marginBottom: '1rem' }}> + <PharosLink name="subtle" href="#" subtle> + Subtle link + </PharosLink> + </div> + <div style={{ width: '100px', marginBottom: '1rem' }}> + <PharosLink name="multi" href="#"> + I have text that spans multiple lines + </PharosLink> + </div> + <div + style={{ + backgroundColor: '#000000', + padding: '1rem', + marginBottom: '1rem', + }} + > + <PharosLink name="on-background" href="#" onBackground> + On compliant background + </PharosLink> + </div> + <div + style={{ + backgroundColor: '#000000', + padding: '1rem', + marginBottom: '1rem', + }} + > + <PharosLink name="on-background-subtle" href="#" onBackground subtle> + On compliant background with subtle + </PharosLink> + </div> + </Fragment> + ), +}; diff --git a/packages/pharos/src/components/link/PharosLink.react.stories.mdx b/packages/pharos/src/components/link/PharosLink.react.stories.mdx deleted file mode 100644 index 970bfa967..000000000 --- a/packages/pharos/src/components/link/PharosLink.react.stories.mdx +++ /dev/null @@ -1,116 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosLink } from '../../react-components/link/pharos-link'; - -<Meta - title="Components/Link" - parameters={{ - component: PharosLink, - }} -/> - -# Link - -<GuidelineLink path="link" /> - -<Canvas withToolbar> - <Story name="Base"> - <PharosLink href="#">I am a link</PharosLink> - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosLink} /> - -# Visited Link - -<Canvas withToolbar> - <Story name="Visited Link"> - <div style={{ marginBottom: '1rem' }}> - <PharosLink href="https://www.google.com" target="_blank" indicateVisited> - Visited link - </PharosLink> - </div> - </Story> -</Canvas> - -# Visited Link Heading - -<Canvas withToolbar> - <Story name="Visited Link Heading"> - <div style={{ marginBottom: '1rem' }}> - <PharosLink href="https://www.google.com" target="_blank" indicateVisited> - <PharosHeading level="1"> Visited link heading </PharosHeading> - </PharosLink> - </div> - </Story> -</Canvas> - -# Button - -<Canvas withToolbar> - <Story name="Button"> - <div style={{ marginBottom: '1rem' }}> - <PharosLink name="primary" primary> - I am a button - </PharosLink> - </div> - <div - style={{ - backgroundColor: '#000000', - padding: '1rem', - marginBottom: '1rem', - }} - > - <PharosLink name="on-background" onBackground> - On compliant background - </PharosLink> - </div> - </Story> -</Canvas> - -# Variants - -<Canvas withToolbar> - <Story name="Variants"> - <div style={{ marginBottom: '1rem' }}> - <PharosLink name="primary" href="#"> - Primary link - </PharosLink> - </div> - <div style={{ marginBottom: '1rem' }}> - <PharosLink name="subtle" href="#" subtle> - Subtle link - </PharosLink> - </div> - <div style={{ width: '100px', marginBottom: '1rem' }}> - <PharosLink name="multi" href="#"> - I have text that spans multiple lines - </PharosLink> - </div> - <div - style={{ - backgroundColor: '#000000', - padding: '1rem', - marginBottom: '1rem', - }} - > - <PharosLink name="on-background" href="#" onBackground> - On compliant background - </PharosLink> - </div> - <div - style={{ - backgroundColor: '#000000', - padding: '1rem', - marginBottom: '1rem', - }} - > - <PharosLink name="on-background-subtle" href="#" onBackground subtle> - On compliant background with subtle - </PharosLink> - </div> - </Story> -</Canvas> diff --git a/packages/pharos/src/components/link/pharos-link.wc.stories.mdx b/packages/pharos/src/components/link/pharos-link.wc.stories.jsx similarity index 55% rename from packages/pharos/src/components/link/pharos-link.wc.stories.mdx rename to packages/pharos/src/components/link/pharos-link.wc.stories.jsx index 6e5bd6614..ee287866e 100644 --- a/packages/pharos/src/components/link/pharos-link.wc.stories.mdx +++ b/packages/pharos/src/components/link/pharos-link.wc.stories.jsx @@ -1,98 +1,80 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; import { html } from 'lit'; import { ifDefined } from 'lit/directives/if-defined.js'; -import { GuidelineLink } from '@config/GuidelineLink'; -<Meta - title="Components/Link" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; -export const Template = (args) => - html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> - <pharos-link - download=${ifDefined(args.download)} - href=${ifDefined(args.href)} - hreflang=${ifDefined(args.hreflang)} - ping=${ifDefined(args.ping)} - rel=${ifDefined(args.rel)} - target=${ifDefined(args.target)} - type=${ifDefined(args.type)} - > - ${args.text} - </pharos-link> - </div>`; +export default { + title: 'Components/Link', + component: 'pharos-link', + parameters: { + docs: { page: configureDocsPage('link') }, + }, +}; -# Link +export const Base = { + render: (args) => + html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> + <pharos-link + ?bold=${args.bold} + download=${ifDefined(args.download)} + ?flex=${args.flex} + href=${ifDefined(args.href)} + hreflang=${ifDefined(args.hreflang)} + ?indicate-visited=${args.indicateVisited} + label=${ifDefined(args.label)} + ?no-hover=${args.noHover} + ?on-background=${args.onBackground} + ping=${ifDefined(args.ping)} + rel=${ifDefined(args.rel)} + ?skip=${args.skip} + ?subtle=${args.subtle} + target=${ifDefined(args.target)} + type=${ifDefined(args.type)} + > + ${args.text} + </pharos-link> + </div>`, + args: defaultArgs, +}; -<GuidelineLink path="link" /> - -<Canvas withToolbar> - <Story - name="Base" - args={{ - text: 'I am a link', - href: '#', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Visited Link - -<Canvas withToolbar> - <Story name="Visited Link"> - {html` +export const VisitedLink = { + render: (_) => + html` <div style="margin-bottom: 1rem"> <pharos-link href="https://www.google.com" target="_blank" indicate-visited >Visited link</pharos-link > </div> - `} - </Story> -</Canvas> - -# Visited Link Heading + `, +}; -<Canvas withToolbar> - <Story name="Visited Link Heading"> - {html` +export const VisitedLinkHeading = { + render: (_) => + html` <div style="margin-bottom: 1rem"> <pharos-link href="https://www.google.com" target="_blank" indicate-visited> <pharos-heading level="1"> Visited link heading </pharos-heading> </pharos-link> </div> - `} - </Story> -</Canvas> + `, +}; -# Button - -<Canvas withToolbar> - <Story name="Button"> - {html` +export const Button = { + render: (_) => + html` <div style="margin-bottom: 1rem"> <pharos-link name="primary">I am a button</pharos-link> </div> <div style="background-color: #000000; padding: 1rem; margin-bottom: 1rem"> <pharos-link name="on-background" on-background>On compliant background</pharos-link> </div> - `} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-link" /> - -# Variants + `, +}; -<Canvas withToolbar> - <Story name="Variants"> - {html` +export const Variants = { + render: (_) => + html` <div style="margin-bottom: 1rem"> <pharos-link name="primary" href="#">Primary link</pharos-link> </div> @@ -112,6 +94,5 @@ export const Template = (args) => >On compliant background with subtle</pharos-link > </div> - `} - </Story> -</Canvas> + `, +}; diff --git a/packages/pharos/src/components/link/storyArgs.ts b/packages/pharos/src/components/link/storyArgs.ts new file mode 100644 index 000000000..f2db57c9c --- /dev/null +++ b/packages/pharos/src/components/link/storyArgs.ts @@ -0,0 +1,11 @@ +export const defaultArgs = { + text: 'I am a link', + bold: false, + flex: false, + href: '#', + indicateVisited: false, + onBackground: false, + noHover: false, + skip: false, + subtle: false, +}; diff --git a/packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.jsx b/packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.jsx new file mode 100644 index 000000000..d2ed69b1c --- /dev/null +++ b/packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.jsx @@ -0,0 +1,40 @@ +import { action } from '@storybook/addon-actions'; + +import { PharosLoadingSpinner, PharosHeading, PharosButton } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Loading Spinner', + component: PharosLoadingSpinner, + parameters: { + docs: { page: configureDocsPage('loading-spinner') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (_) => ( + <div> + <PharosLoadingSpinner></PharosLoadingSpinner> + <PharosHeading level={1} preset={'5'}> + Loading spinner demonstration + </PharosHeading> + <PharosButton onClick={() => action('Click')('Clicked')}>Can't press me!</PharosButton> + </div> + ), +}; + +export const Scoped = { + render: (_) => ( + <div + style={{ + height: '5rem', + width: '5rem', + border: '1px solid black', + position: 'relative', + }} + > + <PharosLoadingSpinner></PharosLoadingSpinner> + </div> + ), +}; diff --git a/packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.mdx b/packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.mdx deleted file mode 100644 index 240f43ff7..000000000 --- a/packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.mdx +++ /dev/null @@ -1,57 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosLoadingSpinner } from '../../react-components/loading-spinner/pharos-loading-spinner'; -import { PharosHeading } from '../../react-components/heading/pharos-heading'; -import { PharosButton } from '../../react-components/button/pharos-button'; - -<Meta - title="Components/Loading Spinner" - parameters={{ - component: PharosLoadingSpinner, - }} -/> - -# Loading Spinner - -<GuidelineLink path="loading-spinner" /> - -<Canvas withToolbar> - <Story name="Base"> - {() => { - return ( - <div> - <PharosLoadingSpinner></PharosLoadingSpinner> - <PharosHeading level={1} preset={'5'}> - Loading spinner demonstration - </PharosHeading> - <PharosButton onClick={() => action('Click')('Clicked')}>Can't press me!</PharosButton> - </div> - ); - }} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosLoadingSpinner} /> - -<Canvas withToolbar> - <Story name="Scoped"> - {() => { - return ( - <div - style={{ - height: '5rem', - width: '5rem', - border: '1px solid black', - position: 'relative', - }} - > - <PharosLoadingSpinner></PharosLoadingSpinner> - </div> - ); - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.jsx b/packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.jsx new file mode 100644 index 000000000..1e9451537 --- /dev/null +++ b/packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.jsx @@ -0,0 +1,32 @@ +import { action } from '@storybook/addon-actions'; +import { html } from 'lit'; + +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Loading Spinner', + component: 'pharos-loading-spinner', + parameters: { + docs: { page: configureDocsPage('loading-spinner') }, + options: { selectedPanel: 'addon-controls' }, + chromatic: { disable: true }, + }, +}; + +export const Base = { + render: (_) => + html` + <pharos-loading-spinner></pharos-loading-spinner> + <pharos-heading level="1" preset="5">Loading spinner demonstration</pharos-heading> + <pharos-button @click="${() => action('Click')('Clicked')}">Can't press me!</pharos-button> + `, +}; + +export const Scoped = { + render: (_) => + html` + <div style="height: 5rem; width: 5rem; border: 1px solid black; position: relative;"> + <pharos-loading-spinner></pharos-loading-spinner> + </div> + `, +}; diff --git a/packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.mdx b/packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.mdx deleted file mode 100644 index 2beeced6a..000000000 --- a/packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.mdx +++ /dev/null @@ -1,36 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta - title="Components/Loading Spinner" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - chromatic: { disable: true }, - }} -/> - -# Loading Spinner - -<GuidelineLink path="loading-spinner" /> - -<Canvas withToolbar> - <Story name="Base">{html` - <pharos-loading-spinner></pharos-loading-spinner> - <pharos-heading level="1" preset="5">Loading spinner demonstration</pharos-heading> - <pharos-button @click="${() => action('Click')('Clicked')}">Can't press me!</pharos-button> - `}</Story> -</Canvas> - -## API - -<ArgsTable of="pharos-loading-spinner" /> - -<Canvas withToolbar> - <Story name="Scoped">{html` - <div style="height: 5rem; width: 5rem; border: 1px solid black; position: relative;"> - <pharos-loading-spinner></pharos-loading-spinner> - </div> - `}</Story> -</Canvas> diff --git a/packages/pharos/src/components/modal/PharosModal.react.stories.jsx b/packages/pharos/src/components/modal/PharosModal.react.stories.jsx new file mode 100644 index 000000000..955465adc --- /dev/null +++ b/packages/pharos/src/components/modal/PharosModal.react.stories.jsx @@ -0,0 +1,161 @@ +import { action } from '@storybook/addon-actions'; +import { Fragment } from 'react'; + +import { + PharosModal, + PharosTextInput, + PharosAlert, + PharosLink, + PharosButton, +} from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; + +export default { + title: 'Components/Modal', + component: PharosModal, + parameters: { + docs: { page: configureDocsPage('modal') }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; + +export const Base = { + render: (args) => ( + <Fragment> + <PharosButton + onClick={(e) => { + e.target.focus(); + const modal = document.querySelector('pharos-modal'); + modal.open = true; + }} + > + Open modal + </PharosButton> + <PharosModal + footerDivider={args.footerDivider} + header={args.header} + open={args.open} + size={args.size} + > + <p>I am a modal</p> + <PharosButton slot="footer" type="button" variant="secondary" data-modal-close> + Cancel + </PharosButton> + <PharosButton slot="footer" type="button"> + Ok + </PharosButton> + </PharosModal> + </Fragment> + ), + args: defaultArgs, +}; + +export const NoFooter = { + render: (_) => ( + <Fragment> + <PharosButton + type="button" + data-modal-id="my-event-modal" + onClick={(e) => { + e.target.focus(); + }} + > + Open modal + </PharosButton> + <PharosModal id="my-event-modal" header="Pharos modal" size="medium"> + <p>I am a modal</p> + </PharosModal> + </Fragment> + ), +}; + +export const Events = { + render: (_) => ( + <Fragment> + <PharosButton + type="button" + data-modal-id="my-event-modal" + onClick={(e) => { + e.target.focus(); + }} + > + Open modal + </PharosButton> + <PharosModal + id="my-event-modal" + header="Event modal" + open + onPharos-Modal-Open={(e) => action('Open')(e.detail)} + onPharos-Modal-Opened={(e) => action('Opened')(e.detail)} + onPharos-Modal-Close={(e) => action('Close')(e.detail)} + onPharos-Modal-Closed={(e) => action('Closed')(e.detail)} + > + <p slot="description">Description for the modal</p> + <PharosTextInput style={{ marginBottom: '1rem' }} data-modal-focus> + <span slot="label">Name</span> + </PharosTextInput> + <PharosTextInput style={{ marginBottom: '1rem' }}> + <span slot="label">User ID</span> + </PharosTextInput> + <PharosTextInput style={{ marginBottom: '1rem' }}> + <span slot="label">Favorite Color</span> + </PharosTextInput> + <PharosButton slot="footer" type="button" variant="secondary" data-modal-close> + Cancel + </PharosButton> + <PharosButton slot="footer" type="button"> + Submit + </PharosButton> + </PharosModal> + </Fragment> + ), + parameters: { selectedPanel: 'addon-actions' }, +}; + +export const Composition = { + render: (_) => ( + <Fragment> + <PharosButton + type="button" + data-modal-id="my-alert-modal" + onClick={(e) => { + e.target.focus(); + }} + > + Open modal + </PharosButton> + <PharosModal id="my-alert-modal" header="Add external link" open> + <div style={{ maxWidth: '36rem' }}> + <PharosAlert status="error"> + We're sorry, we experienced an issue submitting your report. Please try again. If the + issue persists, contact + <PharosLink id="support-link" href="#"> + support@jstor.org + </PharosLink> + . + </PharosAlert> + <PharosTextInput name="link" required style={{ marginBottom: '1rem' }}> + <span slot="label">Link</span> + </PharosTextInput> + <PharosTextInput name="text" required style={{ marginBottom: '1rem' }}> + <span slot="label">Text</span> + </PharosTextInput> + <PharosButton + id="cancel-button" + slot="footer" + type="button" + variant="secondary" + data-modal-close + > + Cancel + </PharosButton> + <PharosButton id="add-button" slot="footer" type="button"> + Add + </PharosButton> + </div> + </PharosModal> + </Fragment> + ), +}; diff --git a/packages/pharos/src/components/modal/PharosModal.react.stories.mdx b/packages/pharos/src/components/modal/PharosModal.react.stories.mdx deleted file mode 100644 index 8857af821..000000000 --- a/packages/pharos/src/components/modal/PharosModal.react.stories.mdx +++ /dev/null @@ -1,177 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { Fragment } from 'react'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosModal } from '../../react-components/modal/pharos-modal'; -import { PharosTextInput } from '../../react-components/text-input/pharos-text-input'; -import { PharosAlert } from '../../react-components/alert/pharos-alert'; -import { PharosLink } from '../../react-components/link/pharos-link'; -import { PharosButton } from '../../react-components/button/pharos-button'; - -<Meta - title="Components/Modal" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - component: PharosModal, - }} -/> - -export const Template = (args) => ( - <Fragment> - <PharosButton - onClick={(e) => { - e.target.focus(); - const modal = document.querySelector('pharos-modal'); - modal.open = true; - }} - > - Open modal - </PharosButton> - <PharosModal header="Pharos modal" footer-divider size={args.size}> - <p>I am a modal</p> - <PharosButton slot="footer" type="button" variant="secondary" data-modal-close> - Cancel - </PharosButton> - <PharosButton slot="footer" type="button"> - Ok - </PharosButton> - </PharosModal> - </Fragment> -); - -# Modal - -<GuidelineLink path="modal" /> - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - size: { - options: ['small', 'medium', 'large'], - control: { - type: 'inline-radio', - }, - defaultValue: 'medium', - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Modal without footer - -<Canvas> - <Story name="No Footer"> - <PharosButton - type="button" - data-modal-id="my-event-modal" - onClick={(e) => { - e.target.focus(); - }} - > - Open modal - </PharosButton> - <PharosModal id="my-event-modal" header="Pharos modal" size="medium"> - <p>I am a modal</p> - </PharosModal> - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosModal} /> - -# Events - -<Canvas> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - <PharosButton - type="button" - data-modal-id="my-event-modal" - onClick={(e) => { - e.target.focus(); - }} - > - Open modal - </PharosButton> - <PharosModal - id="my-event-modal" - header="Event modal" - open - onPharos-Modal-Open={(e) => action('Open')(e.detail)} - onPharos-Modal-Opened={(e) => action('Opened')(e.detail)} - onPharos-Modal-Close={(e) => action('Close')(e.detail)} - onPharos-Modal-Closed={(e) => action('Closed')(e.detail)} - > - <p slot="description">Description for the modal</p> - <PharosTextInput style={{ marginBottom: '1rem' }} data-modal-focus> - <span slot="label">Name</span> - </PharosTextInput> - <PharosTextInput style={{ marginBottom: '1rem' }}> - <span slot="label">User ID</span> - </PharosTextInput> - <PharosTextInput style={{ marginBottom: '1rem' }}> - <span slot="label">Favorite Color</span> - </PharosTextInput> - <PharosButton slot="footer" type="button" variant="secondary" data-modal-close> - Cancel - </PharosButton> - <PharosButton slot="footer" type="button"> - Submit - </PharosButton> - </PharosModal> - </Story> -</Canvas> - -# Composition - -<Canvas> - <Story name="Composition"> - <PharosButton - type="button" - data-modal-id="my-alert-modal" - onClick={(e) => { - e.target.focus(); - }} - > - Open modal - </PharosButton> - <PharosModal id="my-alert-modal" header="Add external link" open> - <div style={{ maxWidth: '36rem' }}> - <PharosAlert status="error"> - We're sorry, we experienced an issue submitting your report. Please try again. If the - issue persists, contact - <PharosLink id="support-link" href="#"> - support@jstor.org - </PharosLink>. - </PharosAlert> - <PharosTextInput name="link" required style={{ marginBottom: '1rem' }}> - <span slot="label">Link</span> - </PharosTextInput> - <PharosTextInput name="text" required style={{ marginBottom: '1rem' }}> - <span slot="label">Text</span> - </PharosTextInput> - <PharosButton - id="cancel-button" - slot="footer" - type="button" - variant="secondary" - data-modal-close - > - Cancel - </PharosButton> - <PharosButton id="add-button" slot="footer" type="button"> - Add - </PharosButton> - </div> - </PharosModal> - </Story> -</Canvas> diff --git a/packages/pharos/src/components/modal/pharos-modal.ts b/packages/pharos/src/components/modal/pharos-modal.ts index f6f9a884d..f5e67da19 100644 --- a/packages/pharos/src/components/modal/pharos-modal.ts +++ b/packages/pharos/src/components/modal/pharos-modal.ts @@ -17,7 +17,7 @@ const FOCUS_ELEMENT = `[data-modal-focus]`; export type ModalSize = 'small' | 'medium' | 'large'; -const SIZES = ['small', 'medium', 'large']; +export const allSizes = ['small', 'medium', 'large'] as ModalSize[]; /** * Pharos modal component. @@ -93,8 +93,8 @@ export class PharosModal extends ScopedRegistryMixin(PharosElement) { protected override update(changedProperties: PropertyValues): void { super.update && super.update(changedProperties); - if (changedProperties.has('size') && !SIZES.includes(this.size)) { - throw new Error(`${this.size} is not a valid size. Valid sizes are: ${SIZES.join(', ')}`); + if (changedProperties.has('size') && !allSizes.includes(this.size)) { + throw new Error(`${this.size} is not a valid size. Valid sizes are: ${allSizes.join(', ')}`); } } diff --git a/packages/pharos/src/components/modal/pharos-modal.wc.stories.mdx b/packages/pharos/src/components/modal/pharos-modal.wc.stories.jsx similarity index 66% rename from packages/pharos/src/components/modal/pharos-modal.wc.stories.mdx rename to packages/pharos/src/components/modal/pharos-modal.wc.stories.jsx index 7557d8263..e2dffc507 100644 --- a/packages/pharos/src/components/modal/pharos-modal.wc.stories.mdx +++ b/packages/pharos/src/components/modal/pharos-modal.wc.stories.jsx @@ -1,71 +1,60 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; import { html } from 'lit'; import { ifDefined } from 'lit/directives/if-defined.js'; import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; -<Meta - title="Components/Modal" - parameters={{ +import { argTypes, defaultArgs } from './storyArgs'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Modal', + component: 'pharos-modal', + parameters: { + docs: { page: configureDocsPage('modal') }, options: { selectedPanel: 'addon-controls' }, - }} -/> + }, + argTypes, +}; -export const Template = (args) => - html` - <pharos-button - @click="${(e) => { - e.target.focus(); - const modal = document.querySelector('pharos-modal'); - modal.open = true; - }}" - > - Open modal - </pharos-button> - <pharos-modal header="Pharos modal" footer-divider size=${ifDefined(args.size)}> - <p>I am a modal</p> - <pharos-button slot="footer" type="button" variant="secondary" data-modal-close> - Cancel - </pharos-button> +export const Base = { + render: (args) => + html` <pharos-button - slot="footer" - type="button" - @click="${() => { + @click="${(e) => { + e.target.focus(); const modal = document.querySelector('pharos-modal'); - modal.open = false; + modal.open = true; }}" > - Ok + Open modal </pharos-button> - </pharos-modal> - `; - -# Modal - -<GuidelineLink path="modal" /> - -<Canvas> - <Story - name="Base" - argTypes={{ - size: { - options: ['small', 'medium', 'large'], - control: { - type: 'inline-radio', - }, - defaultValue: 'medium', - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Modal without footer + <pharos-modal + ?footer-divider=${ifDefined(args.footerDivider)} + header=${ifDefined(args.header)} + ?open=${ifDefined(args.open)} + size=${ifDefined(args.size)} + > + <p>I am a modal</p> + <pharos-button slot="footer" type="button" variant="secondary" data-modal-close> + Cancel + </pharos-button> + <pharos-button + slot="footer" + type="button" + @click="${() => { + const modal = document.querySelector('pharos-modal'); + modal.open = false; + }}" + > + Ok + </pharos-button> + </pharos-modal> + `, + args: defaultArgs, +}; -<Canvas> - <Story name="No Footer"> - {html` +export const NoFooter = { + render: (_) => + html` <pharos-button @click="${(e) => { e.target.focus(); @@ -78,24 +67,12 @@ export const Template = (args) => <pharos-modal header="Pharos modal" size="medium"> <p>I am a modal</p> </pharos-modal> - `} - </Story> -</Canvas> - -## API + `, +}; -<ArgsTable of="pharos-modal" /> - -# Events - -<Canvas> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {html` +export const Events = { + render: (_) => + html` <pharos-button type="button" data-modal-id="my-event-modal" @@ -129,15 +106,13 @@ export const Template = (args) => </pharos-button> <pharos-button slot="footer" type="button">Submit</pharos-button> </pharos-modal> - `} - </Story> -</Canvas> - -# Composition + `, + parameters: { selectedPanel: 'addon-actions' }, +}; -<Canvas> - <Story name="Composition" parameters={{ chromatic: { viewports: [320, 1200] } }}> - {html` +export const Composition = { + render: (_) => + html` <pharos-button type="button" data-modal-id="my-alert-modal" @@ -172,6 +147,6 @@ export const Template = (args) => </pharos-button> <pharos-button id="add-button" slot="footer" type="button">Add</pharos-button> </pharos-modal> - `} - </Story> -</Canvas> + `, + parameters: { chromatic: { viewports: [320, 1200] } }, +}; diff --git a/packages/pharos/src/components/modal/storyArgs.ts b/packages/pharos/src/components/modal/storyArgs.ts new file mode 100644 index 000000000..7fe3357ce --- /dev/null +++ b/packages/pharos/src/components/modal/storyArgs.ts @@ -0,0 +1,17 @@ +import { allSizes } from './pharos-modal'; + +export const defaultArgs = { + size: 'medium', + open: false, + footerDivider: true, + header: 'Pharos modal', +}; + +export const argTypes = { + size: { + options: allSizes, + control: { + type: 'inline-radio', + }, + }, +}; diff --git a/packages/pharos/src/components/pagination/PharosPagination.react.stories.jsx b/packages/pharos/src/components/pagination/PharosPagination.react.stories.jsx new file mode 100644 index 000000000..4dd423c01 --- /dev/null +++ b/packages/pharos/src/components/pagination/PharosPagination.react.stories.jsx @@ -0,0 +1,32 @@ +import { action } from '@storybook/addon-actions'; + +import { PharosPagination } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Components/Pagination', + component: PharosPagination, + parameters: { + docs: { page: configureDocsPage('pagination') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (_) => ( + <PharosPagination + totalResults={args.totalResults} + pageSize={args.pageSize} + currentPage={args.currentPage} + onPrev-Page={(e) => action('Prev Page')(JSON.stringify(e))} + onNext-Page={(e) => action('Next Page')(JSON.stringify(e))} + /> + ), + args: defaultArgs, +}; + +export const Events = { + ...Base, + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; diff --git a/packages/pharos/src/components/pagination/PharosPagination.react.stories.mdx b/packages/pharos/src/components/pagination/PharosPagination.react.stories.mdx deleted file mode 100644 index 401864bae..000000000 --- a/packages/pharos/src/components/pagination/PharosPagination.react.stories.mdx +++ /dev/null @@ -1,61 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosPagination } from '../../react-components/pagination/pharos-pagination'; - -<Meta - title="Components/Pagination" - parameters={{ - component: PharosPagination, - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Pagination - -<GuidelineLink path="pagination" /> - -export const Template = (args) => ( - <PharosPagination - totalResults={args.totalResults} - pageSize={args.pageSize} - currentPage={args.currentPage} - ></PharosPagination> -); - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - totalResults: { control: { type: 'number', min: 0 }, defaultValue: 1146 }, - pageSize: { control: { type: 'number', min: 1 }, defaultValue: 25 }, - currentPage: { control: { type: 'number', min: 1 }, defaultValue: 2 }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosPagination} /> - -## Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - <PharosPagination - totalResults="1146" - pageSize="25" - currentPage="2" - onPrev-Page={(e) => action('Prev Page')(JSON.stringify(e))} - onNext-Page={(e) => action('Next Page')(JSON.stringify(e))} - ></PharosPagination> - </Story> -</Canvas> diff --git a/packages/pharos/src/components/pagination/pharos-pagination.wc.stories.jsx b/packages/pharos/src/components/pagination/pharos-pagination.wc.stories.jsx new file mode 100644 index 000000000..ddb8cc362 --- /dev/null +++ b/packages/pharos/src/components/pagination/pharos-pagination.wc.stories.jsx @@ -0,0 +1,33 @@ +import { html } from 'lit'; +import { action } from '@storybook/addon-actions'; + +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Components/Pagination', + component: 'pharos-pagination', + parameters: { + docs: { page: configureDocsPage('pagination') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (args) => + html` + <pharos-pagination + total-results=${args.totalResults} + page-size=${args.pageSize} + current-page=${args.currentPage} + @prev-page="${(e) => action('Prev Page')(JSON.stringify(e))}" + @next-page="${(e) => action('Next Page')(JSON.stringify(e))}" + ></pharos-pagination> + `, + args: defaultArgs, +}; + +export const Events = { + ...Base, + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; diff --git a/packages/pharos/src/components/pagination/pharos-pagination.wc.stories.mdx b/packages/pharos/src/components/pagination/pharos-pagination.wc.stories.mdx deleted file mode 100644 index 647e5992f..000000000 --- a/packages/pharos/src/components/pagination/pharos-pagination.wc.stories.mdx +++ /dev/null @@ -1,64 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta - title="Components/Pagination" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Pagination - -<GuidelineLink path="pagination" /> - -export const Template = (args) => - html` - <pharos-pagination - total-results=${args.totalResults} - page-size=${args.pageSize} - current-page=${args.currentPage} - ></pharos-pagination> - `; - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - totalResults: { control: { type: 'number', min: 0 }, defaultValue: 1146 }, - pageSize: { control: { type: 'number', min: 1 }, defaultValue: 25 }, - currentPage: { control: { type: 'number', min: 1 }, defaultValue: 2 }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-pagination" /> - -## Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return html` - <pharos-pagination - total-results="1146" - page-size="25" - current-page="2" - @prev-page="${(e) => action('Prev Page')(JSON.stringify(e))}" - @next-page="${(e) => action('Next Page')(JSON.stringify(e))}" - ></pharos-pagination> - `; - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/pagination/storyArgs.ts b/packages/pharos/src/components/pagination/storyArgs.ts new file mode 100644 index 000000000..e39363953 --- /dev/null +++ b/packages/pharos/src/components/pagination/storyArgs.ts @@ -0,0 +1,5 @@ +export const defaultArgs = { + totalResults: 1146, + pageSize: 25, + currentPage: 2, +}; diff --git a/packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.jsx b/packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.jsx new file mode 100644 index 000000000..a93b798cb --- /dev/null +++ b/packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.jsx @@ -0,0 +1,30 @@ +import { PharosProgressBar } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; + +export default { + title: 'Components/Progress Bar', + component: PharosProgressBar, + parameters: { + docs: { page: configureDocsPage('progress-bar') }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; + +export const Base = { + render: (_) => ( + <PharosProgressBar value={args.value}> + <div slot="title">{args.title}</div> + <div slot="description">{args.description}</div> + </PharosProgressBar> + ), + args: defaultArgs, +}; + +export const Plain = { + ...Base, + args: { + value: 10, + }, +}; diff --git a/packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.mdx b/packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.mdx deleted file mode 100644 index 0e383137a..000000000 --- a/packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.mdx +++ /dev/null @@ -1,26 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosProgressBar } from '../../react-components/progress-bar/pharos-progress-bar'; - -<Meta - title="Components/ProgressBar" - parameters={{ - component: PharosProgressBar, - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Progress Bar - -<GuidelineLink path="progress-bar" /> - -<Canvas withToolbar> - <Story name="Base"> - <PharosProgressBar /> - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosProgressBar} /> diff --git a/packages/pharos/src/components/progress-bar/pharos-progress-bar.wc.stories.jsx b/packages/pharos/src/components/progress-bar/pharos-progress-bar.wc.stories.jsx new file mode 100644 index 000000000..5f99c18ee --- /dev/null +++ b/packages/pharos/src/components/progress-bar/pharos-progress-bar.wc.stories.jsx @@ -0,0 +1,32 @@ +import { html } from 'lit'; + +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; + +export default { + title: 'Components/Progress Bar', + component: 'pharos-progress-bar', + parameters: { + docs: { page: configureDocsPage('progress-bar') }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; + +export const Base = { + render: (args) => + html` + <pharos-progress-bar value=${args.value}> + <div slot="title">${args.title}</div> + <div slot="description">${args.description}</div> + </pharos-progress-bar> + `, + args: defaultArgs, +}; + +export const Plain = { + ...Base, + args: { + value: 10, + }, +}; diff --git a/packages/pharos/src/components/progress-bar/pharos-progress-bar.wc.stories.mdx b/packages/pharos/src/components/progress-bar/pharos-progress-bar.wc.stories.mdx deleted file mode 100644 index a845bc012..000000000 --- a/packages/pharos/src/components/progress-bar/pharos-progress-bar.wc.stories.mdx +++ /dev/null @@ -1,58 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta - title="Components/Progress Bar" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -export const Template = (args) => - html` - <pharos-progress-bar value=${args.value}> - <div slot="title">${args.title}</div> - <div slot="description">${args.description}</div> - </pharos-progress-bar> - `; - -# Progress Bar - -<GuidelineLink path="progress-bar" /> - -<Canvas> - <Story - name="Base" - argTypes={{ - title: { control: { type: 'text' }, defaultValue: 'Title.xls' }, - value: { - control: { type: 'range', min: 0, max: 100, step: 10 }, - defaultValue: 10, - }, - description: { control: { type: 'text' }, defaultValue: 'Processing' }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-progress-bar" /> - -## Plain - -<Canvas> - <Story - name="Plain" - argTypes={{ - value: { - control: { type: 'range', min: 0, max: 100, step: 10 }, - defaultValue: 10, - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/progress-bar/storyArgs.ts b/packages/pharos/src/components/progress-bar/storyArgs.ts new file mode 100644 index 000000000..37976f9a8 --- /dev/null +++ b/packages/pharos/src/components/progress-bar/storyArgs.ts @@ -0,0 +1,11 @@ +export const defaultArgs = { + title: 'Title.xls', + value: 10, + description: 'Processing', +}; + +export const argTypes = { + value: { + control: { type: 'range', min: 0, max: 100, step: 10 }, + }, +}; diff --git a/packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.jsx b/packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.jsx new file mode 100644 index 000000000..0c4b800a9 --- /dev/null +++ b/packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.jsx @@ -0,0 +1,111 @@ +import { Fragment } from 'react'; +import { action } from '@storybook/addon-actions'; + +import { PharosRadioButton, PharosLink } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Forms/Radio Button', + parameters: { + docs: { page: configureDocsPage('radio-button') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (args) => ( + <PharosRadioButton + checked={args.checked} + disabled={args.disabled} + hideLabel={args.hideLabel} + invalidated={args.invalidated} + required={args.required} + message={args.message} + > + <span slot="label">{args.label}</span> + </PharosRadioButton> + ), + args: defaultArgs, +}; + +export const States = { + render: (_) => ( + <Fragment> + <div> + <div> + <PharosRadioButton name="base"> + <span slot="label">Normal Button</span> + </PharosRadioButton> + </div> + <div> + <PharosRadioButton name="disabled" disabled> + <span slot="label">Disabled Button</span> + </PharosRadioButton> + </div> + <div> + <PharosRadioButton name="checked" checked> + <span slot="label">Checked Button</span> + </PharosRadioButton> + </div> + <div> + <PharosRadioButton name="checked-disabled" checked disabled> + <span slot="label">Disabled & Checked Button</span> + </PharosRadioButton> + </div> + <div> + <PharosRadioButton name="multi" checked> + <div slot="label"> + <div>Checked button</div> + <div>Multiple lines</div> + </div> + </PharosRadioButton> + </div> + <div> + <PharosRadioButton name="invalidated" invalidated> + <span slot="label">Error Button</span> + </PharosRadioButton> + </div> + <div> + <PharosRadioButton name="with-link"> + <span slot="label"> + Label with a <PharosLink href="#">link</PharosLink> + </span> + </PharosRadioButton> + </div> + </div> + </Fragment> + ), +}; + +export const Events = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridGap: '1rem', + gridTemplateColumns: 'repeat(1, 250px)', + }} + > + <PharosRadioButton + value="My value" + onChange={(e) => action('Change')(e.target.checked)} + onInput={(e) => action('Input')(e.target.value)} + onClick={(e) => action('Click')(e.target.checked)} + > + <span slot="label">I fire events</span> + </PharosRadioButton> + </div> + ), + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + invalidated: true, + required: true, + message: 'This field is required, please make a selection', + }, +}; diff --git a/packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.mdx b/packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.mdx deleted file mode 100644 index 4ec69ad8b..000000000 --- a/packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.mdx +++ /dev/null @@ -1,152 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosRadioButton } from '../../react-components/radio-button/pharos-radio-button'; -import { PharosLink } from '../../react-components/link/pharos-link'; - -<Meta - title="Forms/Radio Button" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Radio Button - -<GuidelineLink path="radio-button" /> - -export const Template = (args) => ( - <PharosRadioButton - checked={args.checked} - disabled={args.disabled} - hideLabel={args.hideLabel} - invalidated={args.invalidated} - required={args.required} - message={args.message} - > - <span slot="label">{args.label}</span> - </PharosRadioButton> -); - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - label: { control: { type: 'text' }, defaultValue: 'Default Radio Button' }, - checked: { control: { type: 'boolean' }, defaultValue: false }, - disabled: { control: { type: 'boolean' }, defaultValue: false }, - hideLabel: { control: { type: 'boolean' }, defaultValue: false }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosRadioButton} /> - -# States - -<Canvas withToolbar> - <Story name="States"> - {() => { - return ( - <div> - <div> - <PharosRadioButton name="base"> - <span slot="label">Normal Button</span> - </PharosRadioButton> - </div> - <div> - <PharosRadioButton name="disabled" disabled> - <span slot="label">Disabled Button</span> - </PharosRadioButton> - </div> - <div> - <PharosRadioButton name="checked" checked> - <span slot="label">Checked Button</span> - </PharosRadioButton> - </div> - <div> - <PharosRadioButton name="checked-disabled" checked disabled> - <span slot="label">Disabled & Checked Button</span> - </PharosRadioButton> - </div> - <div> - <PharosRadioButton name="multi" checked> - <div slot="label"> - <div>Checked button</div> - <div>Multiple lines</div> - </div> - </PharosRadioButton> - </div> - <div> - <PharosRadioButton name="invalidated" invalidated> - <span slot="label">Error Button</span> - </PharosRadioButton> - </div> - <div> - <PharosRadioButton name="with-link"> - <span slot="label"> - Label with a <PharosLink href="#">link</PharosLink> - </span> - </PharosRadioButton> - </div> - </div> - ); - }} - </Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return ( - <div - style={{ - display: 'grid', - gridGap: '1rem', - gridTemplateColumns: 'repeat(1, 250px)', - }} - > - <PharosRadioButton - value="My value" - onChange={(e) => action('Change')(e.target.checked)} - onInput={(e) => action('Input')(e.target.value)} - onClick={(e) => action('Click')(e.target.checked)} - > - <span slot="label">I fire events</span> - </PharosRadioButton> - </div> - ); - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - argTypes={{ - label: { control: { type: 'text' }, defaultValue: 'Default Radio Button' }, - invalidated: { control: { type: 'boolean' }, defaultValue: true }, - required: { control: { type: 'boolean' }, defaultValue: true }, - message: { - control: { type: 'text' }, - defaultValue: 'This field is required, please make a selection', - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.jsx b/packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.jsx new file mode 100644 index 000000000..f01c25111 --- /dev/null +++ b/packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.jsx @@ -0,0 +1,93 @@ +import { html } from 'lit'; +import { action } from '@storybook/addon-actions'; + +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Forms/Radio Button', + parameters: { + docs: { page: configureDocsPage('radio-button') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (args) => + html` + <pharos-radio-button + ?checked=${args.checked} + ?disabled=${args.disabled} + ?hide-label=${args.hideLabel} + ?invalidated=${args.invalidated} + ?required=${args.required} + .message=${args.message} + > + <span slot="label">${args.label}</span> + </pharos-radio-button> + `, + args: defaultArgs, +}; + +export const States = { + render: (_) => + html` + <div> + <pharos-radio-button name="base"><span slot="label">Default Radio Button</span></pharos-radio-button> + </div> + <div> + <pharos-radio-button name="disabled" disabled><span slot="label">Disabled input</span></pharos-radio-button> + </div> + <div> + <pharos-radio-button name="checked" checked><span slot="label">Checked button</span></pharos-radio-button> + </div> + <div> + <pharos-radio-button name="checked-disabled" checked disabled> + <span slot="label">Checked & Disabled</span> + </pharos-radio-button> + </div> + <div> + <pharos-radio-button name="multi" checked> + <div slot="label"> + <div>Checked button</div> + <div>Multiple lines</div> + </div> + </pharos-radio-button> + </div> + <div> + <pharos-radio-button name="invalidated" invalidated><span slot="label">Error button</span></pharos-checkbox> + </div> + <div> + <pharos-radio-button name="with-link"> + <span slot="label"> + Label with a <pharos-link href="#">link</pharos-link> + </span> + </pharos-radio-button> + </div> + `, +}; + +export const Events = { + render: (_) => + html` + <pharos-radio-button + value="My value" + @change="${(e) => action('Change')(e.target.checked)}" + @input="${(e) => action('Input')(e.target.value)}" + @click="${(e) => action('Click')(e.target.checked)}" + > + <span slot="label">I fire events</span> + </pharos-radio-button> + `, + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + invalidated: true, + required: true, + message: 'This field is required, please make a selection', + }, +}; diff --git a/packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.mdx b/packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.mdx deleted file mode 100644 index f56a246f7..000000000 --- a/packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.mdx +++ /dev/null @@ -1,131 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta - title="Forms/Radio Button" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Radio Button - -<GuidelineLink path="radio-button" /> - -export const Template = (args) => - html` - <pharos-radio-button - ?checked=${args.checked} - ?disabled=${args.disabled} - ?hide-label=${args.hideLabel} - ?invalidated=${args.invalidated} - ?required=${args.required} - .message=${args.message} - > - <span slot="label">${args.label}</span> - </pharos-radio-button> - `; - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - label: { control: { type: 'text' }, defaultValue: 'Default Radio Button' }, - checked: { control: { type: 'boolean' }, defaultValue: false }, - disabled: { control: { type: 'boolean' }, defaultValue: false }, - hideLabel: { control: { type: 'boolean' }, defaultValue: false }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-radio-button" /> - -# States - -<Canvas withToolbar> - <Story name="States"> - {html` - <div> - <pharos-radio-button name="base"><span slot="label">Default Radio Button</span></pharos-radio-button> - </div> - <div> - <pharos-radio-button name="disabled" disabled><span slot="label">Disabled input</span></pharos-radio-button> - </div> - <div> - <pharos-radio-button name="checked" checked><span slot="label">Checked button</span></pharos-radio-button> - </div> - <div> - <pharos-radio-button name="checked-disabled" checked disabled> - <span slot="label">Checked & Disabled</span> - </pharos-radio-button> - </div> - <div> - <pharos-radio-button name="multi" checked> - <div slot="label"> - <div>Checked button</div> - <div>Multiple lines</div> - </div> - </pharos-radio-button> - </div> - <div> - <pharos-radio-button name="invalidated" invalidated><span slot="label">Error button</span></pharos-checkbox> - </div> - <div> - <pharos-radio-button name="with-link"> - <span slot="label"> - Label with a <pharos-link href="#">link</pharos-link> - </span> - </pharos-radio-button> - </div> - `} - </Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return html` - <pharos-radio-button - value="My value" - @change="${(e) => action('Change')(e.target.checked)}" - @input="${(e) => action('Input')(e.target.value)}" - @click="${(e) => action('Click')(e.target.checked)}" - > - <span slot="label">I fire events</span> - </pharos-radio-button> - `; - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - argTypes={{ - label: { control: { type: 'text' }, defaultValue: 'Default Radio Button' }, - invalidated: { control: { type: 'boolean' }, defaultValue: true }, - required: { control: { type: 'boolean' }, defaultValue: true }, - message: { - control: { type: 'text' }, - defaultValue: 'This field is required, please make a selection', - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/radio-button/storyArgs.ts b/packages/pharos/src/components/radio-button/storyArgs.ts new file mode 100644 index 000000000..4b0c5861e --- /dev/null +++ b/packages/pharos/src/components/radio-button/storyArgs.ts @@ -0,0 +1,9 @@ +export const defaultArgs = { + label: 'Default Radio Button', + checked: false, + disabled: false, + hideLabel: false, + invalidated: false, + required: false, + message: '', +}; diff --git a/packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.jsx b/packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.jsx new file mode 100644 index 000000000..883ac164a --- /dev/null +++ b/packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.jsx @@ -0,0 +1,116 @@ +import { action } from '@storybook/addon-actions'; + +import { PharosRadioGroup, PharosRadioButton, PharosButton } from '../../react-components'; +import createFormData from '../../utils/createFormData'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Forms/Radio Group', + component: PharosRadioGroup, + subcomponents: { PharosRadioButton }, + parameters: { + docs: { page: configureDocsPage('radio-group') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (args) => ( + <PharosRadioGroup + name={args.name} + horizontal={args.horizontal} + disabled={args.disabled} + hideLabel={args.hideLabel} + required={args.required} + invalidated={args.invalidated} + validated={args.validated} + message={args.message} + > + <span slot="legend">Radio Group Header</span> + <PharosRadioButton value="1"> + <span slot="label">Radio Button 1</span> + </PharosRadioButton> + <PharosRadioButton value="2"> + <span slot="label">Radio Button 2</span> + </PharosRadioButton> + <PharosRadioButton value="3"> + <span slot="label">Radio Button 3</span> + </PharosRadioButton> + <PharosRadioButton value="4"> + <span slot="label">Radio Button 4</span> + </PharosRadioButton> + </PharosRadioGroup> + ), + args: defaultArgs, +}; + +export const Events = { + render: (_) => ( + <PharosRadioGroup onChange={(e) => action('Change')(e.target.value)} name="group2"> + <span slot="legend">Radio Group Header</span> + <PharosRadioButton value="1"> + <span slot="label">Radio Button 1</span> + </PharosRadioButton> + <PharosRadioButton value="2" checked> + <span slot="label">Radio Button 2</span> + </PharosRadioButton> + <PharosRadioButton value="3"> + <span slot="label">Radio Button 3</span> + </PharosRadioButton> + </PharosRadioGroup> + ), + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + invalidated: true, + required: true, + message: 'This field is required, please make a selection', + }, +}; + +export const FormData = { + render: (_) => ( + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <PharosRadioGroup + style={{ marginBottom: '0.5rem' }} + name="radio-group4" + required + onChange={(e) => action('Change')(e.target.value)} + > + <span slot="legend">Radio Group Header</span> + <PharosRadioButton value="1"> + <span slot="label">Radio Button 1</span> + </PharosRadioButton> + <PharosRadioButton value="2"> + <span slot="label">Radio Button 2</span> + </PharosRadioButton> + <PharosRadioButton value="3"> + <span slot="label">Radio Button 3</span> + </PharosRadioButton> + </PharosRadioGroup> + <PharosButton + type="submit" + value="Submit" + onClick={(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }} + > + Submit + </PharosButton> + </form> + ), +}; diff --git a/packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.mdx b/packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.mdx deleted file mode 100644 index bb871a367..000000000 --- a/packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.mdx +++ /dev/null @@ -1,156 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosRadioGroup } from '../../react-components/radio-group/pharos-radio-group'; -import { PharosRadioButton } from '../../react-components/radio-button/pharos-radio-button'; -import { PharosButton } from '../../react-components/button/pharos-button'; -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Radio Group" - parameters={{ - component: PharosRadioGroup, - options: { selectedPanel: 'addon-controls' }, - knobs: { escapeHTML: false }, - }} -/> - -# Radio Group - -<GuidelineLink path="radio-button" /> - -export const Template = (args) => ( - <PharosRadioGroup - name="group1" - horizontal={args.horizontal} - disabled={args.disabled} - hideLabel={args.hideLabel} - required={args.required} - invalidated={args.invalidated} - message={args.message} - > - <span slot="legend">Radio Group Header</span> - <PharosRadioButton value="1"> - <span slot="label">Radio Button 1</span> - </PharosRadioButton> - <PharosRadioButton value="2"> - <span slot="label">Radio Button 2</span> - </PharosRadioButton> - <PharosRadioButton value="3"> - <span slot="label">Radio Button 3</span> - </PharosRadioButton> - <PharosRadioButton value="4"> - <span slot="label">Radio Button 4</span> - </PharosRadioButton> - </PharosRadioGroup> -); - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - disabled: { control: { type: 'boolean' }, defaultValue: false }, - hideLabel: { control: { type: 'boolean' }, defaultValue: false }, - horizontal: { control: { type: 'boolean' }, defaultValue: false }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosRadioGroup} /> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return ( - <PharosRadioGroup onChange={(e) => action('Change')(e.target.value)} name="group2"> - <span slot="legend">Radio Group Header</span> - <PharosRadioButton value="1"> - <span slot="label">Radio Button 1</span> - </PharosRadioButton> - <PharosRadioButton value="2" checked> - <span slot="label">Radio Button 2</span> - </PharosRadioButton> - <PharosRadioButton value="3"> - <span slot="label">Radio Button 3</span> - </PharosRadioButton> - </PharosRadioGroup> - ); - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - argTypes={{ - invalidated: { control: { type: 'boolean' }, defaultValue: false }, - required: { control: { type: 'boolean' }, defaultValue: false }, - message: { - control: { type: 'text' }, - defaultValue: 'This field is required, please make a selection', - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - {() => ( - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <PharosRadioGroup - style={{ marginBottom: '0.5rem' }} - name="radio-group4" - required - onChange={(e) => action('Change')(e.target.value)} - > - <span slot="legend">Radio Group Header</span> - <PharosRadioButton value="1"> - <span slot="label">Radio Button 1</span> - </PharosRadioButton> - <PharosRadioButton value="2"> - <span slot="label">Radio Button 2</span> - </PharosRadioButton> - <PharosRadioButton value="3"> - <span slot="label">Radio Button 3</span> - </PharosRadioButton> - </PharosRadioGroup> - <PharosButton - type="submit" - value="Submit" - onClick={(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }} - > - Submit - </PharosButton> - </form> - )} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.jsx b/packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.jsx new file mode 100644 index 000000000..28f02ac7e --- /dev/null +++ b/packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.jsx @@ -0,0 +1,116 @@ +import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; +import { html } from 'lit'; +import { action } from '@storybook/addon-actions'; + +import createFormData from '../../utils/createFormData'; +import { defaultArgs } from './storyArgs'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Forms/Radio Group', + component: 'pharos-radio-group', + subcomponents: { PharosRadioButton: 'pharos-radio-button' }, + parameters: { + docs: { page: configureDocsPage('radio-group') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (args) => + html` + <pharos-radio-group + name=${args.name} + ?horizontal=${args.horizontal} + ?disabled=${args.disabled} + ?hide-label=${args.hideLabel} + ?required=${args.required} + ?invalidated=${args.invalidated} + ?validated=${args.validated} + .message=${args.message} + > + <span slot="legend">Radio Group Header</span> + <pharos-radio-button value="1" + ><span slot="label">Radio Button 1</span></pharos-radio-button + > + <pharos-radio-button value="2" + ><span slot="label">Radio Button 2</span></pharos-radio-button + > + <pharos-radio-button value="3" + ><span slot="label">Radio Button 3</span></pharos-radio-button + > + <pharos-radio-button value="4" + ><span slot="label">Radio Button 4</span></pharos-radio-button + > + </pharos-radio-group> + `, + args: defaultArgs, +}; + +export const Events = { + render: (_) => + html` <pharos-radio-group + @change="${(e) => action('Change')(e.target.value)}" + name="radio-group2" + > + <span slot="legend">Radio Group Header</span> + <pharos-radio-button value="1"><span slot="label">Radio Button 1</span></pharos-radio-button> + <pharos-radio-button value="2" checked + ><span slot="label">Radio Button 2</span></pharos-radio-button + > + <pharos-radio-button value="3"><span slot="label">Radio Button 3</span></pharos-radio-button> + </pharos-radio-group>`, + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + invalidated: true, + required: true, + message: 'This field is required, please make a selection', + }, +}; + +export const FormData = { + render: (_) => + html` + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <pharos-radio-group + style="margin-bottom: 0.5rem;" + @change="${(e) => action('Change')(e.target.value)}" + name="radio-group4" + required + > + <span slot="legend">Radio Group Header</span> + <pharos-radio-button value="1" + ><span slot="label">Radio Button 1</span></pharos-radio-button + > + <pharos-radio-button value="2" + ><span slot="label">Radio Button 2</span></pharos-radio-button + > + <pharos-radio-button value="3" + ><span slot="label">Radio Button 3</span></pharos-radio-button + > + </pharos-radio-group> + <pharos-button + type="submit" + value="Submit" + @click="${(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }}" + >Submit</pharos-button + > + </form> + `, +}; diff --git a/packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.mdx b/packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.mdx deleted file mode 100644 index 67072b8f3..000000000 --- a/packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.mdx +++ /dev/null @@ -1,145 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Radio Group" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Radio Group - -<GuidelineLink path="radio-button" /> - -export const Template = (args) => - html` - <pharos-radio-group - ?horizontal=${args.horizontal} - ?disabled=${args.disabled} - ?hide-label=${args.hideLabel} - ?required=${args.required} - ?invalidated=${args.invalidated} - .message=${args.message} - > - <span slot="legend">Radio Group Header</span> - <pharos-radio-button value="1"><span slot="label">Radio Button 1</span></pharos-radio-button> - <pharos-radio-button value="2"><span slot="label">Radio Button 2</span></pharos-radio-button> - <pharos-radio-button value="3"><span slot="label">Radio Button 3</span></pharos-radio-button> - <pharos-radio-button value="4"><span slot="label">Radio Button 4</span></pharos-radio-button> - </pharos-radio-group> - `; - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - hideLabel: { control: { type: 'boolean' }, defaultValue: false }, - horizontal: { control: { type: 'boolean' }, defaultValue: false }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-radio-group" /> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return html` <pharos-radio-group - @change="${(e) => action('Change')(e.target.value)}" - name="radio-group2" - > - <span slot="legend">Radio Group Header</span> - <pharos-radio-button value="1" - ><span slot="label">Radio Button 1</span></pharos-radio-button - > - <pharos-radio-button value="2" checked - ><span slot="label">Radio Button 2</span></pharos-radio-button - > - <pharos-radio-button value="3" - ><span slot="label">Radio Button 3</span></pharos-radio-button - > - </pharos-radio-group>`; - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - argTypes={{ - invalidated: { control: { type: 'boolean' }, defaultValue: true }, - required: { control: { type: 'boolean' }, defaultValue: true }, - message: { - control: { type: 'text' }, - defaultValue: 'This field is required, please make a selection', - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - {() => { - return html` - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <pharos-radio-group - style="margin-bottom: 0.5rem;" - @change="${(e) => action('Change')(e.target.value)}" - name="radio-group4" - required - > - <span slot="legend">Radio Group Header</span> - <pharos-radio-button value="1" - ><span slot="label">Radio Button 1</span></pharos-radio-button - > - <pharos-radio-button value="2" - ><span slot="label">Radio Button 2</span></pharos-radio-button - > - <pharos-radio-button value="3" - ><span slot="label">Radio Button 3</span></pharos-radio-button - > - </pharos-radio-group> - <pharos-button - type="submit" - value="Submit" - @click="${(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }}" - >Submit</pharos-button - > - </form> - `; - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/radio-group/storyArgs.ts b/packages/pharos/src/components/radio-group/storyArgs.ts new file mode 100644 index 000000000..17589a8a6 --- /dev/null +++ b/packages/pharos/src/components/radio-group/storyArgs.ts @@ -0,0 +1,10 @@ +export const defaultArgs = { + horizontal: false, + disabled: false, + hideLabel: false, + required: false, + invalidated: false, + validated: false, + name: 'group1', + message: '', +}; diff --git a/packages/pharos/src/components/select/PharosSelect.react.stories.jsx b/packages/pharos/src/components/select/PharosSelect.react.stories.jsx new file mode 100644 index 000000000..454f78fc8 --- /dev/null +++ b/packages/pharos/src/components/select/PharosSelect.react.stories.jsx @@ -0,0 +1,131 @@ +import { Fragment } from 'react'; +import { action } from '@storybook/addon-actions'; + +import { PharosSelect, PharosButton } from '../../react-components'; +import createFormData from '../../utils/createFormData'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Forms/Select', + component: PharosSelect, + parameters: { + docs: { page: configureDocsPage('select') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (args) => ( + <PharosSelect + disabled={args.disabled} + hideLabel={args.hideLabel} + required={args.required} + invalidated={args.invalidated} + message={args.message} + value={3} + style={{ display: 'grid', gridTemplateColumns: '300px' }} + > + <span slot="label">Select Demo</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + <option value="4">Option 4</option> + <option value="5">Option 5</option> + </PharosSelect> + ), + args: defaultArgs, +}; + +export const States = { + render: (_) => ( + <Fragment> + <PharosSelect> + <span slot="label">Normal Select</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + </PharosSelect> + <PharosSelect disabled> + <span slot="label">Disabled Select</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + </PharosSelect> + <PharosSelect invalidated> + <span slot="label">Error Select</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + </PharosSelect> + </Fragment> + ), +}; + +export const WithOptionGroups = { + name: 'With option groups', + render: (_) => ( + <PharosSelect> + <span slot="label">Normal Select</span> + <optgroup label="Group 1"> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + </optgroup> + <optgroup label="Group 2"> + <option value="3">Option 3</option> + <option value="4">Option 4</option> + </optgroup> + </PharosSelect> + ), +}; + +export const Events = { + render: (_) => ( + <PharosSelect onChange={(e) => action('Change')(e.target.value)}> + <span slot="label">Normal Select</span> + <option value="1">Option 1 (Value is 1)</option> + <option value="2">Option 2 (Value is 2)</option> + </PharosSelect> + ), + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + invalidated: true, + required: true, + message: 'This field is required, please make a selection', + }, +}; + +export const FormData = { + render: (_) => ( + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <PharosSelect name="my-select" required style={{ marginBottom: '0.5rem' }}> + <span slot="label">Select Demo</span> + <option value="">Select an option</option> + <option value="">----------------</option> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </PharosSelect> + <PharosButton + type="submit" + value="Submit" + onClick={(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }} + > + Submit + </PharosButton> + </form> + ), +}; diff --git a/packages/pharos/src/components/select/PharosSelect.react.stories.mdx b/packages/pharos/src/components/select/PharosSelect.react.stories.mdx deleted file mode 100644 index 8c03bb822..000000000 --- a/packages/pharos/src/components/select/PharosSelect.react.stories.mdx +++ /dev/null @@ -1,160 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosSelect } from '../../react-components/select/pharos-select'; -import { PharosButton } from '../../react-components/button/pharos-button'; -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Select" - parameters={{ - component: PharosSelect, - options: { selectedPanel: 'addon-controls' }, - knobs: { escapeHTML: false }, - }} -/> - -# Select - -<GuidelineLink path="select" /> - -export const Template = (args) => ( - <PharosSelect - disabled={args.disabled} - hideLabel={args.hideLabel} - required={args.required} - invalidated={args.invalidated} - message={args.message} - value={3} - style={{ display: 'grid', gridTemplateColumns: '300px' }} - > - <span slot="label">Select Demo</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - <option value="4">Option 4</option> - <option value="5">Option 5</option> - </PharosSelect> -); - -<Canvas withToolbar> - <Story name="Base" args={{ disabled: false, hideLabel: false }}> - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosSelect} /> - -# States - -<Canvas withToolbar> - <Story name="States"> - <PharosSelect> - <span slot="label">Normal Select</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - </PharosSelect> - <PharosSelect disabled> - <span slot="label">Disabled Select</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - </PharosSelect> - <PharosSelect invalidated> - <span slot="label">Error Select</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - </PharosSelect> - </Story> -</Canvas> - -# With option groups - -<Canvas withToolbar> - <Story name="With option groups"> - <PharosSelect> - <span slot="label">Normal Select</span> - <optgroup label="Group 1"> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - </optgroup> - <optgroup label="Group 2"> - <option value="3">Option 3</option> - <option value="4">Option 4</option> - </optgroup> - </PharosSelect> - </Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return ( - <PharosSelect onChange={(e) => action('Change')(e.target.value)}> - <span slot="label">Normal Select</span> - <option value="1">Option 1 (Value is 1)</option> - <option value="2">Option 2 (Value is 2)</option> - </PharosSelect> - ); - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - args={{ - required: true, - invalidated: true, - message: 'This field is required, please make a selection', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <PharosSelect name="my-select" required style={{ marginBottom: '0.5rem' }}> - <span slot="label">Select Demo</span> - <option value="">Select an option</option> - <option value="">----------------</option> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </PharosSelect> - <PharosButton - type="submit" - value="Submit" - onClick={(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }} - > - Submit - </PharosButton> - </form> - </Story> -</Canvas> diff --git a/packages/pharos/src/components/select/pharos-select.wc.stories.jsx b/packages/pharos/src/components/select/pharos-select.wc.stories.jsx new file mode 100644 index 000000000..bf565f80e --- /dev/null +++ b/packages/pharos/src/components/select/pharos-select.wc.stories.jsx @@ -0,0 +1,131 @@ +import { html } from 'lit'; +import { action } from '@storybook/addon-actions'; + +import createFormData from '../../utils/createFormData'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Forms/Select', + component: 'pharos-select', + parameters: { + docs: { page: configureDocsPage('select') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (args) => + html` + <pharos-select + ?disabled=${args.disabled} + ?hide-label=${args.hideLabel} + ?required=${args.required} + ?invalidated=${args.invalidated} + .message=${args.message} + style="display: grid; grid-template-columns: 300px;" + > + <span slot="label">Select Demo</span> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3" selected>Option 3</option> + <option value="4">Option 4</option> + <option value="5">Option 5</option> + </pharos-select> + `, + args: defaultArgs, +}; + +export const States = { + render: (_) => + html` + <pharos-select> + <span slot="label">Normal Select</span> + <option value="1">Option 1</option> + <option value="2" selected>Option 2</option> + </pharos-select> + <pharos-select disabled> + <span slot="label">Disabled Select</span> + <option value="1">Option 1</option> + <option value="2" selected>Option 2</option> + </pharos-select> + <pharos-select invalidated> + <span slot="label">Error Select</span> + <option value="1">Option 1</option> + <option value="2" selected>Option 2</option> + </pharos-select> + `, +}; + +export const WithOptionGroups = { + name: 'With option groups', + render: (_) => + html` + <pharos-select> + <span slot="label">Normal Select</span> + <optgroup label="Group 1"> + <option value="1">Option 1</option> + <option value="2" selected>Option 2</option> + </optgroup> + <optgroup label="Group 2"> + <option value="3">Option 3</option> + <option value="4" selected>Option 4</option> + </optgroup> + </pharos-select> + `, +}; + +export const Events = { + render: (_) => + html` + <pharos-select @change="${(e) => action('Change')(e.target.value)}"> + <span slot="label">Normal Select</span> + <option value="1">Option 1 (Value is 1)</option> + <option value="2">Option 2 (Value is 2)</option> + </pharos-select> + `, + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + invalidated: true, + required: true, + message: 'This field is required, please make a selection', + }, +}; + +export const FormData = { + render: (_) => + html` + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <pharos-select name="my-select" required style="margin-bottom: 0.5rem;"> + <span slot="label">Select Demo</span> + <option value="">Select an option</option> + <option value="">----------------</option> + <option value="1">Option 1</option> + <option value="2">Option 2</option> + <option value="3">Option 3</option> + </pharos-select> + <pharos-button + type="submit" + value="Submit" + @click="${(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }}" + >Submit</pharos-button + > + </form> + `, +}; diff --git a/packages/pharos/src/components/select/pharos-select.wc.stories.mdx b/packages/pharos/src/components/select/pharos-select.wc.stories.mdx deleted file mode 100644 index ed14cdf12..000000000 --- a/packages/pharos/src/components/select/pharos-select.wc.stories.mdx +++ /dev/null @@ -1,158 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Select" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Select - -<GuidelineLink path="select" /> - -export const Template = (args) => - html` - <pharos-select - ?disabled=${args.disabled} - ?hide-label=${args.hideLabel} - ?required=${args.required} - ?invalidated=${args.invalidated} - .message=${args.message} - style="display: grid; grid-template-columns: 300px;" - > - <span slot="label">Select Demo</span> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3" selected>Option 3</option> - <option value="4">Option 4</option> - <option value="5">Option 5</option> - </pharos-select> - `; - -<Canvas withToolbar> - <Story name="Base" args={{ disabled: false, hideLabel: false }}> - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-select" /> - -# States - -<Canvas withToolbar> - <Story name="States">{html` - <pharos-select> - <span slot="label">Normal Select</span> - <option value="1">Option 1</option> - <option value="2" selected>Option 2</option> - </pharos-select> - <pharos-select disabled> - <span slot="label">Disabled Select</span> - <option value="1">Option 1</option> - <option value="2" selected>Option 2</option> - </pharos-select> - <pharos-select invalidated> - <span slot="label">Error Select</span> - <option value="1">Option 1</option> - <option value="2" selected>Option 2</option> - </pharos-select> - `}</Story> -</Canvas> - -# With option groups - -<Canvas withToolbar> - <Story name="With option groups">{html` - <pharos-select> - <span slot="label">Normal Select</span> - <optgroup label="Group 1"> - <option value="1">Option 1</option> - <option value="2" selected>Option 2</option> - </optgroup> - <optgroup label="Group 2"> - <option value="3">Option 3</option> - <option value="4" selected>Option 4</option> - </optgroup> - </pharos-select> - `}</Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return html` - <pharos-select @change="${(e) => action('Change')(e.target.value)}"> - <span slot="label">Normal Select</span> - <option value="1">Option 1 (Value is 1)</option> - <option value="2">Option 2 (Value is 2)</option> - </pharos-select> - `; - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - args={{ - required: true, - invalidated: true, - message: 'This field is required, please make a selection', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - {html` - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <pharos-select name="my-select" required style="margin-bottom: 0.5rem;"> - <span slot="label">Select Demo</span> - <option value="">Select an option</option> - <option value="">----------------</option> - <option value="1">Option 1</option> - <option value="2">Option 2</option> - <option value="3">Option 3</option> - </pharos-select> - <pharos-button - type="submit" - value="Submit" - @click="${(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }}" - >Submit</pharos-button - > - </form> - `} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/select/storyArgs.ts b/packages/pharos/src/components/select/storyArgs.ts new file mode 100644 index 000000000..2fbc9cfd3 --- /dev/null +++ b/packages/pharos/src/components/select/storyArgs.ts @@ -0,0 +1,9 @@ +export const defaultArgs = { + disabled: false, + hideLabel: false, + required: false, + invalidated: false, + validated: false, + message: '', + value: 3, +}; diff --git a/packages/pharos/src/components/sidenav/PharosSidenav.react.stories.jsx b/packages/pharos/src/components/sidenav/PharosSidenav.react.stories.jsx new file mode 100644 index 000000000..8c5eed9bc --- /dev/null +++ b/packages/pharos/src/components/sidenav/PharosSidenav.react.stories.jsx @@ -0,0 +1,105 @@ +import { Fragment } from 'react'; + +import { + PharosSidenav, + PharosSidenavSection, + PharosSidenavLink, + PharosSidenavMenu, + PharosInputGroup, + PharosButton, + PharosSidenavButton, + PharosLink, +} from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Sidenav', + component: PharosSidenav, + subcomponents: { + PharosSidenavMenu, + PharosSidenavSection, + PharosSidenavLink, + PharosSidenavButton, + }, + parameters: { + docs: { page: configureDocsPage('sidenav') }, + }, +}; + +export const Base = { + render: (_) => ( + <Fragment> + <PharosSidenavButton /> + <PharosSidenav> + <PharosLink slot="top" href="/" id="jstor-logo"> + <img src="./images/jstor-logo-inverse.svg" alt="Pharos Home" width="72" height="100" /> + </PharosLink> + <PharosInputGroup + slot="top" + name="my-input-group" + placeholder="Search" + hideLabel + onBackground + > + <span slot="label">Search</span> + <PharosButton + name="search-button" + icon="search" + variant="subtle" + label="search" + onBackground + ></PharosButton> + </PharosInputGroup> + <PharosSidenavSection showDivider> + <PharosSidenavLink href="#">Menu item</PharosSidenavLink> + <PharosSidenavMenu label="Menu item w/accordion"> + <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> + </PharosSidenavMenu> + <PharosSidenavLink href="#">Menu item</PharosSidenavLink> + <PharosSidenavLink href="#" target="_blank" external> + External link + </PharosSidenavLink> + <PharosSidenavLink href="#" target="_blank" external> + External link + </PharosSidenavLink> + </PharosSidenavSection> + <PharosSidenavSection label="Section Heading" showDivider> + <PharosSidenavMenu label="Menu item w/accordion"> + <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 3</PharosSidenavLink> + </PharosSidenavMenu> + <PharosSidenavMenu label="Menu item w/accordion"> + <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> + </PharosSidenavMenu> + <PharosSidenavMenu label="Menu item w/accordion"> + <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 3</PharosSidenavLink> + </PharosSidenavMenu> + </PharosSidenavSection> + <PharosSidenavSection label="Section Heading"> + <PharosSidenavMenu label="Menu item w/accordion"> + <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 3</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 4</PharosSidenavLink> + </PharosSidenavMenu> + <PharosSidenavMenu label="Menu item w/accordion"> + <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> + </PharosSidenavMenu> + <PharosSidenavMenu label="Menu item w/accordion"> + <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> + <PharosSidenavLink href="#">Menu item 3</PharosSidenavLink> + </PharosSidenavMenu> + <PharosSidenavLink href="#">Menu item</PharosSidenavLink> + </PharosSidenavSection> + </PharosSidenav> + </Fragment> + ), + parameters: { docs: { disable: true } }, +}; diff --git a/packages/pharos/src/components/sidenav/PharosSidenav.react.stories.mdx b/packages/pharos/src/components/sidenav/PharosSidenav.react.stories.mdx deleted file mode 100644 index a72cddd7f..000000000 --- a/packages/pharos/src/components/sidenav/PharosSidenav.react.stories.mdx +++ /dev/null @@ -1,127 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { Fragment } from 'react'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosSidenav } from '../../react-components/sidenav/pharos-sidenav'; -import { PharosSidenavSection } from '../../react-components/sidenav/pharos-sidenav-section'; -import { PharosSidenavLink } from '../../react-components/sidenav/pharos-sidenav-link'; -import { PharosSidenavMenu } from '../../react-components/sidenav/pharos-sidenav-menu'; -import { PharosInputGroup } from '../../react-components/input-group/pharos-input-group'; -import { PharosButton } from '../../react-components/button/pharos-button'; -import { PharosSidenavButton } from '../../react-components/sidenav/pharos-sidenav-button'; -import { PharosLink } from '../../react-components/link/pharos-link'; - -<Meta - title="Components/Sidenav" - parameters={{ - component: PharosSidenav, - }} -/> - -# Sidenav - -<GuidelineLink path="sidenav" /> - -<Canvas withToolbar> - <Story name="Base" parameters={{ docs: { disable: true } }}> - {() => { - return ( - <Fragment> - <PharosSidenavButton /> - <PharosSidenav> - <PharosLink slot="top" href="/" id="jstor-logo"> - <img - src="./images/jstor-logo-inverse.svg" - alt="Pharos Home" - width="72" - height="100" - /> - </PharosLink> - <PharosInputGroup - slot="top" - name="my-input-group" - placeholder="Search" - hideLabel - onBackground - > - <span slot="label">Search</span> - <PharosButton - name="search-button" - icon="search" - variant="subtle" - label="search" - onBackground - ></PharosButton> - </PharosInputGroup> - <PharosSidenavSection showDivider> - <PharosSidenavLink href="#">Menu item</PharosSidenavLink> - <PharosSidenavMenu label="Menu item w/accordion"> - <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> - </PharosSidenavMenu> - <PharosSidenavLink href="#">Menu item</PharosSidenavLink> - <PharosSidenavLink href="#" target="_blank" external> - External link - </PharosSidenavLink> - <PharosSidenavLink href="#" target="_blank" external> - External link - </PharosSidenavLink> - </PharosSidenavSection> - <PharosSidenavSection label="Section Heading" showDivider> - <PharosSidenavMenu label="Menu item w/accordion"> - <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 3</PharosSidenavLink> - </PharosSidenavMenu> - <PharosSidenavMenu label="Menu item w/accordion"> - <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> - </PharosSidenavMenu> - <PharosSidenavMenu label="Menu item w/accordion"> - <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 3</PharosSidenavLink> - </PharosSidenavMenu> - </PharosSidenavSection> - <PharosSidenavSection label="Section Heading"> - <PharosSidenavMenu label="Menu item w/accordion"> - <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 3</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 4</PharosSidenavLink> - </PharosSidenavMenu> - <PharosSidenavMenu label="Menu item w/accordion"> - <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> - </PharosSidenavMenu> - <PharosSidenavMenu label="Menu item w/accordion"> - <PharosSidenavLink href="#">Menu item 1</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 2</PharosSidenavLink> - <PharosSidenavLink href="#">Menu item 3</PharosSidenavLink> - </PharosSidenavMenu> - <PharosSidenavLink href="#">Menu item</PharosSidenavLink> - </PharosSidenavSection> - </PharosSidenav> - </Fragment> - ); - }} - </Story> -</Canvas> - -## API - -### pharos-sidenav - -<ArgsTable of={PharosSidenav} /> - -### pharos-sidenav-section - -<ArgsTable of={PharosSidenavSection} /> - -### pharos-sidenav-link - -<ArgsTable of={PharosSidenavLink} /> - -### pharos-sidenav-menu - -<ArgsTable of={PharosSidenavMenu} /> diff --git a/packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.jsx b/packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.jsx new file mode 100644 index 000000000..871ff5ff7 --- /dev/null +++ b/packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.jsx @@ -0,0 +1,93 @@ +import { html } from 'lit'; + +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Sidenav', + component: 'pharos-sidenav', + subcomponents: { + PharosSideNavMenu: 'pharos-sidenav-menu', + PharosSidenavSection: 'pharos-sidenav-section', + PharosSidenavLink: 'pharos-sidenav-link', + PharosSidenavButton: 'pharos-sidenav-button', + }, + parameters: { + docs: { page: configureDocsPage('sidenav') }, + }, +}; + +export const Base = { + render: (_) => + html` + <pharos-sidenav-button></pharos-sidenav-button> + <pharos-sidenav> + <pharos-link slot="top" href="/" id="jstor-logo"> + <img src="./images/jstor-logo-inverse.svg" alt="Pharos Home" width="72" height="100" /> + </pharos-link> + <pharos-input-group + slot="top" + name="my-input-group" + placeholder="Search" + hide-label + on-background + > + <span slot="label">Search</span> + <pharos-button + name="search-button" + icon="search" + variant="subtle" + label="search" + on-background + ></pharos-button> + </pharos-input-group> + <pharos-sidenav-section show-divider> + <pharos-sidenav-link href="#">Menu item</pharos-sidenav-link> + <pharos-sidenav-menu label="Menu item w/accordion"> + <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> + </pharos-sidenav-menu> + <pharos-sidenav-link href="#">Menu item</pharos-sidenav-link> + <pharos-sidenav-link href="#" target="_blank" external>External link</pharos-sidenav-link> + <pharos-sidenav-link href="#" target="_blank" external>External link</pharos-sidenav-link> + </pharos-sidenav-section> + <pharos-sidenav-section label="Section Heading" show-divider> + <pharos-sidenav-menu label="Menu item w/accordion"> + <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 3</pharos-sidenav-link> + </pharos-sidenav-menu> + <pharos-sidenav-menu label="Menu item w/accordion"> + <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> + </pharos-sidenav-menu> + <pharos-sidenav-menu label="Menu item w/accordion"> + <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 3</pharos-sidenav-link> + </pharos-sidenav-menu> + </pharos-sidenav-section> + <pharos-sidenav-section label="Section Heading"> + <pharos-sidenav-menu label="Menu item w/accordion"> + <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 3</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 4</pharos-sidenav-link> + </pharos-sidenav-menu> + <pharos-sidenav-menu label="Menu item w/accordion"> + <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> + </pharos-sidenav-menu> + <pharos-sidenav-menu label="Menu item w/accordion"> + <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> + <pharos-sidenav-link href="#">Menu item 3</pharos-sidenav-link> + </pharos-sidenav-menu> + <pharos-sidenav-link href="#">Menu item</pharos-sidenav-link> + </pharos-sidenav-section> + </pharos-sidenav> + `, + parameters: { + chromatic: { viewports: [320, 1200] }, + docs: { disable: true }, + }, +}; diff --git a/packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.mdx b/packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.mdx deleted file mode 100644 index 78a71cc17..000000000 --- a/packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.mdx +++ /dev/null @@ -1,109 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta title="Components/Sidenav" /> - -# Sidenav - -<GuidelineLink path="sidenav" /> - -<Canvas> - <Story - name="Base" - parameters={{ chromatic: { viewports: [320, 1200] }, docs: { disable: true } }} - > - {() => { - return html` - <pharos-sidenav-button></pharos-sidenav-button> - <pharos-sidenav> - <pharos-link slot="top" href="/" id="jstor-logo"> - <img src="./images/jstor-logo-inverse.svg" alt="Pharos Home" width="72" height="100" /> - </pharos-link> - <pharos-input-group - slot="top" - name="my-input-group" - placeholder="Search" - hide-label - on-background - > - <span slot="label">Search</span> - <pharos-button - name="search-button" - icon="search" - variant="subtle" - label="search" - on-background - ></pharos-button> - </pharos-input-group> - <pharos-sidenav-section show-divider> - <pharos-sidenav-link href="#">Menu item</pharos-sidenav-link> - <pharos-sidenav-menu label="Menu item w/accordion"> - <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> - </pharos-sidenav-menu> - <pharos-sidenav-link href="#">Menu item</pharos-sidenav-link> - <pharos-sidenav-link href="#" target="_blank" external - >External link</pharos-sidenav-link - > - <pharos-sidenav-link href="#" target="_blank" external - >External link</pharos-sidenav-link - > - </pharos-sidenav-section> - <pharos-sidenav-section label="Section Heading" show-divider> - <pharos-sidenav-menu label="Menu item w/accordion"> - <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 3</pharos-sidenav-link> - </pharos-sidenav-menu> - <pharos-sidenav-menu label="Menu item w/accordion"> - <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> - </pharos-sidenav-menu> - <pharos-sidenav-menu label="Menu item w/accordion"> - <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 3</pharos-sidenav-link> - </pharos-sidenav-menu> - </pharos-sidenav-section> - <pharos-sidenav-section label="Section Heading"> - <pharos-sidenav-menu label="Menu item w/accordion"> - <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 3</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 4</pharos-sidenav-link> - </pharos-sidenav-menu> - <pharos-sidenav-menu label="Menu item w/accordion"> - <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> - </pharos-sidenav-menu> - <pharos-sidenav-menu label="Menu item w/accordion"> - <pharos-sidenav-link href="#">Menu item 1</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 2</pharos-sidenav-link> - <pharos-sidenav-link href="#">Menu item 3</pharos-sidenav-link> - </pharos-sidenav-menu> - <pharos-sidenav-link href="#">Menu item</pharos-sidenav-link> - </pharos-sidenav-section> - </pharos-sidenav> - `; - }} - </Story> -</Canvas> - -## API - -### pharos-sidenav - -<ArgsTable of="pharos-sidenav" /> - -### pharos-sidenav-section - -<ArgsTable of="pharos-sidenav-section" /> - -### pharos-sidenav-link - -<ArgsTable of="pharos-sidenav-link" /> - -### pharos-sidenav-menu - -<ArgsTable of="pharos-sidenav-menu" /> diff --git a/packages/pharos/src/components/tabs/PharosTabs.react.stories.mdx b/packages/pharos/src/components/tabs/PharosTabs.react.stories.jsx similarity index 60% rename from packages/pharos/src/components/tabs/PharosTabs.react.stories.mdx rename to packages/pharos/src/components/tabs/PharosTabs.react.stories.jsx index 334e72d1e..26d7c61d4 100644 --- a/packages/pharos/src/components/tabs/PharosTabs.react.stories.mdx +++ b/packages/pharos/src/components/tabs/PharosTabs.react.stories.jsx @@ -1,24 +1,20 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; -import { PharosTabs } from '../../react-components/tabs/pharos-tabs'; -import { PharosTab } from '../../react-components/tabs/pharos-tab'; -import { PharosTabPanel } from '../../react-components/tabs/pharos-tab-panel'; +import { PharosTabs, PharosTab, PharosTabPanel } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; -<Meta - title="Components/Tabs" - parameters={{ +export default { + title: 'Components/Tabs', + component: PharosTabs, + subcomponents: { PharosTab, PharosTabPanel }, + parameters: { + docs: { page: configureDocsPage('tabs') }, options: { selectedPanel: 'addon-controls' }, - }} -/> + }, +}; -# Tabs - -<GuidelineLink path="tabs" /> - -<Canvas withToolbar> - <Story name="Base"> +export const Base = { + render: (_) => ( <PharosTabs> <PharosTab id="tab-1" data-panel-id="panel-1"> Tab 1 @@ -39,32 +35,11 @@ import { PharosTabPanel } from '../../react-components/tabs/pharos-tab-panel'; Panel 3 </PharosTabPanel> </PharosTabs> - </Story> -</Canvas> - -## API - -### pharos-tabs - -<ArgsTable of={PharosTabs} /> - -### pharos-tab - -<ArgsTable of={PharosTab} /> + ), +}; -### pharos-tab-panel - -<ArgsTable of={PharosTabPanel} /> - -## Event handling - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > +export const Events = { + render: (_) => ( <PharosTabs onPharos-Tab-Selected={(e) => action('Select')(e.target.id)}> <PharosTab id="tab-1" data-panel-id="panel-1"> Tab 1 @@ -85,13 +60,12 @@ import { PharosTabPanel } from '../../react-components/tabs/pharos-tab-panel'; Panel 3 </PharosTabPanel> </PharosTabs> - </Story> -</Canvas> - -## Panel order + ), + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; -<Canvas withToolbar> - <Story name="Panel Order"> +export const PanelOrder = { + render: (_) => ( <PharosTabs> <PharosTab id="tab-1" data-panel-id="panel-1"> Tab 1 @@ -112,5 +86,30 @@ import { PharosTabPanel } from '../../react-components/tabs/pharos-tab-panel'; I am the panel for tab 1 but listed 3rd in the DOM </PharosTabPanel> </PharosTabs> - </Story> -</Canvas> + ), +}; + +export const PanelSeparator = { + render: (_) => ( + <PharosTabs panel-separator style="width: 100%"> + <PharosTab id="tab-1" data-panel-id="panel-1"> + Tab 1 + </PharosTab> + <PharosTab id="tab-2" data-panel-id="panel-2"> + Tab 2 + </PharosTab> + <PharosTab id="tab-3" data-panel-id="panel-3"> + Tab 3 + </PharosTab> + <PharosTabPanel id="panel-1" slot="panel"> + Panel 1 with a panel separator + </PharosTabPanel> + <PharosTabPanel id="panel-2" slot="panel"> + Panel 2 with a panel separator + </PharosTabPanel> + <PharosTabPanel id="panel-3" slot="panel"> + Panel 3 with a panel separator + </PharosTabPanel> + </PharosTabs> + ), +}; diff --git a/packages/pharos/src/components/tabs/pharos-tabs.wc.stories.mdx b/packages/pharos/src/components/tabs/pharos-tabs.wc.stories.jsx similarity index 75% rename from packages/pharos/src/components/tabs/pharos-tabs.wc.stories.mdx rename to packages/pharos/src/components/tabs/pharos-tabs.wc.stories.jsx index 2f8256e33..3d126474c 100644 --- a/packages/pharos/src/components/tabs/pharos-tabs.wc.stories.mdx +++ b/packages/pharos/src/components/tabs/pharos-tabs.wc.stories.jsx @@ -1,22 +1,21 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; import { action } from '@storybook/addon-actions'; import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; -<Meta - title="Components/Tabs" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Tabs +import { configureDocsPage } from '@config/docsPageConfig'; -<GuidelineLink path="tabs" /> +export default { + title: 'Components/Tabs', + component: 'pharos-tabs', + subcomponents: { PharosTab: 'pharos-tab', PharosTabPanel: 'pharos-tab-panel' }, + parameters: { + docs: { page: configureDocsPage('tabs') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; -<Canvas> - <Story name="Base"> - {html` +export const Base = { + render: (_) => + html` <pharos-tabs> <pharos-tab id="tab-1" data-panel-id="panel-1">Tab 1</pharos-tab> <pharos-tab id="tab-2" data-panel-id="panel-2">Tab 2</pharos-tab> @@ -25,34 +24,12 @@ import { GuidelineLink } from '@config/GuidelineLink'; <pharos-tab-panel id="panel-2" slot="panel">Panel 2</pharos-tab-panel> <pharos-tab-panel id="panel-3" slot="panel">Panel 3</pharos-tab-panel> </pharos-tabs> - `} - </Story> -</Canvas> - -## API - -### pharos-tabs - -<ArgsTable of="pharos-tabs" /> - -### pharos-tab + `, +}; -<ArgsTable of="pharos-tab" /> - -### pharos-tab-panel - -<ArgsTable of="pharos-tab-panel" /> - -## Event handling - -<Canvas> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {html` +export const Events = { + render: (_) => + html` <pharos-tabs @pharos-tab-selected="${(e) => action('Selected')(e.target.id)}"> <pharos-tab id="tab-1" data-panel-id="panel-1">Tab 1</pharos-tab> <pharos-tab id="tab-2" data-panel-id="panel-2">Tab 2</pharos-tab> @@ -61,15 +38,13 @@ import { GuidelineLink } from '@config/GuidelineLink'; <pharos-tab-panel id="panel-2" slot="panel">Panel 2</pharos-tab-panel> <pharos-tab-panel id="panel-3" slot="panel">Panel 3</pharos-tab-panel> </pharos-tabs> - `} - </Story> -</Canvas> - -## Panel order + `, + parameters: { options: { selectedPanel: 'addon-controls' } }, +}; -<Canvas> - <Story name="Panel Order"> - {html` +export const PanelOrder = { + render: (_) => + html` <pharos-tabs> <pharos-tab id="tab-1" data-panel-id="panel-1">Tab 1</pharos-tab> <pharos-tab id="tab-2" data-panel-id="panel-2">Tab 2</pharos-tab> @@ -84,15 +59,12 @@ import { GuidelineLink } from '@config/GuidelineLink'; >I am the panel for tab 1 but listed 3rd in the DOM</pharos-tab-panel > </pharos-tabs> - `} - </Story> -</Canvas> - -## Panel Separator + `, +}; -<Canvas> - <Story name="Panel Separator"> - {html` +export const PanelSeparator = { + render: (_) => + html` <pharos-tabs panel-separator style="width: 100%"> <pharos-tab id="tab-1" data-panel-id="panel-1">Tab 1</pharos-tab> <pharos-tab id="tab-2" data-panel-id="panel-2">Tab 2</pharos-tab> @@ -107,6 +79,5 @@ import { GuidelineLink } from '@config/GuidelineLink'; >Panel 3 with a panel separator</pharos-tab-panel > </pharos-tabs> - `} - </Story> -</Canvas> + `, +}; diff --git a/packages/pharos/src/components/text-input/PharosTextInput.react.stories.jsx b/packages/pharos/src/components/text-input/PharosTextInput.react.stories.jsx new file mode 100644 index 000000000..438c63da3 --- /dev/null +++ b/packages/pharos/src/components/text-input/PharosTextInput.react.stories.jsx @@ -0,0 +1,194 @@ +import { action } from '@storybook/addon-actions'; + +import { PharosTextInput, PharosButton } from '../../react-components'; +import createFormData from '../../utils/createFormData'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; + +export default { + title: 'Forms/Text Input', + components: PharosTextInput, + parameters: { + docs: { page: configureDocsPage('text-input') }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; + +export const Base = { + render: (args) => ( + <div + style={{ + display: 'grid', + gridGap: '1rem', + gridTemplateColumns: 'repeat(1, 300px)', + }} + > + <PharosTextInput + name={args.name} + type={args.type} + hideLabel={args.hideLabel} + validated={args.validated} + invalidated={args.invalidated} + required={args.required} + message={args.message} + placeholder={args.placeholder} + disabled={args.disabled} + readonly={args.readonly} + value={args.value} + > + <span slot="label">{args.label}</span> + </PharosTextInput> + </div> + ), + args: defaultArgs, +}; + +export const States = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridGap: '1rem', + gridTemplateColumns: 'repeat(2, 300px)', + }} + > + <PharosTextInput> + <span slot="label">Empty input</span> + </PharosTextInput> + <PharosTextInput disabled> + <span slot="label">Disabled input</span> + </PharosTextInput> + <PharosTextInput readonly value="Example text"> + <span slot="label">Read only input</span> + </PharosTextInput> + <PharosTextInput placeholder="example placeholder text"> + <span slot="label">Placeholder for input</span> + </PharosTextInput> + <PharosTextInput value="This value was provided"> + <span slot="label">Value provided</span> + </PharosTextInput> + <PharosTextInput hideLabel value="Hidden label input"> + <span slot="label">Hidden label</span> + </PharosTextInput> + <PharosTextInput value="A validated value" validated> + <span slot="label">Validated input</span> + </PharosTextInput> + <PharosTextInput variant="prominent"> + <span slot="label">Prominent input</span> + </PharosTextInput> + </div> + ), +}; + +export const Events = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridGap: '1rem', + gridTemplateColumns: 'repeat(1, 250px)', + }} + > + <PharosTextInput + placeholder="Enter some text" + onChange={(e) => action('Change')(e.target.value)} + onInput={(e) => action('Input')(e.target.value)} + > + <span slot="label">I fire events on input</span> + </PharosTextInput> + </div> + ), + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + label: 'Test me out', + required: true, + invalidated: true, + message: 'This password does not meet the requirements', + }, +}; + +export const CustomErrorMessage = { + render: (args) => ( + <div + style={{ + display: 'grid', + gridGap: '1rem', + gridTemplateColumns: 'repeat(1, 300px)', + }} + > + <PharosTextInput + placeholder="Enter some text" + onChange={(e) => action('Change')(e.target.value)} + onInput={(e) => action('Input')(e.target.value)} + required={args.required} + invalidated={args.invalidated} + validated={args.validated} + message={args.message} + > + <span slot="label">I am invalid</span> + <span slot="message"> + <ul style={{ margin: 0, paddingInlineStart: '1.5rem' }}> + <li>One upper or lowercase letter</li> + <li>One number or special character</li> + <li>6 character minimum</li> + <li>No whitespace</li> + </ul> + </span> + </PharosTextInput> + </div> + ), + args: { + ...Base.args, + invalidated: true, + message: 'This password does not meet the requirements', + }, +}; + +export const FormData = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridGap: '1rem', + gridTemplateColumns: 'repeat(1, 300px)', + }} + > + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <PharosTextInput + style={{ marginBottom: '0.5rem' }} + name="my-text-input" + placeholder="Enter some text" + onChange={(e) => action('Change')(e.target.value)} + onInput={(e) => action('Input')(e.target.value)} + required + > + <span slot="label">Test me out</span> + </PharosTextInput> + <PharosButton + type="submit" + value="Submit" + onClick={(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }} + > + Submit + </PharosButton> + </form> + </div> + ), +}; diff --git a/packages/pharos/src/components/text-input/PharosTextInput.react.stories.mdx b/packages/pharos/src/components/text-input/PharosTextInput.react.stories.mdx deleted file mode 100644 index e59502136..000000000 --- a/packages/pharos/src/components/text-input/PharosTextInput.react.stories.mdx +++ /dev/null @@ -1,258 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosTextInput } from '../../react-components/text-input/pharos-text-input'; -import { PharosButton } from '../../react-components/button/pharos-button'; -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Text Input" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Text Input - -<GuidelineLink path="text-input" /> - -export const Template = (args) => ( - <div - style={{ - display: 'grid', - gridGap: '1rem', - gridTemplateColumns: 'repeat(1, 300px)', - }} - > - <PharosTextInput - name="story-input" - type={args.type} - hideLabel={args.hideLabel} - validated={args.validated} - invalidated={args.invalidated} - required={args.required} - message={args.message} - placeholder={args.placeholder} - disabled={args.disabled} - readonly={args.readonly} - value={args.value} - > - <span slot="label">{args.label}</span> - </PharosTextInput> - </div> -); - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - type: { - options: ['email', 'hidden', 'number', 'password', 'search', 'tel', 'text', 'url'], - control: { - type: 'inline-radio', - }, - defaultValue: 'text', - }, - }} - args={{ - hideLabel: false, - label: 'I am a label', - placeholder: 'Enter some text', - value: '', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosTextInput} /> - -# States - -<Canvas withToolbar> - <Story name="States"> - <div - style={{ - display: 'grid', - gridGap: '1rem', - gridTemplateColumns: 'repeat(2, 300px)', - }} - > - <PharosTextInput> - <span slot="label">Empty input</span> - </PharosTextInput> - <PharosTextInput disabled> - <span slot="label">Disabled input</span> - </PharosTextInput> - <PharosTextInput readonly value="Example text"> - <span slot="label">Read only input</span> - </PharosTextInput> - <PharosTextInput placeholder="example placeholder text"> - <span slot="label">Placeholder for input</span> - </PharosTextInput> - <PharosTextInput value="This value was provided"> - <span slot="label">Value provided</span> - </PharosTextInput> - <PharosTextInput hideLabel value="Hidden label input"> - <span slot="label">Hidden label</span> - </PharosTextInput> - <PharosTextInput value="A validated value" validated> - <span slot="label">Validated input</span> - </PharosTextInput> - <PharosTextInput variant="prominent"> - <span slot="label">Prominent input</span> - </PharosTextInput> - </div> - </Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return ( - <div - style={{ - display: 'grid', - gridGap: '1rem', - gridTemplateColumns: 'repeat(1, 250px)', - }} - > - <PharosTextInput - placeholder="Enter some text" - onChange={(e) => action('Change')(e.target.value)} - onInput={(e) => action('Input')(e.target.value)} - > - <span slot="label">I fire events on input</span> - </PharosTextInput> - </div> - ); - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - argTypes={{ - label: { table: { disable: true }, defaultValue: 'Test me out' }, - placeholder: { - table: { disable: true }, - defaultValue: 'Enter some text', - }, - value: { table: { disable: true }, defaultValue: ' ' }, - type: { table: { disable: true }, defaultValue: 'text' }, - }} - args={{ - label: 'Test me out', - required: true, - invalidated: true, - validated: false, - message: 'This password does not meet the requirements', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Custom Error Message - -export const CustomTemplate = (args) => ( - <div - style={{ - display: 'grid', - gridGap: '1rem', - gridTemplateColumns: 'repeat(1, 300px)', - }} - > - <PharosTextInput - placeholder="Enter some text" - onChange={(e) => action('Change')(e.target.value)} - onInput={(e) => action('Input')(e.target.value)} - required={args.required} - invalidated={args.invalidated} - validated={args.validated} - message={args.message} - > - <span slot="label">I am invalid</span> - <span slot="message"> - <ul style={{ margin: 0, paddingInlineStart: '1.5rem' }}> - <li>One upper or lowercase letter</li> - <li>One number or special character</li> - <li>6 character minimum</li> - <li>No whitespace</li> - </ul> - </span> - </PharosTextInput> - </div> -); - -<Canvas withToolbar> - <Story - name="Custom Error Message" - args={{ - required: false, - invalidated: true, - validated: false, - message: 'This password does not meet the requirements', - }} - > - {CustomTemplate.bind({})} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - <div - style={{ - display: 'grid', - gridGap: '1rem', - gridTemplateColumns: 'repeat(1, 300px)', - }} - > - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <PharosTextInput - style={{ marginBottom: '0.5rem' }} - name="my-text-input" - placeholder="Enter some text" - onChange={(e) => action('Change')(e.target.value)} - onInput={(e) => action('Input')(e.target.value)} - required - > - <span slot="label">Test me out</span> - </PharosTextInput> - <PharosButton - type="submit" - value="Submit" - onClick={(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }} - > - Submit - </PharosButton> - </form> - </div> - </Story> -</Canvas> diff --git a/packages/pharos/src/components/text-input/pharos-text-input.ts b/packages/pharos/src/components/text-input/pharos-text-input.ts index 49cf3c462..a378fa4bf 100644 --- a/packages/pharos/src/components/text-input/pharos-text-input.ts +++ b/packages/pharos/src/components/text-input/pharos-text-input.ts @@ -23,9 +23,18 @@ export type TextInputVariant = 'primary' | 'prominent'; export type TextInputAutocomplete = 'on' | 'off'; -const TYPES = ['email', 'hidden', 'number', 'password', 'search', 'tel', 'text', 'url']; - -const VARIANTS = ['primary', 'prominent']; +export const allTypes = [ + 'email', + 'hidden', + 'number', + 'password', + 'search', + 'tel', + 'text', + 'url', +] as TextInputType[]; + +const VARIANTS = ['primary', 'prominent'] as TextInputVariant[]; const SUBMITTABLE = [ 'input[type="submit"]:not([disabled])', @@ -158,9 +167,9 @@ export class PharosTextInput extends ScopedRegistryMixin(FormMixin(FormElement)) protected override update(changedProperties: PropertyValues): void { super.update && super.update(changedProperties); - if (changedProperties.has('type') && !TYPES.includes(this.type)) { + if (changedProperties.has('type') && !allTypes.includes(this.type)) { throw new Error( - `${this.type} is not a valid text input type. Valid types are: ${TYPES.join(', ')}` + `${this.type} is not a valid text input type. Valid types are: ${allTypes.join(', ')}` ); } diff --git a/packages/pharos/src/components/text-input/pharos-text-input.wc.stories.jsx b/packages/pharos/src/components/text-input/pharos-text-input.wc.stories.jsx new file mode 100644 index 000000000..be4099b2b --- /dev/null +++ b/packages/pharos/src/components/text-input/pharos-text-input.wc.stories.jsx @@ -0,0 +1,169 @@ +import { html } from 'lit'; +import { action } from '@storybook/addon-actions'; +import { ifDefined } from 'lit/directives/if-defined.js'; + +import createFormData from '../../utils/createFormData'; +import { defaultArgs, argTypes } from './storyArgs'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Forms/Text Input', + component: 'pharos-text-input', + parameters: { + docs: { page: configureDocsPage('text-input') }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; + +export const Base = { + render: (args) => + html` + <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> + <pharos-text-input + name="${args.name}" + type="${ifDefined(args.type)}" + ?hide-label="${args.hideLabel}" + ?validated="${args.validated}" + ?invalidated="${args.invalidated}" + ?required="${args.required}" + .message="${args.message}" + .placeholder=${args.placeholder} + ?disabled=${args.disabled} + ?readonly=${args.readonly} + .value=${args.value} + > + <span slot="label">${args.label}</span> + </pharos-text-input> + </div> + `, + args: defaultArgs, +}; + +export const States = { + render: (_) => + html` + <div + style="display: grid; grid-gap: 1rem; grid-template-columns: repeat(2, 300px); 1rem 300px" + > + <pharos-text-input name="default"><span slot="label">Empty input</span></pharos-text-input> + <pharos-text-input name="disabled" disabled + ><span slot="label">Disabled input</span></pharos-text-input + > + <pharos-text-input name="readonly" readonly value="Example text" + ><span slot="label">Read only input</span></pharos-text-input + > + <pharos-text-input name="placeholder" placeholder="example placeholder text" + ><span slot="label">Placeholder for input</span></pharos-text-input + > + <pharos-text-input name="provided" value="This value was provided" + ><span slot="label">Value provided</span></pharos-text-input + > + <pharos-text-input name="hidden" hide-label value="Hidden label input" + ><span slot="label">Hidden label</span></pharos-text-input + > + <pharos-text-input name="validated" value="A validated value" validated + ><span slot="label">Validated input</span></pharos-text-input + > + <pharos-text-input name="prominent" placeholder="so prominent" variant="prominent" + ><span slot="label">Prominent input</span></pharos-text-input + > + </div> + `, +}; + +export const Events = { + render: (_) => + html` + <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> + <pharos-text-input + placeholder="Enter some text" + @change="${(e) => action('Change')(e.target.value)}" + @input="${(e) => action('Input')(e.target.value)}" + > + <span slot="label">I fire events on input</span> + </pharos-text-input> + </div> + `, + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + label: 'Test me out', + required: true, + invalidated: true, + message: 'This password does not meet the requirements', + }, +}; + +export const CustomErrorMessage = { + render: (args) => + html` + <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> + <pharos-text-input + placeholder="Enter some text" + @change="${(e) => action('Change')(e.target.value)}" + @input="${(e) => action('Input')(e.target.value)}" + ?required="${args.required}" + ?invalidated=${args.invalidated} + ?validated=${args.validated} + .message=${args.message} + > + <span slot="label">I am invalid</span> + <span slot="message"> + <ul style="margin: 0;padding-inline-start: 1.5rem;"> + <li>One upper or lowercase letter</li> + <li>One number or special character</li> + <li>6 character minimum</li> + <li>No whitespace</li> + </ul> + </span> + </pharos-text-input> + </div> + `, + args: { + ...Base.args, + invalidated: true, + message: 'This password does not meet the requirements', + }, +}; + +export const FormData = { + render: (_) => + html` + <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <pharos-text-input + style="margin-bottom: 0.5rem;" + name="my-text-input" + placeholder="Enter some text" + @change="${(e) => action('Change')(e.target.value)}" + @input="${(e) => action('Input')(e.target.value)}" + required + > + <span slot="label">Test me out</span> + </pharos-text-input> + <pharos-button + type="submit" + value="Submit" + @click="${(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }}" + >Submit + </pharos-button> + </form> + </div> + `, +}; diff --git a/packages/pharos/src/components/text-input/pharos-text-input.wc.stories.mdx b/packages/pharos/src/components/text-input/pharos-text-input.wc.stories.mdx deleted file mode 100644 index 16448aede..000000000 --- a/packages/pharos/src/components/text-input/pharos-text-input.wc.stories.mdx +++ /dev/null @@ -1,220 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { action } from '@storybook/addon-actions'; -import { ifDefined } from 'lit/directives/if-defined.js'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Text Input" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Text Input - -<GuidelineLink path="text-input" /> - -export const Template = (args) => - html` - <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> - <pharos-text-input - name="story-input" - type="${ifDefined(args.type)}" - ?hide-label="${args.hideLabel}" - ?validated="${args.validated}" - ?invalidated="${args.invalidated}" - ?required="${args.required}" - .message="${args.message}" - .placeholder=${args.placeholder} - ?disabled=${args.disabled} - ?readonly=${args.readonly} - .value=${args.value} - > - <span slot="label">${args.label}</span> - </pharos-text-input> - </div> - `; - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - type: { - options: ['email', 'hidden', 'number', 'password', 'search', 'tel', 'text', 'url'], - control: { - type: 'inline-radio', - }, - }, - }} - args={{ hideLabel: false, label: 'I am a label', placeholder: 'placeholder', value: '' }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-text-input" /> - -# States - -<Canvas withToolbar> - <Story name="States"> - {html` - <div - style="display: grid; grid-gap: 1rem; grid-template-columns: repeat(2, 300px); 1rem 300px" - > - <pharos-text-input name="default"><span slot="label">Empty input</span></pharos-text-input> - <pharos-text-input name="disabled" disabled - ><span slot="label">Disabled input</span></pharos-text-input - > - <pharos-text-input name="readonly" readonly value="Example text" - ><span slot="label">Read only input</span></pharos-text-input - > - <pharos-text-input name="placeholder" placeholder="example placeholder text" - ><span slot="label">Placeholder for input</span></pharos-text-input - > - <pharos-text-input name="provided" value="This value was provided" - ><span slot="label">Value provided</span></pharos-text-input - > - <pharos-text-input name="hidden" hide-label value="Hidden label input" - ><span slot="label">Hidden label</span></pharos-text-input - > - <pharos-text-input name="validated" value="A validated value" validated - ><span slot="label">Validated input</span></pharos-text-input - > - <pharos-text-input name="prominent" placeholder="so prominent" variant="prominent" - ><span slot="label">Prominent input</span></pharos-text-input - > - </div> - `} - </Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return html` - <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> - <pharos-text-input - placeholder="Enter some text" - @change="${(e) => action('Change')(e.target.value)}" - @input="${(e) => action('Input')(e.target.value)}" - > - <span slot="label">I fire events on input</span> - </pharos-text-input> - </div> - `; - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - args={{ - label: 'Test me out', - required: true, - invalidated: true, - validated: false, - message: 'This password does not meet the requirements', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Custom Error Message - -export const CustomTemplate = (args) => - html` - <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> - <pharos-text-input - placeholder="Enter some text" - @change="${(e) => action('Change')(e.target.value)}" - @input="${(e) => action('Input')(e.target.value)}" - ?required="${args.required}" - ?invalidated=${args.invalidated} - ?validated=${args.validated} - .message=${args.message} - > - <span slot="label">I am invalid</span> - <span slot="message"> - <ul style="margin: 0;padding-inline-start: 1.5rem;"> - <li>One upper or lowercase letter</li> - <li>One number or special character</li> - <li>6 character minimum</li> - <li>No whitespace</li> - </ul> - </span> - </pharos-text-input> - </div> - `; - -<Canvas withToolbar> - <Story - name="Custom Error Message" - args={{ - required: false, - invalidated: true, - validated: false, - message: 'This password does not meet the requirements', - }} - > - {CustomTemplate.bind({})} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - {() => { - return html` - <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <pharos-text-input - style="margin-bottom: 0.5rem;" - name="my-text-input" - placeholder="Enter some text" - @change="${(e) => action('Change')(e.target.value)}" - @input="${(e) => action('Input')(e.target.value)}" - required - > - <span slot="label">Test me out</span> - </pharos-text-input> - <pharos-button - type="submit" - value="Submit" - @click="${(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }}" - >Submit - </pharos-button> - </form> - </div> - `; - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/text-input/storyArgs.ts b/packages/pharos/src/components/text-input/storyArgs.ts new file mode 100644 index 000000000..b440da87e --- /dev/null +++ b/packages/pharos/src/components/text-input/storyArgs.ts @@ -0,0 +1,26 @@ +import { allTypes } from './pharos-text-input'; + +export const defaultArgs = { + name: 'story-input', + type: 'text', + label: 'I am a label', + hideLabel: false, + validated: false, + invalidated: false, + required: false, + message: '', + placeholder: 'placeholder', + disabled: false, + readonly: false, + value: '', +}; + +export const argTypes = { + type: { + options: allTypes, + control: { + type: 'inline-radio', + }, + defaultValue: 'text', + }, +}; diff --git a/packages/pharos/src/components/textarea/PharosTextarea.react.stories.jsx b/packages/pharos/src/components/textarea/PharosTextarea.react.stories.jsx new file mode 100644 index 000000000..ccd09919a --- /dev/null +++ b/packages/pharos/src/components/textarea/PharosTextarea.react.stories.jsx @@ -0,0 +1,180 @@ +import { action } from '@storybook/addon-actions'; + +import { PharosTextarea, PharosButton } from '../../react-components'; +import createFormData from '../../utils/createFormData'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Forms/Textarea', + component: PharosTextarea, + parameters: { + docs: { page: configureDocsPage('textarea') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (args) => ( + <div + style={{ + display: 'grid', + gridGap: '1rem', + gridTemplateColumns: 'repeat(1, 250px)', + }} + > + <PharosTextarea + name="story-input" + cols={args.columns} + disabled={args.disabled} + hideLabel={args.hideLabel} + invalidated={args.invalidated} + message={args.message} + placeholder={args.placeholder} + resize={args.resize} + readonly={args.readonly} + required={args.required} + rows={args.rows} + validated={args.validated} + value={args.value} + > + <span slot="label">{args.label}</span> + </PharosTextarea> + </div> + ), + args: defaultArgs, +}; + +export const States = { + render: (_) => ( + <div style={{ display: 'grid', gridGap: '1rem', gridTemplateColumns: 'repeat(2, 250px)' }}> + <PharosTextarea> + <span slot="label">Empty textarea</span> + </PharosTextarea> + <PharosTextarea disabled> + <span slot="label">Disabled textarea</span> + </PharosTextarea> + <PharosTextarea readonly value="Example text"> + <span slot="label">Read only textarea</span> + </PharosTextarea> + <PharosTextarea placeholder="Placeholder text"> + <span slot="label">Placeholder for textarea</span> + </PharosTextarea> + <PharosTextarea value="This value is provided"> + <span slot="label">Value provided textarea</span> + </PharosTextarea> + <PharosTextarea resize="none"> + <span slot="label">non-resizeable textarea</span> + </PharosTextarea> + </div> + ), +}; + +export const Events = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridGap: '1rem', + gridTemplateColumns: 'repeat(1, 250px)', + }} + > + <PharosTextarea + placeholder="Enter some text" + onChange={(e) => action('Change')(e.target.value)} + onInput={(e) => action('Input')(e.target.value)} + > + <span slot="label">I fire events on input</span> + </PharosTextarea> + </div> + ), + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + label: 'Test me out', + value: '', + placeholder: '', + required: true, + invalidated: true, + message: 'This field does not meet the requirements', + }, +}; + +export const CustomErrorMessage = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridGap: '1rem', + gridTemplateColumns: 'repeat(1, 250px)', + }} + > + <PharosTextarea + placeholder="Enter some text" + onChange={(e) => action('Change')(e.target.value)} + onInput={(e) => action('Input')(e.target.value)} + required={args.required} + invalidated={args.invalidated} + validated={args.validated} + message={args.message} + > + <span slot="label">I am invalid</span> + <span slot="message"> + <p>Must be over 100 characters long</p> + </span> + </PharosTextarea> + </div> + ), + args: { + ...Base.args, + invalidated: true, + message: 'This field does not meet the requirements', + }, +}; + +export const FormData = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridGap: '1rem', + gridTemplateColumns: 'repeat(1, 250px)', + }} + > + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <PharosTextarea + name="my-textarea" + placeholder="Enter some text" + style={{ marginBottom: '0.5rem' }} + onChange={(e) => action('Change')(e.target.value)} + onInput={(e) => action('Input')(e.target.value)} + required + > + <span slot="label">I am invalid</span> + </PharosTextarea> + <PharosButton + type="submit" + value="Submit" + onClick={(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }} + > + Submit + </PharosButton> + </form> + </div> + ), +}; diff --git a/packages/pharos/src/components/textarea/PharosTextarea.react.stories.mdx b/packages/pharos/src/components/textarea/PharosTextarea.react.stories.mdx deleted file mode 100644 index 34f2bb9b1..000000000 --- a/packages/pharos/src/components/textarea/PharosTextarea.react.stories.mdx +++ /dev/null @@ -1,235 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosTextarea } from '../../react-components/textarea/pharos-textarea'; -import { PharosButton } from '../../react-components/button/pharos-button'; -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Textarea" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Textarea - -<GuidelineLink path="textarea" /> - -export const Template = (args) => ( - <div - style={{ - display: 'grid', - gridGap: '1rem', - gridTemplateColumns: 'repeat(1, 250px)', - }} - > - <PharosTextarea - name="story-input" - cols={args.columns} - disabled={args.disabled} - hideLabel={args.hideLabel} - invalidated={args.invalidated} - message={args.message} - placeholder={args.placeholder} - resize={args.resize} - readonly={args.readonly} - required={args.required} - rows={args.rows} - validated={args.validated} - value={args.value} - > - <span slot="label">{args.label}</span> - </PharosTextarea> - </div> -); - -<Canvas withToolbar> - <Story - name="Base" - argTypes={{ - type: { table: { disable: true }, defaultValue: 'text' }, - }} - args={{ - label: 'I am a label', - placeholder: 'Enter some text', - value: '', - columns: 20, - rows: 2, - hideLabel: false, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosTextarea} /> - -<Canvas withToolbar> - <Story name="States"> - <div style={{ display: 'grid', gridGap: '1rem', gridTemplateColumns: 'repeat(2, 250px)' }}> - <PharosTextarea> - <span slot="label">Empty textarea</span> - </PharosTextarea> - <PharosTextarea disabled> - <span slot="label">Disabled textarea</span> - </PharosTextarea> - <PharosTextarea readonly value="Example text"> - <span slot="label">Read only textarea</span> - </PharosTextarea> - <PharosTextarea placeholder="Placeholder text"> - <span slot="label">Placeholder for textarea</span> - </PharosTextarea> - <PharosTextarea value="This value is provided"> - <span slot="label">Value provided textarea</span> - </PharosTextarea> - <PharosTextarea resize="none"> - <span slot="label">non-resizeable textarea</span> - </PharosTextarea> - </div> - </Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return ( - <div - style={{ - display: 'grid', - gridGap: '1rem', - gridTemplateColumns: 'repeat(1, 250px)', - }} - > - <PharosTextarea - placeholder="Enter some text" - onChange={(e) => action('Change')(e.target.value)} - onInput={(e) => action('Input')(e.target.value)} - > - <span slot="label">I fire events on input</span> - </PharosTextarea> - </div> - ); - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - argTypes={{ - label: { table: { disable: true }, defaultValue: 'Test me out' }, - placeholder: { - table: { disable: true }, - defaultValue: 'Enter some text', - }, - value: { table: { disable: true }, defaultValue: ' ' }, - }} - args={{ - required: true, - invalidated: true, - validated: false, - message: 'This field does not meet the requirements', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Custom Error Message - -export const CustomTemplate = (args) => ( - <div - style={{ - display: 'grid', - gridGap: '1rem', - gridTemplateColumns: 'repeat(1, 250px)', - }} - > - <PharosTextarea - placeholder="Enter some text" - onChange={(e) => action('Change')(e.target.value)} - onInput={(e) => action('Input')(e.target.value)} - required={args.required} - invalidated={args.invalidated} - validated={args.validated} - message={args.message} - > - <span slot="label">I am invalid</span> - <span slot="message"> - <p>Must be over 100 characters long</p> - </span> - </PharosTextarea> - </div> -); - -<Canvas withToolbar> - <Story - name="Custom Error Message" - args={{ - required: false, - invalidated: true, - validated: false, - message: 'This field does not meet the requirements', - }} - > - {CustomTemplate.bind({})} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - <div - style={{ - display: 'grid', - gridGap: '1rem', - gridTemplateColumns: 'repeat(1, 250px)', - }} - > - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <PharosTextarea - name="my-textarea" - placeholder="Enter some text" - style={{ marginBottom: '0.5rem' }} - onChange={(e) => action('Change')(e.target.value)} - onInput={(e) => action('Input')(e.target.value)} - required - > - <span slot="label">I am invalid</span> - </PharosTextarea> - <PharosButton - type="submit" - value="Submit" - onClick={(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }} - > - Submit - </PharosButton> - </form> - </div> - </Story> -</Canvas> diff --git a/packages/pharos/src/components/textarea/pharos-textarea.wc.stories.jsx b/packages/pharos/src/components/textarea/pharos-textarea.wc.stories.jsx new file mode 100644 index 000000000..e69fd27ee --- /dev/null +++ b/packages/pharos/src/components/textarea/pharos-textarea.wc.stories.jsx @@ -0,0 +1,160 @@ +import { html } from 'lit'; +import { action } from '@storybook/addon-actions'; +import { ifDefined } from 'lit/directives/if-defined.js'; + +import createFormData from '../../utils/createFormData'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs } from './storyArgs'; + +export default { + title: 'Forms/Textarea', + component: 'pharos-textarea', + parameters: { + docs: { page: configureDocsPage('textarea') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (args) => + html` + <div style="display: grid; grid-gap: 1rem; grid-template-columns: 250px;"> + <pharos-textarea + name="story-input" + .cols="${args.columns}" + ?disabled=${args.disabled} + ?hide-label="${args.hideLabel}" + ?invalidated=${args.invalidated} + .message=${args.message} + .placeholder=${args.placeholder} + .resize="${ifDefined(args.resize)}" + ?readonly=${args.readonly} + ?required=${args.required} + .rows="${args.rows}" + ?validated=${args.validated} + .value=${args.value} + > + <span slot="label">${args.label}</span> + </pharos-textarea> + </div> + `, + args: defaultArgs, +}; + +export const States = { + render: (_) => + html` + <div style="display: grid; grid-gap: 1rem; grid-template-columns: repeat(2, 250px);"> + <pharos-textarea name="default"><span slot="label">Empty textarea</span></pharos-textarea> + <pharos-textarea name="disabled" disabled + ><span slot="label">Disabled textarea</span></pharos-textarea + > + <pharos-textarea name="readonly" readonly value="Example text" + ><span slot="label">Read only textarea</span></pharos-textarea + > + <pharos-textarea name="placeholder" placeholder="Placeholder text" + ><span slot="label">Placeholder for textarea</span></pharos-textarea + > + <pharos-textarea name="provided" value="This value is provided" + ><span slot="label">Value provided textarea</span></pharos-textarea + > + <pharos-textarea name="resize" resize="none" + ><span slot="label">non-resizeable textarea</span></pharos-textarea + > + </div> + `, +}; + +export const Events = { + render: (_) => + html` + <div style="display: grid; grid-gap: 1rem; grid-template-columns: 250px;"> + <pharos-textarea + placeholder="Enter some text" + @change="${(e) => action('Change')(e.target.value)}" + @input="${(e) => action('Input')(e.target.value)}" + > + <span slot="label">I fire events on input</span> + </pharos-textarea> + </div> + `, + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const Validity = { + ...Base, + args: { + ...Base.args, + label: 'Test me out', + required: true, + value: '', + placeholder: '', + invalidated: true, + message: 'This field does not meet the requirements', + }, +}; + +export const CustomErrorMessage = { + render: (args) => + html` + <div style="display: grid; grid-gap: 1rem; grid-template-columns: 350px;"> + <pharos-textarea + placeholder="Enter some text" + @change="${(e) => action('Change')(e.target.value)}" + @input="${(e) => action('Input')(e.target.value)}" + ?required=${args.required} + ?invalidated=${args.invalidated} + ?validated=${args.validated} + .message=${args.message} + > + <span slot="label">I am invalid</span> + <span slot="message"> + <p>Must be over 100 characters long</p> + </span> + </pharos-textarea> + </div> + `, + args: { + ...Base.args, + invalidated: true, + message: 'This field does not meet the requirements', + }, +}; + +export const FormData = { + render: (_) => + html` + <div style="display: grid; grid-gap: 1rem; grid-template-columns: 350px;"> + <form name="my-form" action="https://httpbin.org/post" method="POST"> + <pharos-textarea + name="my-textarea" + placeholder="Enter some text" + style="margin-bottom: 0.5rem;" + @change="${(e) => action('Change')(e.target.value)}" + @input="${(e) => action('Input')(e.target.value)}" + required + > + <span slot="label">I am invalid</span> + </pharos-textarea> + <pharos-button + type="submit" + value="Submit" + @click="${(e) => { + e.preventDefault(); + const form = document.querySelector('form[name="my-form"]'); + const formData = createFormData(form); + const xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://httpbin.org/post', true); + xhr.onload = function () { + const response = JSON.parse(this.responseText); + action('FormData')(JSON.stringify(response.form)); + }; + xhr.send(formData); + }}" + > + Submit + </pharos-button> + </form> + </div> + `, +}; diff --git a/packages/pharos/src/components/textarea/pharos-textarea.wc.stories.mdx b/packages/pharos/src/components/textarea/pharos-textarea.wc.stories.mdx deleted file mode 100644 index dac1125e2..000000000 --- a/packages/pharos/src/components/textarea/pharos-textarea.wc.stories.mdx +++ /dev/null @@ -1,215 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { action } from '@storybook/addon-actions'; -import { ifDefined } from 'lit/directives/if-defined.js'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import createFormData from '../../utils/createFormData'; - -<Meta - title="Forms/Textarea" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Textarea - -<GuidelineLink path="textarea" /> - -export const Template = (args) => - html` - <div style="display: grid; grid-gap: 1rem; grid-template-columns: 250px;"> - <pharos-textarea - name="story-input" - .cols="${args.columns}" - ?disabled=${args.disabled} - ?hide-label="${args.hideLabel}" - ?invalidated=${args.invalidated} - .message=${args.message} - .placeholder=${args.placeholder} - .resize="${ifDefined(args.resize)}" - ?readonly=${args.readonly} - ?required=${args.required} - .rows="${args.rows}" - ?validated=${args.validated} - .value=${args.value} - > - <span slot="label">${args.label}</span> - </pharos-textarea> - </div> - `; - -<Canvas withToolbar> - <Story - name="Base" - args={{ - label: 'I am a label', - hideLabel: false, - columns: 20, - rows: 2, - value: 'Some text', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-textarea" /> - -# States - -<Canvas withToolbar> - <Story name="States"> - {html` - <div style="display: grid; grid-gap: 1rem; grid-template-columns: repeat(2, 250px);"> - <pharos-textarea name="default"><span slot="label">Empty textarea</span></pharos-textarea> - <pharos-textarea name="disabled" disabled - ><span slot="label">Disabled textarea</span></pharos-textarea - > - <pharos-textarea name="readonly" readonly value="Example text" - ><span slot="label">Read only textarea</span></pharos-textarea - > - <pharos-textarea name="placeholder" placeholder="Placeholder text" - ><span slot="label">Placeholder for textarea</span></pharos-textarea - > - <pharos-textarea name="provided" value="This value is provided" - ><span slot="label">Value provided textarea</span></pharos-textarea - > - <pharos-textarea name="resize" resize="none" - ><span slot="label">non-resizeable textarea</span></pharos-textarea - > - </div> - `} - </Story> -</Canvas> - -# Events - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {() => { - return html` - <div style="display: grid; grid-gap: 1rem; grid-template-columns: 250px;"> - <pharos-textarea - placeholder="Enter some text" - @change="${(e) => action('Change')(e.target.value)}" - @input="${(e) => action('Input')(e.target.value)}" - > - <span slot="label">I fire events on input</span> - </pharos-textarea> - </div> - `; - }} - </Story> -</Canvas> - -# Validity - -<Canvas withToolbar> - <Story - name="Validity" - argTypes={{ - label: { table: { disable: true }, defaultValue: 'Test me out' }, - placeholder: { - table: { disable: true }, - defaultValue: 'Enter some text', - }, - value: { table: { disable: true }, defaultValue: ' ' }, - }} - args={{ - required: true, - invalidated: true, - validated: false, - message: 'This field does not meet the requirements', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Custom Error Message - -export const CustomTemplate = (args) => - html` - <div style="display: grid; grid-gap: 1rem; grid-template-columns: 350px;"> - <pharos-textarea - placeholder="Enter some text" - @change="${(e) => action('Change')(e.target.value)}" - @input="${(e) => action('Input')(e.target.value)}" - ?required=${args.required} - ?invalidated=${args.invalidated} - ?validated=${args.validated} - .message=${args.message} - > - <span slot="label">I am invalid</span> - <span slot="message"> - <p>Must be over 100 characters long</p> - </span> - </pharos-textarea> - </div> - `; - -<Canvas withToolbar> - <Story - name="Custom Error Message" - args={{ - required: false, - invalidated: true, - validated: false, - message: 'This field does not meet the requirements', - }} - > - {CustomTemplate.bind({})} - </Story> -</Canvas> - -# Form Data - -<Canvas withToolbar> - <Story name="Form Data"> - {() => { - return html` - <div style="display: grid; grid-gap: 1rem; grid-template-columns: 350px;"> - <form name="my-form" action="https://httpbin.org/post" method="POST"> - <pharos-textarea - name="my-textarea" - placeholder="Enter some text" - style="margin-bottom: 0.5rem;" - @change="${(e) => action('Change')(e.target.value)}" - @input="${(e) => action('Input')(e.target.value)}" - required - > - <span slot="label">I am invalid</span> - </pharos-textarea> - <pharos-button - type="submit" - value="Submit" - @click="${(e) => { - e.preventDefault(); - const form = document.querySelector('form[name="my-form"]'); - const formData = createFormData(form); - const xhr = new XMLHttpRequest(); - xhr.open('POST', 'https://httpbin.org/post', true); - xhr.onload = function () { - const response = JSON.parse(this.responseText); - action('FormData')(JSON.stringify(response.form)); - }; - xhr.send(formData); - }}" - > - Submit - </pharos-button> - </form> - </div> - `; - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/textarea/storyArgs.ts b/packages/pharos/src/components/textarea/storyArgs.ts new file mode 100644 index 000000000..31b478dd2 --- /dev/null +++ b/packages/pharos/src/components/textarea/storyArgs.ts @@ -0,0 +1,15 @@ +export const defaultArgs = { + name: 'story-input', + label: 'I am a label', + disabled: false, + hideLabel: false, + invalidated: false, + validated: false, + message: '', + placeholder: 'Enter some text', + readonly: false, + required: false, + value: 'Some text', + rows: 2, + columns: 20, +}; diff --git a/packages/pharos/src/components/toast/PharosToast.react.stories.jsx b/packages/pharos/src/components/toast/PharosToast.react.stories.jsx new file mode 100644 index 000000000..d33ce5955 --- /dev/null +++ b/packages/pharos/src/components/toast/PharosToast.react.stories.jsx @@ -0,0 +1,166 @@ +import { useEffect } from 'react'; + +// eslint-disable-next-line no-unused-vars +import { PharosToast, PharosToaster, PharosButton, PharosLink } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Toast', + component: PharosToast, + subcomponents: { PharosToaster }, + parameters: { + docs: { page: configureDocsPage('toast') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (_) => ( + <> + <PharosButton + id="success-toast-button" + onClick={() => { + const event = new CustomEvent('pharos-toast-open', { + detail: { + content: + 'The item has moved to your <PharosLink href="#" onBackground bold>Workspace</PharosLink>.', + }, + }); + document.dispatchEvent(event); + }} + > + Have a toast! + </PharosButton> + <PharosToaster></PharosToaster> + </> + ), +}; + +export const Error = { + render: (_) => ( + <> + <PharosButton + id="error-toast-button" + onClick={() => { + const event = new CustomEvent('pharos-toast-open', { + detail: { + status: 'error', + content: + 'Sorry, we were unable to move the item. Please try again later. If the issue persists, <PharosLink href="#" onBackground bold>contact JSTOR Support</PharosLink>.', + }, + }); + document.dispatchEvent(event); + }} + > + Have a toast! + </PharosButton> + <PharosToaster></PharosToaster> + </> + ), +}; + +export const LongContent = { + render: (_) => { + const effect = () => { + useEffect(() => { + setTimeout(() => { + document.querySelector('#long-toast-button').click(); + }, 300); + }); + }; + effect(); + return ( + <> + <PharosButton + id="long-toast-button" + onClick={() => { + const event = new CustomEvent('pharos-toast-open', { + detail: { + content: + 'This is a notification for longer content, which may even include a <pharos-link href="#" on-background bold>link</pharos-link>.', + }, + }); + document.dispatchEvent(event); + }} + > + Click to me see a long name + </PharosButton> + <PharosToaster></PharosToaster> + </> + ); + }, +}; + +export const Info = { + render: (_) => { + const effect = () => { + useEffect(() => { + document.querySelector('#info-toast-button').click(); + }); + }; + effect(); + return ( + <> + <PharosButton + id="info-toast-button" + onClick={() => { + const event = new CustomEvent('pharos-toast-open', { + detail: { + status: 'info', + content: 'We are working on your request.', + }, + }); + document.dispatchEvent(event); + }} + > + Click me to know more + </PharosButton> + <PharosToaster></PharosToaster> + </> + ); + }, +}; + +export const UpdateableToast = { + render: (_) => { + const effect = () => { + useEffect(() => { + document.querySelector('#info-toast-button').click(); + }); + }; + effect(); + return ( + <> + <PharosButton + id="info-toast-button" + onClick={() => { + const event = new CustomEvent('pharos-toast-open', { + detail: { + status: 'info', + content: 'Saving 15 items to your Workspace', + indefinite: true, + }, + }); + document.dispatchEvent(event); + setTimeout(() => { + const updateEvent = new CustomEvent('pharos-toast-update', { + detail: { + status: 'success', + content: '15 items succsessfully saved', + }, + }); + document.dispatchEvent(updateEvent); + }, '3000'); + setTimeout(() => { + const updateEvent = new CustomEvent('pharos-toast-close', {}); + document.dispatchEvent(updateEvent); + }, '6000'); + }} + > + Save items to Workspace + </PharosButton> + <PharosToaster></PharosToaster> + </> + ); + }, +}; diff --git a/packages/pharos/src/components/toast/PharosToast.react.stories.mdx b/packages/pharos/src/components/toast/PharosToast.react.stories.mdx deleted file mode 100644 index accf0f468..000000000 --- a/packages/pharos/src/components/toast/PharosToast.react.stories.mdx +++ /dev/null @@ -1,103 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { useEffect } from 'react'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosToast } from '../../react-components/toast/pharos-toast'; -import { PharosToaster } from '../../react-components/toast/pharos-toaster'; -import { PharosButton } from '../../react-components/button/pharos-button'; -// eslint-disable-next-line no-unused-vars -import { PharosLink } from '../../react-components/link/pharos-link'; - -<Meta - title="Components/Toast" - parameters={{ - component: PharosToast, - }} -/> - -# Toast - -<GuidelineLink path="toast" /> - -<Canvas withToolbar> - <Story name="Base"> - <PharosButton - id="success-toast-button" - onClick={() => { - const event = new CustomEvent('pharos-toast-open', { - detail: { - content: - 'The item has moved to your <PharosLink href="#" onBackground bold>Workspace</PharosLink>.', - }, - }); - document.dispatchEvent(event); - }} - > - Have a toast! - </PharosButton> - <PharosToaster></PharosToaster> - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosToast} /> - -# Error Toast - -<Canvas withToolbar> - <Story name="Error"> - <PharosButton - id="error-toast-button" - onClick={() => { - const event = new CustomEvent('pharos-toast-open', { - detail: { - status: 'error', - content: - 'Sorry, we were unable to move the item. Please try again later. If the issue persists, <PharosLink href="#" onBackground bold>contact JSTOR Support</PharosLink>.', - }, - }); - document.dispatchEvent(event); - }} - > - Have a toast! - </PharosButton> - <PharosToaster></PharosToaster> - </Story> -</Canvas> - -## Long Content Toast - -<Canvas> - <Story name="Long Content"> - {() => { - const effect = () => { - useEffect(() => { - setTimeout(() => { - document.querySelector('#long-toast-button').click(); - }, 300); - }); - }; - effect(); - return ( - <> - <PharosButton - id="long-toast-button" - onClick={() => { - const event = new CustomEvent('pharos-toast-open', { - detail: { - content: - 'This is a notification for longer content, which may even include a <pharos-link href="#" on-background bold>link</pharos-link>.', - }, - }); - document.dispatchEvent(event); - }} - > - Click to me see a long name - </PharosButton> - <PharosToaster></PharosToaster> - </> - ); - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/toast/pharos-toast.wc.stories.jsx b/packages/pharos/src/components/toast/pharos-toast.wc.stories.jsx new file mode 100644 index 000000000..5556903f9 --- /dev/null +++ b/packages/pharos/src/components/toast/pharos-toast.wc.stories.jsx @@ -0,0 +1,174 @@ +import { useEffect } from '@storybook/client-api'; +import { html } from 'lit'; + +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Toast', + component: 'pharos-toast', + subcomponents: { PharosToaster: 'pharos-toaster' }, + parameters: { + docs: { page: configureDocsPage('toast') }, + options: { selectedPanel: 'addon-controls' }, + chromatic: { delay: 500 }, + }, +}; + +export const Base = { + render: (_) => { + const effect = () => { + useEffect(() => { + document.querySelector('#success-toast-button').click(); + }); + }; + effect(); + return html` + <pharos-button + id="success-toast-button" + @click="${() => { + const event = new CustomEvent('pharos-toast-open', { + detail: { + content: + 'The item has moved to your <pharos-link href="#" on-background bold>Workspace</pharos-link>.', + }, + }); + document.dispatchEvent(event); + }}" + > + Have a toast! + </pharos-button> + <pharos-toaster></pharos-toaster> + `; + }, + parameters: { chromatic: { viewports: [320, 1200] } }, +}; + +export const Error = { + render: (_) => { + const effect = () => { + useEffect(() => { + document.querySelector('#error-toast-button').click(); + }); + }; + effect(); + return html` + <pharos-button + id="error-toast-button" + @click="${() => { + const event = new CustomEvent('pharos-toast-open', { + detail: { + status: 'error', + content: + 'Sorry, we were unable to move the item. Please try again later. If the issue persists, <pharos-link href="#" on-background bold>contact JSTOR Support</pharos-link>.', + }, + }); + document.dispatchEvent(event); + }}" + > + I have a bad feeling about this + </pharos-button> + <pharos-toaster></pharos-toaster> + `; + }, +}; + +export const LongContent = { + render: (_) => { + const effect = () => { + useEffect(() => { + setTimeout(() => { + document.querySelector('#long-toast-button').click(); + }, 300); + }); + }; + effect(); + return html` + <pharos-button + id="long-toast-button" + @click="${() => { + const event = new CustomEvent('pharos-toast-open', { + detail: { + content: + 'This is a notification for longer content, which may even include a <pharos-link href="#" on-background bold>link</pharos-link>.', + }, + }); + document.dispatchEvent(event); + }}" + > + Click to me see a long name + </pharos-button> + <pharos-toaster></pharos-toaster> + `; + }, + parameters: { chromatic: { viewports: [320, 1200] } }, +}; + +export const Info = { + render: (_) => { + const effect = () => { + useEffect(() => { + document.querySelector('#info-toast-button').click(); + }); + }; + effect(); + return html` + <pharos-button + id="info-toast-button" + @click="${() => { + const event = new CustomEvent('pharos-toast-open', { + detail: { + status: 'info', + content: 'We are working on your request.', + }, + }); + document.dispatchEvent(event); + }}" + > + Click me to know more + </pharos-button> + <pharos-toaster></pharos-toaster> + `; + }, +}; + +export const UpdateableToast = { + render: (_) => { + const effect = () => { + useEffect(() => { + document.querySelector('#info-toast-button').click(); + }); + }; + effect(); + return html` + <pharos-button + id="info-toast-button" + @click="${() => { + const event = new CustomEvent('pharos-toast-open', { + detail: { + status: 'info', + content: 'Saving 15 items to your Workspace', + indefinite: true, + }, + }); + document.dispatchEvent(event); + setTimeout(() => { + const updateEvent = new CustomEvent('pharos-toast-update', { + detail: { + status: 'success', + content: '15 items succsessfully saved', + }, + }); + document.dispatchEvent(updateEvent); + }, '3000'); + setTimeout(() => { + const updateEvent = new CustomEvent('pharos-toast-close', {}); + document.dispatchEvent(updateEvent); + }, '6000'); + }}" + > + Save items to Workspace + </pharos-button> + <pharos-toaster></pharos-toaster> + `; + }, +}; diff --git a/packages/pharos/src/components/toast/pharos-toast.wc.stories.mdx b/packages/pharos/src/components/toast/pharos-toast.wc.stories.mdx deleted file mode 100644 index 8943c76f6..000000000 --- a/packages/pharos/src/components/toast/pharos-toast.wc.stories.mdx +++ /dev/null @@ -1,193 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { useEffect } from '@storybook/client-api'; -import { html } from 'lit'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta - title="Components/Toast" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - chromatic: { delay: 500 }, - }} -/> - -# Toast - -<GuidelineLink path="toast" /> - -<Canvas> - <Story name="Base" parameters={{ chromatic: { viewports: [320, 1200] } }}> - {() => { - const effect = () => { - useEffect(() => { - document.querySelector('#success-toast-button').click(); - }); - }; - effect(); - return html` - <pharos-button - id="success-toast-button" - @click="${() => { - const event = new CustomEvent('pharos-toast-open', { - detail: { - content: - 'The item has moved to your <pharos-link href="#" on-background bold>Workspace</pharos-link>.', - }, - }); - document.dispatchEvent(event); - }}" - > - Have a toast! - </pharos-button> - <pharos-toaster></pharos-toaster> - `; - }} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-toast" /> - -## Error Toast - -<Canvas> - <Story name="Error"> - {() => { - const effect = () => { - useEffect(() => { - document.querySelector('#error-toast-button').click(); - }); - }; - effect(); - return html` - <pharos-button - id="error-toast-button" - @click="${() => { - const event = new CustomEvent('pharos-toast-open', { - detail: { - status: 'error', - content: - 'Sorry, we were unable to move the item. Please try again later. If the issue persists, <pharos-link href="#" on-background bold>contact JSTOR Support</pharos-link>.', - }, - }); - document.dispatchEvent(event); - }}" - > - I have a bad feeling about this - </pharos-button> - <pharos-toaster></pharos-toaster> - `; - }} - </Story> -</Canvas> - -## Long Content Toast - -<Canvas> - <Story name="Long Content" parameters={{ chromatic: { viewports: [320, 1200] } }}> - {() => { - const effect = () => { - useEffect(() => { - setTimeout(() => { - document.querySelector('#long-toast-button').click(); - }, 300); - }); - }; - effect(); - return html` - <pharos-button - id="long-toast-button" - @click="${() => { - const event = new CustomEvent('pharos-toast-open', { - detail: { - content: - 'This is a notification for longer content, which may even include a <pharos-link href="#" on-background bold>link</pharos-link>.', - }, - }); - document.dispatchEvent(event); - }}" - > - Click to me see a long name - </pharos-button> - <pharos-toaster></pharos-toaster> - `; - }} - </Story> -</Canvas> - -## Info Toast - -<Canvas> - <Story name="Info"> - {() => { - const effect = () => { - useEffect(() => { - document.querySelector('#info-toast-button').click(); - }); - }; - effect(); - return html` - <pharos-button - id="info-toast-button" - @click="${() => { - const event = new CustomEvent('pharos-toast-open', { - detail: { - status: 'info', - content: 'We are working on your request.', - }, - }); - document.dispatchEvent(event); - }}" - > - Click me to know more - </pharos-button> - <pharos-toaster></pharos-toaster> - `; - }} - </Story> -</Canvas> - -<Canvas> - <Story name="Updateable Toast"> - {() => { - const effect = () => { - useEffect(() => { - document.querySelector('#info-toast-button').click(); - }); - }; - effect(); - return html` - <pharos-button - id="info-toast-button" - @click="${() => { - const event = new CustomEvent('pharos-toast-open', { - detail: { - status: 'info', - content: 'Saving 15 items to your Workspace', - indefinite: true, - }, - }); - document.dispatchEvent(event); - setTimeout(() => { - const updateEvent = new CustomEvent('pharos-toast-update', { - detail: { - status: 'success', - content: '15 items succsessfully saved', - }, - }); - document.dispatchEvent(updateEvent); - }, '3000'); - setTimeout(() => { - const updateEvent = new CustomEvent('pharos-toast-close', {}); - document.dispatchEvent(updateEvent); - }, '6000'); - }}" - > - Save items to Workspace - </pharos-button> - <pharos-toaster></pharos-toaster> - `; - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.jsx b/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.jsx new file mode 100644 index 000000000..bc5648b6b --- /dev/null +++ b/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.jsx @@ -0,0 +1,93 @@ +import { action } from '@storybook/addon-actions'; + +import { PharosToggleButtonGroup, PharosToggleButton } from '../../react-components'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Toggle Button Group', + component: PharosToggleButtonGroup, + subcomponents: { PharosToggleButton }, + parameters: { + docs: { page: configureDocsPage('toggle-button-group') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; + +export const Base = { + render: (_) => ( + <> + <PharosToggleButtonGroup> + <PharosToggleButton + onClick={() => { + document.querySelector('#list-view').style.display = 'block'; + document.querySelector('#gallery-view').style.display = 'none'; + document.querySelector('#presentation-view').style.display = 'none'; + }} + id="view-list-button" + icon-left="view-list" + > + List + </PharosToggleButton> + <PharosToggleButton + onClick={() => { + document.querySelector('#list-view').style.display = 'none'; + document.querySelector('#gallery-view').style.display = 'block'; + document.querySelector('#presentation-view').style.display = 'none'; + }} + id="view-gallery-button" + icon-left="view-gallery" + > + Gallery + </PharosToggleButton> + <PharosToggleButton + onClick={() => { + document.querySelector('#list-view').style.display = 'none'; + document.querySelector('#gallery-view').style.display = 'none'; + document.querySelector('#presentation-view').style.display = 'block'; + }} + id="view-presentation-button" + icon-left="image" + > + Presentation + </PharosToggleButton> + </PharosToggleButtonGroup> + <div id="list-view">List view</div> + <div id="gallery-view" style={{ display: 'none' }}> + Gallery view + </div> + <div id="presentation-view" style={{ display: 'none' }}> + Presentation view + </div> + </> + ), +}; + +export const Events = { + render: (_) => ( + <PharosToggleButtonGroup onPharos-Toggle-Button-Selected={(e) => action('Select')(e.target.id)}> + <PharosToggleButton id="list-mode-button" selected icon-left="view-list"> + List + </PharosToggleButton> + <PharosToggleButton id="gallery-mode-button" icon-left="view-gallery"> + Gallery + </PharosToggleButton> + </PharosToggleButtonGroup> + ), + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; + +export const IconsOnly = { + render: (_) => ( + <PharosToggleButtonGroup> + <PharosToggleButton icon="view-list" id="view-list-button"> + List + </PharosToggleButton> + <PharosToggleButton icon="view-gallery" id="view-gallery-button"> + Gallery + </PharosToggleButton> + <PharosToggleButton icon="image" id="view-presentation-button"> + Presentation + </PharosToggleButton> + </PharosToggleButtonGroup> + ), +}; diff --git a/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.mdx b/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.mdx deleted file mode 100644 index ecc9e732d..000000000 --- a/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.mdx +++ /dev/null @@ -1,111 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { action } from '@storybook/addon-actions'; - -import { PharosToggleButtonGroup } from '../../react-components/toggle-button-group/pharos-toggle-button-group'; -import { PharosToggleButton } from '../../react-components/toggle-button-group/pharos-toggle-button'; - -<Meta - title="Components/Toggle Button Group" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Toggle Button Group - -## Basic - -<Canvas> - <Story name="Base"> - <PharosToggleButtonGroup> - <PharosToggleButton - onClick={() => { - document.querySelector('#list-view').style.display = 'block'; - document.querySelector('#gallery-view').style.display = 'none'; - document.querySelector('#presentation-view').style.display = 'none'; - }} - id="view-list-button" - icon-left="view-list" - > - List - </PharosToggleButton> - <PharosToggleButton - onClick={() => { - document.querySelector('#list-view').style.display = 'none'; - document.querySelector('#gallery-view').style.display = 'block'; - document.querySelector('#presentation-view').style.display = 'none'; - }} - id="view-gallery-button" - icon-left="view-gallery" - > - Gallery - </PharosToggleButton> - <PharosToggleButton - onClick={() => { - document.querySelector('#list-view').style.display = 'none'; - document.querySelector('#gallery-view').style.display = 'none'; - document.querySelector('#presentation-view').style.display = 'block'; - }} - id="view-presentation-button" - icon-left="image" - > - Presentation - </PharosToggleButton> - </PharosToggleButtonGroup> - <div id="list-view">List view</div> - <div id="gallery-view" style={{ display: 'none' }}> - Gallery view - </div> - <div id="presentation-view" style={{ display: 'none' }}> - Presentation view - </div> - </Story> -</Canvas> - -## Event handling - -<Canvas withToolbar> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - <PharosToggleButtonGroup onPharos-Toggle-Button-Selected={(e) => action('Select')(e.target.id)}> - <PharosToggleButton id="list-mode-button" selected icon-left="view-list"> - List - </PharosToggleButton> - <PharosToggleButton id="gallery-mode-button" icon-left="view-gallery"> - Gallery - </PharosToggleButton> - </PharosToggleButtonGroup> - </Story> -</Canvas> - -## Icons Only - -<Canvas> - <Story name="Icons Only"> - <PharosToggleButtonGroup> - <PharosToggleButton icon="view-list" id="view-list-button"> - List - </PharosToggleButton> - <PharosToggleButton icon="view-gallery" id="view-gallery-button"> - Gallery - </PharosToggleButton> - <PharosToggleButton icon="image" id="view-presentation-button"> - Presentation - </PharosToggleButton> - </PharosToggleButtonGroup> - </Story> -</Canvas> - -## API - -### pharos-toggle-button-group - -<ArgsTable of={PharosToggleButtonGroup} /> - -### pharos-toggle-button - -<ArgsTable of={PharosToggleButton} /> diff --git a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.mdx b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.jsx similarity index 78% rename from packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.mdx rename to packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.jsx index ec6d5ae95..fcbd17fa0 100644 --- a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.mdx +++ b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.jsx @@ -1,21 +1,21 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; import { action } from '@storybook/addon-actions'; import { html } from 'lit'; -<Meta - title="Components/Toggle Button Group" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Toggle Button Group +import { configureDocsPage } from '@config/docsPageConfig'; -## Basic +export default { + title: 'Components/Toggle Button Group', + component: 'pharos-toggle-button-group', + subcomponents: { PharosToggleButton: 'pharos-toggle-button' }, + parameters: { + docs: { page: configureDocsPage('toggle-button-group') }, + options: { selectedPanel: 'addon-controls' }, + }, +}; -<Canvas withToolbar> - <Story name="Base"> - {html` +export const Base = { + render: (_) => + html` <pharos-toggle-button-group> <pharos-toggle-button @click="${() => { @@ -52,20 +52,12 @@ import { html } from 'lit'; <div id="list-view">List view</div> <div id="gallery-view" style="display: none">Gallery view</div> <div id="presentation-view" style="display: none">Presentation view</div> - `} - </Story> -</Canvas> + `, +}; -## Event handling - -<Canvas> - <Story - name="Events" - parameters={{ - options: { selectedPanel: 'addon-actions' }, - }} - > - {html` +export const Events = { + render: (_) => + html` <pharos-toggle-button-group @pharos-toggle-button-selected="${(e) => action('Selected')(e.target.id)}" > @@ -75,30 +67,17 @@ import { html } from 'lit'; Gallery </pharos-toggle-button> </pharos-toggle-button-group> - `} - </Story> -</Canvas> - -## Icons Only + `, + parameters: { options: { selectedPanel: 'addon-actions' } }, +}; -<Canvas withToolbar> - <Story name="Icons Only"> - {html` +export const IconsOnly = { + render: (_) => + html` <pharos-toggle-button-group> <pharos-toggle-button icon="view-list" id="view-list-button"></pharos-toggle-button ><pharos-toggle-button icon="view-gallery" id="view-gallery-button"></pharos-toggle-button ><pharos-toggle-button icon="image" id="view-presentation-button"></pharos-toggle-button> </pharos-toggle-button-group> - `} - </Story> -</Canvas> - -## API - -### pharos-toggle-button-groups - -<ArgsTable of="pharos-toggle-button-group" /> - -### pharos-toggle-button - -<ArgsTable of="pharos-toggle-button" /> + `, +}; diff --git a/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.jsx b/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.jsx new file mode 100644 index 000000000..92757df87 --- /dev/null +++ b/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.jsx @@ -0,0 +1,155 @@ +import { + PharosDropdownMenu, + PharosDropdownMenuItem, + PharosTooltip, + PharosButton, +} from '../../react-components'; +import { useEffect } from '@storybook/client-api'; +import { configureDocsPage } from '@config/docsPageConfig'; +import { defaultArgs, argTypes } from './storyArgs'; + +export default { + title: 'Components/Tooltip', + component: PharosTooltip, + parameters: { + docs: { page: configureDocsPage('tooltip') }, + options: { selectedPanel: 'addon-controls' }, + }, + argTypes, +}; + +export const Base = { + render: (args) => { + const effect = () => { + useEffect(() => { + setTimeout(() => { + document.querySelector('#my-button').dispatchEvent(new Event('mouseenter')); + }, 700); + }); + }; + effect(); + return ( + <div + style={{ + display: 'grid', + gridGap: '8rem', + marginTop: '5rem', + justifyContent: 'space-evenly', + }} + > + <PharosButton id="my-button" data-tooltip-id={args.id}> + {args.targetText} + </PharosButton> + <PharosTooltip + id={args.id} + fullWidth={args.fullWidth} + open={args.open} + placement={args.placement} + fallbackPlacements={args.fallbackPlacements} + > + {args.tooltipText} + </PharosTooltip> + </div> + ); + }, + args: defaultArgs, +}; + +export const Placement = { + ...Base, + args: { + ...Base.args, + targetText: 'Placement', + id: 'my-placement-tooltip', + }, +}; + +export const DismissBehavior = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridTemplateColumns: 'repeat(3, auto)', + gridGap: '8rem', + marginTop: '5rem', + justifyContent: 'space-evenly', + }} + > + <PharosButton data-tooltip-id="my-hi-tooltip">Focus here</PharosButton> + <PharosTooltip id="my-hi-tooltip">Hi there!</PharosTooltip> + <PharosButton data-tooltip-id="my-again-tooltip">Then hover here</PharosButton> + <PharosTooltip id="my-again-tooltip">Hi there again!</PharosTooltip> + <PharosButton data-tooltip-id="my-yo-tooltip">Then focus me</PharosButton> + <PharosTooltip id="my-yo-tooltip">Yo!</PharosTooltip> + </div> + ), +}; + +export const Fallbacks = { + ...Base, + args: { + ...Base.args, + id: 'my-fallback-tooltip', + targetText: 'Fallback Placement', + fallbackPlacements: ['top'], + }, +}; + +export const FullWidth = { + ...Base, + args: { + ...Base.args, + fullWidth: true, + placement: 'auto', + targetText: + 'Hover here to see a tooltip that is as wide as me. If you resize the window while its open, its width will continue to match mine!', + tooltipText: `When using the fullWidth attribute, the display of the tooltip will always be the size of the button that triggers the tooltip, regardless of the length of the text.`, + id: 'my-full-tooltip', + }, +}; + +export const MultipleTriggers = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridTemplateColumns: 'repeat(3, auto)', + gridGap: '8rem', + marginTop: '5rem', + justifyContent: 'space-evenly', + }} + > + <PharosButton data-tooltip-id="my-multi-tooltip">Focus here</PharosButton> + <PharosButton data-tooltip-id="my-multi-tooltip">Then hover here</PharosButton> + <PharosButton data-tooltip-id="my-multi-tooltip">Then focus me</PharosButton> + <PharosTooltip id="my-multi-tooltip" fullWidth> + Hi there! + </PharosTooltip> + </div> + ), +}; + +export const CustomBoundary = { + render: (_) => ( + <div + style={{ + display: 'grid', + gridGap: '8rem', + marginTop: '5rem', + justifyContent: 'space-evenly', + }} + > + <PharosButton id="my-button" data-dropdown-menu-id="my-menu" icon-right="chevron-down"> + Click Me + </PharosButton> + <PharosDropdownMenu id="my-menu"> + <PharosDropdownMenuItem>Menu item 1</PharosDropdownMenuItem> + <PharosDropdownMenuItem>Menu item 2</PharosDropdownMenuItem> + <PharosDropdownMenuItem data-tooltip-id="my-tooltip">Hover on Me</PharosDropdownMenuItem> + <PharosTooltip id="my-tooltip" boundary="my-menu"> + this is a very long tooltip but I stay in the dropdown menu's boundary!!! + </PharosTooltip> + </PharosDropdownMenu> + </div> + ), +}; diff --git a/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.mdx b/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.mdx deleted file mode 100644 index 3d86aa02c..000000000 --- a/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.mdx +++ /dev/null @@ -1,257 +0,0 @@ -import { Meta, Canvas, ArgsTable, Story } from '@storybook/addon-docs'; -import { GuidelineLink } from '@config/GuidelineLink'; - -import { PharosDropdownMenu } from '../../react-components/dropdown-menu/pharos-dropdown-menu'; -import { PharosDropdownMenuItem } from '../../react-components/dropdown-menu/pharos-dropdown-menu-item'; -import { PharosTooltip } from '../../react-components/tooltip/pharos-tooltip'; -import { PharosButton } from '../../react-components/button/pharos-button'; -import { useEffect } from '@storybook/client-api'; - -<Meta - title="Components/Tooltip" - parameters={{ - component: PharosTooltip, - options: { selectedPanel: 'addon-controls' }, - knobs: { escapeHTML: false }, - }} -/> - -# Tooltip - -<GuidelineLink path="tooltip" /> - -export const Template = (args) => { - const effect = () => { - useEffect(() => { - setTimeout(() => { - document.querySelector('#my-button').dispatchEvent(new Event('mouseenter')); - }, 700); - }); - }; - effect(); - return ( - <div - style={{ - display: 'grid', - gridGap: '8rem', - marginTop: '5rem', - justifyContent: 'space-evenly', - }} - > - <PharosButton id="my-button" data-tooltip-id={args.id}> - {args.targetText} - </PharosButton> - <PharosTooltip - id={args.id} - fullWidth={args.fullWidth} - open={args.open} - placement={args.placement} - fallbackPlacements={args.fallbackPlacements} - > - {args.tooltipText} - </PharosTooltip> - </div> - ); -}; - -<Canvas withToolbar> - <Story - name="Base" - args={{ - fullWidth: false, - open: false, - targetText: 'Focus here', - tooltipText: 'Hi there again!', - id: 'my-tooltip', - }} - argTypes={{ - placement: { table: { disable: true }, defaultValue: 'top' }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of={PharosTooltip} /> - -# Placement - -<Canvas withToolbar> - <Story - name="Placement" - args={{ - targetText: 'Placement', - tooltipText: 'Hi there again!', - id: 'my-placement-tooltip', - }} - argTypes={{ - open: { table: { disable: true }, defaultValue: false }, - placement: { - options: [ - 'top', - 'top-start', - 'top-end', - 'bottom', - 'bottom-start', - 'bottom-end', - 'right', - 'right-start', - 'right-end', - 'left', - 'left-start', - 'left-end', - 'auto', - ], - control: { - type: 'inline-radio', - }, - defaultValue: 'top', - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Dismiss Behavior - -<Canvas withToolbar> - <Story name="Dismiss Behavior"> - <div - style={{ - display: 'grid', - gridTemplateColumns: 'repeat(3, auto)', - gridGap: '8rem', - marginTop: '5rem', - justifyContent: 'space-evenly', - }} - > - <PharosButton data-tooltip-id="my-hi-tooltip">Focus here</PharosButton> - <PharosTooltip id="my-hi-tooltip">Hi there!</PharosTooltip> - <PharosButton data-tooltip-id="my-again-tooltip">Then hover here</PharosButton> - <PharosTooltip id="my-again-tooltip">Hi there again!</PharosTooltip> - <PharosButton data-tooltip-id="my-yo-tooltip">Then focus me</PharosButton> - <PharosTooltip id="my-yo-tooltip">Yo!</PharosTooltip> - </div> - </Story> -</Canvas> - -# Fallbacks - -<Canvas withToolbar> - <Story - name="Fallbacks" - argTypes={{ - id: { table: { disable: true }, defaultValue: 'my-fallback-tooltip' }, - targetText: { - table: { disable: true }, - defaultValue: 'Fallback Placement', - }, - tooltipText: { - table: { disable: true }, - defaultValue: 'Hi there again!', - }, - open: { table: { disable: true }, defaultValue: false }, - placement: { - options: [ - 'top', - 'top-start', - 'top-end', - 'bottom', - 'bottom-start', - 'bottom-end', - 'right', - 'right-start', - 'right-end', - 'left', - 'left-start', - 'left-end', - 'auto', - ], - control: { - type: 'inline-radio', - }, - defaultValue: 'top', - }, - fallbackPlacements: { - control: { type: 'array' }, - defaultValue: ['top'], - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Full Width - -<Canvas withToolbar> - <Story - name="Full Width" - args={{ - targetText: - 'Hover here to see a tooltip that is as wide as me. If you resize the window while its open, its width will continue to match mine!', - tooltipText: `When using the fullWidth attribute, the display of the tooltip will always be the size of the button that triggers the tooltip, regardless of the length of the text.`, - id: 'my-full-tooltip', - }} - argTypes={{ - fullWidth: { table: { disable: true }, defaultValue: true }, - open: { table: { disable: true }, defaultValue: false }, - placement: { table: { disable: true }, defaultValue: 'auto' }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Multiple Triggers - -<Canvas withToolbar> - <Story name="Multiple Triggers"> - <div - style={{ - display: 'grid', - gridTemplateColumns: 'repeat(3, auto)', - gridGap: '8rem', - marginTop: '5rem', - justifyContent: 'space-evenly', - }} - > - <PharosButton data-tooltip-id="my-multi-tooltip">Focus here</PharosButton> - <PharosButton data-tooltip-id="my-multi-tooltip">Then hover here</PharosButton> - <PharosButton data-tooltip-id="my-multi-tooltip">Then focus me</PharosButton> - <PharosTooltip id="my-multi-tooltip" fullWidth> - Hi there! - </PharosTooltip> - </div> - </Story> -</Canvas> - -# Custom Boundary - -<Canvas withToolbar> - <Story name="Custom Boundary"> - <div - style={{ - display: 'grid', - gridGap: '8rem', - marginTop: '5rem', - justifyContent: 'space-evenly', - }} - > - <PharosButton id="my-button" data-dropdown-menu-id="my-menu" icon-right="chevron-down"> - Click Me - </PharosButton> - <PharosDropdownMenu id="my-menu"> - <PharosDropdownMenuItem>Menu item 1</PharosDropdownMenuItem> - <PharosDropdownMenuItem>Menu item 2</PharosDropdownMenuItem> - <PharosDropdownMenuItem data-tooltip-id="my-tooltip">Hover on Me</PharosDropdownMenuItem> - <PharosTooltip id="my-tooltip" boundary="my-menu"> - this is a very long tooltip but I stay in the dropdown menu's boundary!!! - </PharosTooltip> - </PharosDropdownMenu> - </div> - </Story> -</Canvas> diff --git a/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.jsx b/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.jsx new file mode 100644 index 000000000..d7f50e686 --- /dev/null +++ b/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.jsx @@ -0,0 +1,130 @@ +import { html } from 'lit'; +import { ifDefined } from 'lit/directives/if-defined.js'; +import { useEffect } from '@storybook/client-api'; + +import { defaultArgs, argTypes } from './storyArgs'; +import { configureDocsPage } from '@config/docsPageConfig'; + +export default { + title: 'Components/Tooltip', + component: 'pharos-tooltip', + parameters: { + docs: { page: configureDocsPage('tooltip') }, + options: { selectedPanel: 'addon-controls' }, + chromatic: { delay: 800 }, + }, + argTypes, +}; + +export const Base = { + render: (args) => { + const effect = () => { + useEffect(() => { + setTimeout(() => { + document.querySelector('#my-button').dispatchEvent(new Event('mouseenter')); + }, 700); + }); + }; + effect(); + return html` + <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> + <pharos-button id="my-button" data-tooltip-id="${args.id}" + >${args.targetText}</pharos-button + > + <pharos-tooltip + id="${args.id}" + ?full-width="${args.fullWidth}" + ?open="${args.open}" + .placement="${ifDefined(args.placement)}" + .fallbackPlacements="${args.fallbackPlacements}" + >${args.tooltipText} + </pharos-tooltip> + </div> + `; + }, + args: defaultArgs, +}; + +export const Placement = { + ...Base, + args: { + ...Base.args, + targetText: 'Placement', + id: 'my-placement-tooltip', + }, +}; + +export const DismissBehavior = { + render: (_) => + html` + <div + style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" + > + <pharos-button data-tooltip-id="my-hi-tooltip">Focus here</pharos-button> + <pharos-tooltip id="my-hi-tooltip">Hi there!</pharos-tooltip> + <pharos-button data-tooltip-id="my-again-tooltip">Then hover here</pharos-button> + <pharos-tooltip id="my-again-tooltip">Hi there again!</pharos-tooltip> + <pharos-button data-tooltip-id="my-yo-tooltip">Then focus me</pharos-button> + <pharos-tooltip id="my-yo-tooltip">Yo!</pharos-tooltip> + </div> + `, +}; + +export const Fallbacks = { + ...Base, + args: { + ...Base.args, + id: 'my-fallback-tooltip', + targetText: 'Fallback Placement', + fallbackPlacements: ['top'], + }, +}; + +export const FullWidth = { + ...Base, + args: { + ...Base.args, + fullWidth: true, + placement: 'auto', + targetText: + 'Hover here to see a tooltip that is as wide as me. If you resize the window while its open, its width will continue to match mine!', + tooltipText: `When using the fullWidth attribute, the display of the tooltip will always be the size of the button that triggers the tooltip, regardless of the length of the text.`, + id: 'my-full-tooltip', + }, +}; + +export const MultipleTriggers = { + render: (_) => + html` + <div + style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" + > + <pharos-button data-tooltip-id="my-multi-tooltip">Focus here</pharos-button> + <pharos-button data-tooltip-id="my-multi-tooltip">Then hover here</pharos-button> + <pharos-button data-tooltip-id="my-multi-tooltip">Then focus me</pharos-button> + <pharos-tooltip id="my-multi-tooltip" full-width>Hi there!</pharos-tooltip> + </div> + `, +}; + +export const CustomBoundary = { + render: (_) => + html` + <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> + <pharos-button id="my-button" data-dropdown-menu-id="my-menu" icon-right="chevron-down" + >Click Me</pharos-button + > + <pharos-dropdown-menu id="my-menu"> + <pharos-dropdown-menu-item>Menu item 1</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item>Menu item 2</pharos-dropdown-menu-item> + <pharos-dropdown-menu-item data-tooltip-id="my-tooltip" + >Hover on Me</pharos-dropdown-menu-item + > + <pharos-tooltip id="my-tooltip" boundary="my-menu" + >Even very long tooltips, such as this one, will stay within the boundaries of the + Tooltip.</pharos-tooltip + > + </pharos-dropdown-menu> + </div> + `, +}; diff --git a/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.mdx b/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.mdx deleted file mode 100644 index 5efbff99f..000000000 --- a/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.mdx +++ /dev/null @@ -1,230 +0,0 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; -import { html } from 'lit'; -import { ifDefined } from 'lit/directives/if-defined.js'; -import { useEffect } from '@storybook/client-api'; -import { GuidelineLink } from '@config/GuidelineLink'; - -<Meta - title="Components/Tooltip" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - chromatic: { delay: 800 }, - }} -/> - -# Tooltip - -<GuidelineLink path="tooltip" /> - -export const Template = (args) => { - const effect = () => { - useEffect(() => { - setTimeout(() => { - document.querySelector('#my-button').dispatchEvent(new Event('mouseenter')); - }, 700); - }); - }; - effect(); - return html` - <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> - <pharos-button id="my-button" data-tooltip-id="${args.id}">${args.targetText}</pharos-button> - <pharos-tooltip - id="${args.id}" - ?full-width="${args.fullWidth}" - ?open="${args.open}" - .placement="${ifDefined(args.placement)}" - .fallbackPlacements="${args.fallbackPlacements}" - >${args.tooltipText}</pharos-tooltip - > - </div> - `; -}; - -<Canvas withToolbar> - <Story - name="Base" - args={{ - fullWidth: false, - open: false, - targetText: 'Focus here', - tooltipText: 'Hi there again!', - id: 'my-tooltip', - }} - > - {Template.bind({})} - </Story> -</Canvas> - -## API - -<ArgsTable of="pharos-tooltip" /> - -# Placement - -<Canvas withToolbar> - <Story - name="Placement" - args={{ - targetText: 'Placement', - tooltipText: 'Hi there again!', - id: 'my-placement-tooltip', - }} - argTypes={{ - open: { table: { disable: true }, defaultValue: false }, - placement: { - options: [ - 'top', - 'top-start', - 'top-end', - 'bottom', - 'bottom-start', - 'bottom-end', - 'right', - 'right-start', - 'right-end', - 'left', - 'left-start', - 'left-end', - 'auto', - ], - control: { - type: 'inline-radio', - }, - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Dismiss Behavior - -<Canvas withToolbar> - <Story name="Dismiss Behavior"> - {html` - <div - style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" - > - <pharos-button data-tooltip-id="my-hi-tooltip">Focus here</pharos-button> - <pharos-tooltip id="my-hi-tooltip">Hi there!</pharos-tooltip> - <pharos-button data-tooltip-id="my-again-tooltip">Then hover here</pharos-button> - <pharos-tooltip id="my-again-tooltip">Hi there again!</pharos-tooltip> - <pharos-button data-tooltip-id="my-yo-tooltip">Then focus me</pharos-button> - <pharos-tooltip id="my-yo-tooltip">Yo!</pharos-tooltip> - </div> - `} - </Story> -</Canvas> - -# Fallbacks - -<Canvas withToolbar> - <Story - name="Fallbacks" - argTypes={{ - id: { table: { disable: true }, defaultValue: 'my-fallback-tooltip' }, - targetText: { - table: { disable: true }, - defaultValue: 'Fallback Placement', - }, - tooltipText: { - table: { disable: true }, - defaultValue: 'Hi there again!', - }, - open: { table: { disable: true }, defaultValue: false }, - placement: { - options: [ - 'top', - 'top-start', - 'top-end', - 'bottom', - 'bottom-start', - 'bottom-end', - 'right', - 'right-start', - 'right-end', - 'left', - 'left-start', - 'left-end', - 'auto', - ], - control: { - type: 'inline-radio', - }, - }, - fallbackPlacements: { - control: { type: 'array' }, - defaultValue: ['top'], - }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Full Width - -<Canvas withToolbar> - <Story - name="Full Width" - args={{ - targetText: - 'Hover here to see a tooltip that is as wide as me. If you resize the window while its open, its width will continue to match mine!', - tooltipText: `When using the fullWidth attribute, the display of the tooltip will always be the size of the button that triggers the tooltip, regardless of the length of the text.`, - id: 'my-full-tooltip', - }} - argTypes={{ - fullWidth: { table: { disable: true }, defaultValue: true }, - open: { table: { disable: true }, defaultValue: false }, - placement: { table: { disable: true }, defaultValue: 'auto' }, - }} - > - {Template.bind({})} - </Story> -</Canvas> - -# Multiple Triggers - -<Canvas withToolbar> - <Story name="Multiple Triggers"> - {html` - <div - style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" - > - <pharos-button data-tooltip-id="my-multi-tooltip">Focus here</pharos-button> - <pharos-button data-tooltip-id="my-multi-tooltip">Then hover here</pharos-button> - <pharos-button data-tooltip-id="my-multi-tooltip">Then focus me</pharos-button> - <pharos-tooltip id="my-multi-tooltip" full-width>Hi there!</pharos-tooltip> - </div> - `} - </Story> -</Canvas> - -# Custom Boundary - -<Canvas withToolbar> - <Story name="Custom Boundary"> - {() => { - return html` - <div - style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" - > - <pharos-button id="my-button" data-dropdown-menu-id="my-menu" icon-right="chevron-down" - >Click Me</pharos-button - > - <pharos-dropdown-menu id="my-menu"> - <pharos-dropdown-menu-item>Menu item 1</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item>Menu item 2</pharos-dropdown-menu-item> - <pharos-dropdown-menu-item data-tooltip-id="my-tooltip" - >Hover on Me</pharos-dropdown-menu-item - > - <pharos-tooltip id="my-tooltip" boundary="my-menu" - >Even very long tooltips, such as this one, will stay within the boundaries of the - Tooltip.</pharos-tooltip - > - </pharos-dropdown-menu> - </div> - `; - }} - </Story> -</Canvas> diff --git a/packages/pharos/src/components/tooltip/storyArgs.ts b/packages/pharos/src/components/tooltip/storyArgs.ts new file mode 100644 index 000000000..368fe9314 --- /dev/null +++ b/packages/pharos/src/components/tooltip/storyArgs.ts @@ -0,0 +1,23 @@ +import { allPlacements } from '../base/overlay-element'; + +export const defaultArgs = { + fullWidth: false, + open: false, + targetText: 'Focus here', + tooltipText: 'Hi there again!', + id: 'my-tooltip', + placement: 'top', + fallbackPlacements: [], +}; + +export const argTypes = { + placement: { + options: allPlacements, + control: { + type: 'inline-radio', + }, + }, + fallbackPlacements: { + control: { type: 'array' }, + }, +}; diff --git a/packages/pharos/src/pages/home/react/home.pages.stories.tsx b/packages/pharos/src/pages/home/react/home.pages.stories.tsx index 762a829d3..84eae0200 100644 --- a/packages/pharos/src/pages/home/react/home.pages.stories.tsx +++ b/packages/pharos/src/pages/home/react/home.pages.stories.tsx @@ -1,5 +1,4 @@ import type { Meta } from '@storybook/react'; -import type { FC } from 'react'; import { viewports } from '../../shared/viewports'; import '../home.scss'; @@ -10,9 +9,7 @@ import { HeroSearch } from './HeroSearch'; import { publicCollectionCards, communityCollectionCards } from '../mocks'; import { PharosSpacing7X } from '../../../styles/variables'; -import { PharosHeading } from '../../../react-components/heading/pharos-heading'; -import { PharosLink } from '../../../react-components/link/pharos-link'; -import { PharosLayout } from '../../../react-components/layout/pharos-layout'; +import { PharosHeading, PharosLink, PharosLayout } from '../../../react-components'; export default { title: 'Pages/Home', @@ -24,56 +21,59 @@ export default { }, } as Meta; -export const Home: FC = () => ( - <div className="home-page__container"> - <HeaderRevised /> - <main> - <PharosLayout className="home-page__container--main-content" rowGap={PharosSpacing7X}> - <div className="home-page__container--top" slot="top"> - <PharosHeading level={1} preset="7" noMargin className="home-page__heading"> - Knowledge for everyone - </PharosHeading> - <HeroSearch /> - </div> - <div - className="home-page__hero" - slot="top" - style={{ backgroundImage: `url('./images/home/hero.jpg')` }} - ></div> - <PharosLink href="#" className="home-page__hero-link"> - Tō kaidō gojo santsugi. Okazaki. Plate No 39. From the series: Fifty-three stations of the - Tō kaidō Road, Kihei Sanoya, circa 1838. - </PharosLink> - {publicCollectionCards.map((card, index) => ( - <div className="home-page__collection-card--open" key={index}> - {CollectionCard(card)} +export const Home = { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + render: (_: object) => ( + <div className="home-page__container"> + <HeaderRevised /> + <main> + <PharosLayout className="home-page__container--main-content" rowGap={PharosSpacing7X}> + <div className="home-page__container--top" slot="top"> + <PharosHeading level={1} preset="7" noMargin className="home-page__heading"> + Knowledge for everyone + </PharosHeading> + <HeroSearch /> </div> - ))} - <div className="home-page__container--access"> - <PharosHeading level={3} preset="5"> - JSTOR provides free access to hundreds of thousands of articles, images and books. Log - in through your institution or learn about your other options, including free onsite - reading. - </PharosHeading> - <ul className="home-page__list--access"> - <li> - <PharosLink href="#">Find my institution</PharosLink> - </li> - <li> - <PharosLink href="#">Learn about JPASS</PharosLink> - </li> - <li> - <PharosLink href="#">Learn more about access</PharosLink> - </li> - </ul> - </div> - {communityCollectionCards.map((card, index) => ( - <div className="home-page__collection-card--community" key={index}> - {CollectionCard(card)} + <div + className="home-page__hero" + slot="top" + style={{ backgroundImage: `url('./images/home/hero.jpg')` }} + ></div> + <PharosLink href="#" className="home-page__hero-link"> + Tō kaidō gojo santsugi. Okazaki. Plate No 39. From the series: Fifty-three stations of + the Tō kaidō Road, Kihei Sanoya, circa 1838. + </PharosLink> + {publicCollectionCards.map((card, index) => ( + <div className="home-page__collection-card--open" key={index}> + {CollectionCard(card)} + </div> + ))} + <div className="home-page__container--access"> + <PharosHeading level={3} preset="5"> + JSTOR provides free access to hundreds of thousands of articles, images and books. Log + in through your institution or learn about your other options, including free onsite + reading. + </PharosHeading> + <ul className="home-page__list--access"> + <li> + <PharosLink href="#">Find my institution</PharosLink> + </li> + <li> + <PharosLink href="#">Learn about JPASS</PharosLink> + </li> + <li> + <PharosLink href="#">Learn more about access</PharosLink> + </li> + </ul> </div> - ))} - </PharosLayout> - </main> - <Footer /> - </div> -); + {communityCollectionCards.map((card, index) => ( + <div className="home-page__collection-card--community" key={index}> + {CollectionCard(card)} + </div> + ))} + </PharosLayout> + </main> + <Footer /> + </div> + ), +}; diff --git a/packages/pharos/src/pages/home/wc/home.pages.stories.ts b/packages/pharos/src/pages/home/wc/home.pages.stories.ts index d29111a3f..fa7bc60e4 100644 --- a/packages/pharos/src/pages/home/wc/home.pages.stories.ts +++ b/packages/pharos/src/pages/home/wc/home.pages.stories.ts @@ -21,48 +21,59 @@ export default { }, }; -export const Home = (): TemplateResult => html` - <div class="home-page__container"> - ${HeaderRevised()} - <main> - <pharos-layout class="home-page__container--main-content" row-gap="${PharosSpacing7X}"> - <div class="home-page__container--top" slot="top"> - <pharos-heading level="1" preset="7" no-margin class="home-page__heading" - >Knowledge for everyone</pharos-heading - > - ${HeroSearch()} - </div> - <div - class="home-page__hero" - slot="top" - style="background-image: url('./images/home/hero.jpg')" - ></div> - <pharos-link href="#" class="home-page__hero-link" - >Tō kaidō gojo santsugi. Okazaki. Plate No 39. From the series: Fifty-three stations of - the Tō kaidō Road, Kihei Sanoya, circa 1838.</pharos-link - > - ${publicCollectionCards.map( - (card) => - html`<div class="home-page__collection-card--open">${CollectionCard(card)}</div>` - )} - <div class="home-page__container--access"> - <pharos-heading level="3" preset="5" - >JSTOR provides free access to hundreds of thousands of articles, images and books. Log - in through your institution or learn about your other options, including free onsite - reading.</pharos-heading - > - <ul class="home-page__list--access"> - <li><pharos-link href="#">Find my institution</pharos-link></li> - <li><pharos-link href="#">Learn about JPASS</pharos-link></li> - <li><pharos-link href="#">Learn more about access</pharos-link></li> - </ul> - </div> - ${communityCollectionCards.map( - (card) => - html`<div class="home-page__collection-card--community">${CollectionCard(card)}</div>` - )} - </pharos-layout> - </main> - ${Footer()} - </div> -`; +export const Home = { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + render: (_: object): TemplateResult => html` + <div class="home-page__container"> + ${HeaderRevised()} + <main> + <pharos-layout class="home-page__container--main-content" row-gap="${PharosSpacing7X}"> + <div class="home-page__container--top" slot="top"> + <pharos-heading level="1" preset="7" no-margin class="home-page__heading" + >Knowledge for everyone + </pharos-heading> + ${HeroSearch()} + </div> + <div + class="home-page__hero" + slot="top" + style="background-image: url('./images/home/hero.jpg')" + ></div> + <pharos-link href="#" class="home-page__hero-link" + >Tō kaidō gojo santsugi. Okazaki. Plate No 39. From the series: Fifty-three stations of + the Tō kaidō Road, Kihei Sanoya, circa 1838. + </pharos-link> + ${publicCollectionCards.map( + (card) => + html` <div class="home-page__collection-card--open">${CollectionCard(card)}</div>` + )} + <div class="home-page__container--access"> + <pharos-heading level="3" preset="5" + >JSTOR provides free access to hundreds of thousands of articles, images and books. + Log in through your institution or learn about your other options, including free + onsite reading. + </pharos-heading> + <ul class="home-page__list--access"> + <li> + <pharos-link href="#">Find my institution</pharos-link> + </li> + <li> + <pharos-link href="#">Learn about JPASS</pharos-link> + </li> + <li> + <pharos-link href="#">Learn more about access</pharos-link> + </li> + </ul> + </div> + ${communityCollectionCards.map( + (card) => + html` <div class="home-page__collection-card--community"> + ${CollectionCard(card)} + </div>` + )} + </pharos-layout> + </main> + ${Footer()} + </div> + `, +}; diff --git a/packages/pharos/src/pages/item-detail/react/item-detail.pages.stories.tsx b/packages/pharos/src/pages/item-detail/react/item-detail.pages.stories.tsx index 9b314db19..26557e51e 100644 --- a/packages/pharos/src/pages/item-detail/react/item-detail.pages.stories.tsx +++ b/packages/pharos/src/pages/item-detail/react/item-detail.pages.stories.tsx @@ -1,5 +1,4 @@ import type { Meta } from '@storybook/react'; -import type { FC } from 'react'; import '../item-detail.scss'; import { viewports } from '../../shared/viewports'; @@ -9,10 +8,7 @@ import { ItemCarousel } from './item-carousel/ItemCarousel'; import { CollectionCarousel } from './collection-carousel/CollectionCarousel'; import { Metadata } from './Metadata'; -import { PharosButton } from '../../../react-components/button/pharos-button'; -import { PharosLink } from '../../../react-components/link/pharos-link'; -import { PharosIcon } from '../../../react-components/icon/pharos-icon'; -import { PharosLayout } from '../../../react-components/layout/pharos-layout'; +import { PharosButton, PharosLink, PharosIcon, PharosLayout } from '../../../react-components'; export default { title: 'Pages/Item Detail', @@ -24,59 +20,62 @@ export default { }, } as Meta; -export const ItemDetail: FC = () => ( - <div className="item-detail-page__container"> - <HeaderRevised showSearch={true} /> - <main> - <PharosLayout - preset="2-col" - rows="max-content 1fr" - className="item-detail-page__container--main-content" - > - <div className="item-detail-page__container--top" slot="top"> - <PharosLink href="#" className="item-detail-page__button--back" subtle flex> - <PharosIcon - name="arrow-left" - style={{ marginRight: 'var(--pharos-spacing-one-quarter-x)' }} - ></PharosIcon> - Back to results - </PharosLink> - <PharosButton - variant="subtle" - icon="arrow-left" - href="#" - label="Back to results" - className="item-detail-page__button--mobile-back" - ></PharosButton> - <div className="item-detail-page__container--action-buttons"> - <PharosButton variant="secondary" iconLeft="cite"> - Cite - </PharosButton> - <PharosButton variant="secondary" iconLeft="share"> - Share - </PharosButton> - <PharosButton variant="secondary" iconLeft="save"> - Save - </PharosButton> - <PharosButton variant="secondary" iconLeft="download"> - Download - </PharosButton> +export const ItemDetail = { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + render: (_: object) => ( + <div className="item-detail-page__container"> + <HeaderRevised showSearch={true} /> + <main> + <PharosLayout + preset="2-col" + rows="max-content 1fr" + className="item-detail-page__container--main-content" + > + <div className="item-detail-page__container--top" slot="top"> + <PharosLink href="#" className="item-detail-page__button--back" subtle flex> + <PharosIcon + name="arrow-left" + style={{ marginRight: 'var(--pharos-spacing-one-quarter-x)' }} + ></PharosIcon> + Back to results + </PharosLink> + <PharosButton + variant="subtle" + icon="arrow-left" + href="#" + label="Back to results" + className="item-detail-page__button--mobile-back" + ></PharosButton> + <div className="item-detail-page__container--action-buttons"> + <PharosButton variant="secondary" iconLeft="cite"> + Cite + </PharosButton> + <PharosButton variant="secondary" iconLeft="share"> + Share + </PharosButton> + <PharosButton variant="secondary" iconLeft="save"> + Save + </PharosButton> + <PharosButton variant="secondary" iconLeft="download"> + Download + </PharosButton> + </div> + <div className="item-detail-page__container--mobile-buttons"> + <PharosButton variant="subtle" icon="cite" label="Cite"></PharosButton> + <PharosButton variant="subtle" icon="share" label="Share"></PharosButton> + <PharosButton variant="subtle" icon="save" label="Save"></PharosButton> + <PharosButton variant="subtle" icon="download" label="Download"></PharosButton> + </div> </div> - <div className="item-detail-page__container--mobile-buttons"> - <PharosButton variant="subtle" icon="cite" label="Cite"></PharosButton> - <PharosButton variant="subtle" icon="share" label="Share"></PharosButton> - <PharosButton variant="subtle" icon="save" label="Save"></PharosButton> - <PharosButton variant="subtle" icon="download" label="Download"></PharosButton> + <div className="item-detail-page__container--viewer"></div> + <div className="item-detail-page__container--collections"> + <ItemCarousel /> + <CollectionCarousel /> </div> - </div> - <div className="item-detail-page__container--viewer"></div> - <div className="item-detail-page__container--collections"> - <ItemCarousel /> - <CollectionCarousel /> - </div> - <Metadata /> - </PharosLayout> - </main> - <Footer /> - </div> -); + <Metadata /> + </PharosLayout> + </main> + <Footer /> + </div> + ), +}; diff --git a/packages/pharos/src/pages/item-detail/wc/item-detail.pages.stories.ts b/packages/pharos/src/pages/item-detail/wc/item-detail.pages.stories.ts index 8c0e900dd..07e69d01e 100644 --- a/packages/pharos/src/pages/item-detail/wc/item-detail.pages.stories.ts +++ b/packages/pharos/src/pages/item-detail/wc/item-detail.pages.stories.ts @@ -20,50 +20,53 @@ export default { }, }; -export const ItemDetail = (): TemplateResult => html` - <div class="item-detail-page__container"> - ${HeaderRevised(true)} - <main> - <pharos-layout - preset="2-col" - rows="max-content 1fr" - class="item-detail-page__container--main-content" - > - <div class="item-detail-page__container--top" slot="top"> - <pharos-link href="#" class="item-detail-page__button--back" subtle flex> - <pharos-icon - name="arrow-left" - style="margin-right: var(--pharos-spacing-one-quarter-x)" - ></pharos-icon> - Back to results - </pharos-link> - <pharos-button - variant="subtle" - icon="arrow-left" - href="#" - label="Back to results" - class="item-detail-page__button--mobile-back" - ></pharos-button> - <div class="item-detail-page__container--action-buttons"> - <pharos-button variant="secondary" icon-left="cite">Cite</pharos-button> - <pharos-button variant="secondary" icon-left="share">Share</pharos-button> - <pharos-button variant="secondary" icon-left="save">Save</pharos-button> - <pharos-button variant="secondary" icon-left="download">Download</pharos-button> +export const ItemDetail = { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + render: (_: object): TemplateResult => html` + <div class="item-detail-page__container"> + ${HeaderRevised(true)} + <main> + <pharos-layout + preset="2-col" + rows="max-content 1fr" + class="item-detail-page__container--main-content" + > + <div class="item-detail-page__container--top" slot="top"> + <pharos-link href="#" class="item-detail-page__button--back" subtle flex> + <pharos-icon + name="arrow-left" + style="margin-right: var(--pharos-spacing-one-quarter-x)" + ></pharos-icon> + Back to results + </pharos-link> + <pharos-button + variant="subtle" + icon="arrow-left" + href="#" + label="Back to results" + class="item-detail-page__button--mobile-back" + ></pharos-button> + <div class="item-detail-page__container--action-buttons"> + <pharos-button variant="secondary" icon-left="cite">Cite</pharos-button> + <pharos-button variant="secondary" icon-left="share">Share</pharos-button> + <pharos-button variant="secondary" icon-left="save">Save</pharos-button> + <pharos-button variant="secondary" icon-left="download">Download</pharos-button> + </div> + <div class="item-detail-page__container--mobile-buttons"> + <pharos-button variant="subtle" icon="cite" label="Cite"></pharos-button> + <pharos-button variant="subtle" icon="share" label="Share"></pharos-button> + <pharos-button variant="subtle" icon="save" label="Save"></pharos-button> + <pharos-button variant="subtle" icon="download" label="Download"></pharos-button> + </div> </div> - <div class="item-detail-page__container--mobile-buttons"> - <pharos-button variant="subtle" icon="cite" label="Cite"></pharos-button> - <pharos-button variant="subtle" icon="share" label="Share"></pharos-button> - <pharos-button variant="subtle" icon="save" label="Save"></pharos-button> - <pharos-button variant="subtle" icon="download" label="Download"></pharos-button> + <div class="item-detail-page__container--viewer"></div> + <div class="item-detail-page__container--collections"> + ${ItemCarousel()} ${CollectionCarousel()} </div> - </div> - <div class="item-detail-page__container--viewer"></div> - <div class="item-detail-page__container--collections"> - ${ItemCarousel()} ${CollectionCarousel()} - </div> - ${Metadata()} - </pharos-layout> - </main> - ${Footer()} - </div> -`; + ${Metadata()} + </pharos-layout> + </main> + ${Footer()} + </div> + `, +}; diff --git a/packages/pharos/src/pages/reports/react/reports.pages.stories.tsx b/packages/pharos/src/pages/reports/react/reports.pages.stories.tsx index eb28612e6..462382f78 100644 --- a/packages/pharos/src/pages/reports/react/reports.pages.stories.tsx +++ b/packages/pharos/src/pages/reports/react/reports.pages.stories.tsx @@ -1,6 +1,4 @@ -import { Fragment } from 'react'; import type { Meta } from '@storybook/react'; -import type { FC } from 'react'; import '../reports.scss'; import { viewports } from '../../shared/viewports'; @@ -9,15 +7,17 @@ import { CreateReportModal } from './CreateReportModal'; import { ReportsTable } from './ReportsTable'; import { historyTable, scheduledTable } from '../mocks'; -import { PharosHeading } from '../../../react-components/heading/pharos-heading'; -import { PharosLink } from '../../../react-components/link/pharos-link'; -import { PharosButton } from '../../../react-components/button/pharos-button'; -import { PharosTabs } from '../../../react-components/tabs/pharos-tabs'; -import { PharosTab } from '../../../react-components/tabs/pharos-tab'; -import { PharosTabPanel } from '../../../react-components/tabs/pharos-tab-panel'; -import { PharosToaster } from '../../../react-components/toast/pharos-toaster'; -import { PharosSidenavButton } from '../../../react-components/sidenav/pharos-sidenav-button'; -import { PharosLayout } from '../../../react-components/layout/pharos-layout'; +import { + PharosHeading, + PharosLink, + PharosButton, + PharosTabs, + PharosTab, + PharosTabPanel, + PharosToaster, + PharosSidenavButton, + PharosLayout, +} from '../../../react-components'; export default { title: 'Pages/Reports', @@ -29,68 +29,76 @@ export default { }, } as Meta; -export const Reports: FC = () => ( - <Fragment> - <div className="reports-page__container"> - <Sidenav /> - <main id="main-content"> - <PharosLayout preset="1-col--sidenav" className="reports-page__container--main-content"> - <div className="reports-page__container--top" slot="top"> - <div className="reports-page__container--nav-header"> - <PharosSidenavButton /> - <img src="./images/reports/jstor-horizontal.svg" alt="logo" width="96" height="24" /> - <span className="reports-page__separator">/</span> - <PharosHeading level={1} preset="4" noMargin> - Admin +export const Reports = { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + render: (_: object) => ( + <> + <div className="reports-page__container"> + <Sidenav /> + <main id="main-content"> + <PharosLayout preset="1-col--sidenav" className="reports-page__container--main-content"> + <div className="reports-page__container--top" slot="top"> + <div className="reports-page__container--nav-header"> + <PharosSidenavButton /> + <img + src="./images/reports/jstor-horizontal.svg" + alt="logo" + width="96" + height="24" + /> + <span className="reports-page__separator">/</span> + <PharosHeading level={1} preset="4" noMargin> + Admin + </PharosHeading> + </div> + <PharosButton + variant="subtle" + iconRight="chevron-down" + className="reports-page__button--user" + > + Gerry Larry Burla + </PharosButton> + </div> + <div className="reports-page__container--disclaimer"> + <PharosHeading level={2} preset="5--bold"> + COUNTER 5 Usage Reports </PharosHeading> + <p> + Welcome to the COUNTER 5 reporting service for participating institutions. JSTOR + offers COUNTER 5 compliant reports for usage beginning January 2019. COUNTER 4 + reports are still available for usage from January 2017 - April 2019 from the{' '} + <PharosLink href="#">COUNTER 4 reporting service</PharosLink>. Please visit our + COUNTER 5 <PharosLink href="#">support page</PharosLink> for more information on + JSTOR usage reports. + </p> + </div> + <div className="reports-page__container--table"> + <PharosButton + className="reports-page__button--create" + data-modal-id="create-report-modal" + > + Create Report + </PharosButton> + <PharosTabs> + <PharosTab id="tab-1" data-panel-id="panel-1"> + Report History + </PharosTab> + <PharosTab id="tab-2" data-panel-id="panel-2"> + Scheduled Reports + </PharosTab> + <PharosTabPanel id="panel-1" slot="panel" style={{ overflow: 'visible' }}> + {ReportsTable(historyTable)} + </PharosTabPanel> + <PharosTabPanel id="panel-2" slot="panel"> + {ReportsTable(scheduledTable)} + </PharosTabPanel> + </PharosTabs> </div> - <PharosButton - variant="subtle" - iconRight="chevron-down" - className="reports-page__button--user" - > - Gerry Larry Burla - </PharosButton> - </div> - <div className="reports-page__container--disclaimer"> - <PharosHeading level={2} preset="5--bold"> - COUNTER 5 Usage Reports - </PharosHeading> - <p> - Welcome to the COUNTER 5 reporting service for participating institutions. JSTOR - offers COUNTER 5 compliant reports for usage beginning January 2019. COUNTER 4 reports - are still available for usage from January 2017 - April 2019 from the{' '} - <PharosLink href="#">COUNTER 4 reporting service</PharosLink>. Please visit our - COUNTER 5 <PharosLink href="#">support page</PharosLink> for more information on JSTOR - usage reports. - </p> - </div> - <div className="reports-page__container--table"> - <PharosButton - className="reports-page__button--create" - data-modal-id="create-report-modal" - > - Create Report - </PharosButton> - <PharosTabs> - <PharosTab id="tab-1" data-panel-id="panel-1"> - Report History - </PharosTab> - <PharosTab id="tab-2" data-panel-id="panel-2"> - Scheduled Reports - </PharosTab> - <PharosTabPanel id="panel-1" slot="panel" style={{ overflow: 'visible' }}> - {ReportsTable(historyTable)} - </PharosTabPanel> - <PharosTabPanel id="panel-2" slot="panel"> - {ReportsTable(scheduledTable)} - </PharosTabPanel> - </PharosTabs> - </div> - </PharosLayout> - </main> - </div> - <PharosToaster></PharosToaster> - <CreateReportModal /> - </Fragment> -); + </PharosLayout> + </main> + </div> + <PharosToaster></PharosToaster> + <CreateReportModal /> + </> + ), +}; diff --git a/packages/pharos/src/pages/reports/wc/reports.pages.stories.ts b/packages/pharos/src/pages/reports/wc/reports.pages.stories.ts index 205a0dc26..855b49cf6 100644 --- a/packages/pharos/src/pages/reports/wc/reports.pages.stories.ts +++ b/packages/pharos/src/pages/reports/wc/reports.pages.stories.ts @@ -19,54 +19,58 @@ export default { }, }; -export const Reports = (): TemplateResult => html` - <div class="reports-page__container"> - ${Sidenav()} - <main id="main-content"> - <pharos-layout preset="1-col--sidenav" class="reports-page__container--main-content"> - <div class="reports-page__container--top" slot="top"> - <div class="reports-page__container--nav-header"> - <pharos-sidenav-button></pharos-sidenav-button> - <img src="./images/reports/jstor-horizontal.svg" alt="logo" width="96" height="24" /> - <span class="reports-page__separator">/</span> - <pharos-heading level="1" preset="4" no-margin>Admin</pharos-heading> +export const Reports = { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + render: (_: object): TemplateResult => html` + <div class="reports-page__container"> + ${Sidenav()} + <main id="main-content"> + <pharos-layout preset="1-col--sidenav" class="reports-page__container--main-content"> + <div class="reports-page__container--top" slot="top"> + <div class="reports-page__container--nav-header"> + <pharos-sidenav-button></pharos-sidenav-button> + <img src="./images/reports/jstor-horizontal.svg" alt="logo" width="96" height="24" /> + <span class="reports-page__separator">/</span> + <pharos-heading level="1" preset="4" no-margin>Admin</pharos-heading> + </div> + <pharos-button + variant="subtle" + icon-right="chevron-down" + class="reports-page__button--user" + >Gerry Larry Burla + </pharos-button> </div> - <pharos-button - variant="subtle" - icon-right="chevron-down" - class="reports-page__button--user" - >Gerry Larry Burla</pharos-button - > - </div> - <div class="reports-page__container--disclaimer"> - <pharos-heading level="2" preset="5--bold">COUNTER 5 Usage Reports</pharos-heading> - <p> - Welcome to the COUNTER 5 reporting service for participating institutions. JSTOR offers - COUNTER 5 compliant reports for usage beginning January 2019. COUNTER 4 reports are - still available for usage from January 2017 - April 2019 from the - <pharos-link href="#">COUNTER 4 reporting service</pharos-link>. Please visit our - COUNTER 5 <pharos-link href="#">support page</pharos-link> for more information on JSTOR - usage reports. - </p> - </div> - <div class="reports-page__container--table"> - <pharos-button class="reports-page__button--create" data-modal-id="create-report-modal" - >Create Report</pharos-button - > - <pharos-tabs> - <pharos-tab id="tab-1" data-panel-id="panel-1">Report History</pharos-tab> - <pharos-tab id="tab-2" data-panel-id="panel-2">Scheduled Reports</pharos-tab> - <pharos-tab-panel id="panel-1" slot="panel" style="overflow: visible"> - ${ReportsTable(historyTable)} - </pharos-tab-panel> - <pharos-tab-panel id="panel-2" slot="panel"> - ${ReportsTable(scheduledTable)} - </pharos-tab-panel> - </pharos-tabs> - </div> - </pharos-layout> - </main> - </div> - <pharos-toaster></pharos-toaster> - ${CreateReportModal()} -`; + <div class="reports-page__container--disclaimer"> + <pharos-heading level="2" preset="5--bold">COUNTER 5 Usage Reports</pharos-heading> + <p> + Welcome to the COUNTER 5 reporting service for participating institutions. JSTOR + offers COUNTER 5 compliant reports for usage beginning January 2019. COUNTER 4 reports + are still available for usage from January 2017 - April 2019 from the + <pharos-link href="#">COUNTER 4 reporting service</pharos-link>. Please visit our + COUNTER 5 + <pharos-link href="#">support page</pharos-link> + for more information on JSTOR usage reports. + </p> + </div> + <div class="reports-page__container--table"> + <pharos-button class="reports-page__button--create" data-modal-id="create-report-modal" + >Create Report + </pharos-button> + <pharos-tabs> + <pharos-tab id="tab-1" data-panel-id="panel-1">Report History</pharos-tab> + <pharos-tab id="tab-2" data-panel-id="panel-2">Scheduled Reports</pharos-tab> + <pharos-tab-panel id="panel-1" slot="panel" style="overflow: visible"> + ${ReportsTable(historyTable)} + </pharos-tab-panel> + <pharos-tab-panel id="panel-2" slot="panel"> + ${ReportsTable(scheduledTable)} + </pharos-tab-panel> + </pharos-tabs> + </div> + </pharos-layout> + </main> + </div> + <pharos-toaster></pharos-toaster> + ${CreateReportModal()} + `, +}; diff --git a/packages/pharos/src/pages/search/react/search.pages.stories.tsx b/packages/pharos/src/pages/search/react/search.pages.stories.tsx index 00b839a54..fa778639b 100644 --- a/packages/pharos/src/pages/search/react/search.pages.stories.tsx +++ b/packages/pharos/src/pages/search/react/search.pages.stories.tsx @@ -1,5 +1,4 @@ import type { Meta } from '@storybook/react'; -import type { FC } from 'react'; import '../search.scss'; import { Footer } from '../../shared/react/Footer'; @@ -8,30 +7,32 @@ import { FacetFilters } from './facets/FacetFilters'; import { SearchResults } from './search-results/SearchResults'; import { ImageResults } from './image-results/ImageResults'; -import { PharosHeading } from '../../../react-components/heading/pharos-heading'; -import { PharosLink } from '../../../react-components/link/pharos-link'; +import { PharosHeading, PharosLink } from '../../../react-components'; export default { title: 'Pages/Search', parameters: { layout: 'fullscreen' }, } as Meta; -export const Search: FC = () => ( - <div className="search-page__container"> - <Header /> - <main className="search-page__container--main-content"> - <div className="search-page__container--results-content"> - <PharosHeading level={2} preset="5--bold"> - 722,549 search results - </PharosHeading> - <PharosLink href="/help" style={{ marginLeft: 'auto' }}> - Search help - </PharosLink> - </div> - <ImageResults /> - <SearchResults /> - </main> - <FacetFilters /> - <Footer /> - </div> -); +export const Search = { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + render: (_: object) => ( + <div className="search-page__container"> + <Header /> + <main className="search-page__container--main-content"> + <div className="search-page__container--results-content"> + <PharosHeading level={2} preset="5--bold"> + 722,549 search results + </PharosHeading> + <PharosLink href="/help" style={{ marginLeft: 'auto' }}> + Search help + </PharosLink> + </div> + <ImageResults /> + <SearchResults /> + </main> + <FacetFilters /> + <Footer /> + </div> + ), +}; diff --git a/packages/pharos/src/pages/search/wc/search.pages.stories.ts b/packages/pharos/src/pages/search/wc/search.pages.stories.ts index e1272ef13..1e00de3a6 100644 --- a/packages/pharos/src/pages/search/wc/search.pages.stories.ts +++ b/packages/pharos/src/pages/search/wc/search.pages.stories.ts @@ -16,16 +16,19 @@ export default { }, }; -export const Search = (): TemplateResult => html` - <div class="search-page__container"> - ${Header()} - <main class="search-page__container--main-content"> - <div class="search-page__container--results-content"> - <pharos-heading level="2" preset="5--bold">722,549 search results</pharos-heading> - <pharos-link href="/help" style="margin-left: auto">Search help</pharos-link> - </div> - ${ImageResults()} ${SearchResults()} - </main> - ${FacetFilters()} ${Footer()} - </div> -`; +export const Search = { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + render: (_: object): TemplateResult => html` + <div class="search-page__container"> + ${Header()} + <main class="search-page__container--main-content"> + <div class="search-page__container--results-content"> + <pharos-heading level="2" preset="5--bold">722,549 search results</pharos-heading> + <pharos-link href="/help" style="margin-left: auto">Search help</pharos-link> + </div> + ${ImageResults()} ${SearchResults()} + </main> + ${FacetFilters()} ${Footer()} + </div> + `, +}; diff --git a/packages/pharos/src/styles/sass.react.stories.mdx b/packages/pharos/src/styles/sass.react.stories.jsx similarity index 81% rename from packages/pharos/src/styles/sass.react.stories.mdx rename to packages/pharos/src/styles/sass.react.stories.jsx index 287a6de09..5f6a7e2ce 100644 --- a/packages/pharos/src/styles/sass.react.stories.mdx +++ b/packages/pharos/src/styles/sass.react.stories.jsx @@ -1,12 +1,9 @@ -import { Story, Canvas, Meta } from '@storybook/addon-docs'; import sassDoc from '../../sass.json'; -<Meta - title="Styles/Sass" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> +export default { + title: 'Styles/Sass', + parameters: { options: { selectedPanel: 'addon-controls' } }, +}; export const tableTitle = (title) => { return title @@ -62,7 +59,7 @@ export const MixinTable = (title) => { </td> </tr> ); - } else return; + } })} </tbody> </table> @@ -72,13 +69,11 @@ export const MixinTable = (title) => { ); }; -export const PharosMixins = () => ( - <> - {MixinTable('buttons')} {MixinTable('form-elements')} {MixinTable('interaction')} - {MixinTable('layout')} {MixinTable('links')} {MixinTable('typography')} - </> -); - -<Canvas withToolbar> - <Story name="Mixins">{PharosMixins()}</Story> -</Canvas> +export const Mixins = { + render: (_) => ( + <> + {MixinTable('buttons')} {MixinTable('form-elements')} {MixinTable('interaction')} + {MixinTable('layout')} {MixinTable('links')} {MixinTable('typography')} + </> + ), +}; diff --git a/packages/pharos/src/styles/sass.wc.stories.mdx b/packages/pharos/src/styles/sass.wc.stories.jsx similarity index 75% rename from packages/pharos/src/styles/sass.wc.stories.mdx rename to packages/pharos/src/styles/sass.wc.stories.jsx index d2dbaaeb6..e3c01dfe8 100644 --- a/packages/pharos/src/styles/sass.wc.stories.mdx +++ b/packages/pharos/src/styles/sass.wc.stories.jsx @@ -1,23 +1,20 @@ -import { Story, Canvas, Meta } from '@storybook/addon-docs'; import { html } from 'lit'; import sassDoc from '../../sass.json'; -<Meta - title="Styles/Sass" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> +export default { + title: 'Styles/Sass', + parameters: { options: { selectedPanel: 'addon-controls' } }, +}; -export const tableTitle = (title) => { +const tableTitle = (title) => { return title .split('-') .map((str) => str[0].toUpperCase() + str.slice(1)) .join(' '); }; -export const MixinTable = (title) => { +const MixinTable = (title) => { const mixins = sassDoc.filter((value) => value.context.type === 'mixin'); return html` <div class="token-table-container" style="width: 100%"> @@ -54,7 +51,7 @@ export const MixinTable = (title) => { </td> </tr> `; - } else return; + } })} </tbody> </table> @@ -64,12 +61,9 @@ export const MixinTable = (title) => { `; }; -export const PharosMixins = () => html` - ${MixinTable('buttons')} ${MixinTable('form-elements')} ${MixinTable('interaction')} ${MixinTable( - 'layout' - )} ${MixinTable('links')} ${MixinTable('typography')} -`; - -<Canvas withToolbar> - <Story name="Mixins">{PharosMixins()}</Story> -</Canvas> +export const Mixins = { + render: (_) => html` + ${MixinTable('buttons')} ${MixinTable('form-elements')} ${MixinTable('interaction')} + ${MixinTable('layout')} ${MixinTable('links')} ${MixinTable('typography')} + `, +}; diff --git a/packages/pharos/src/styles/tokens.react.stories.mdx b/packages/pharos/src/styles/tokens.react.stories.jsx similarity index 90% rename from packages/pharos/src/styles/tokens.react.stories.mdx rename to packages/pharos/src/styles/tokens.react.stories.jsx index e11eeef17..42155276b 100644 --- a/packages/pharos/src/styles/tokens.react.stories.mdx +++ b/packages/pharos/src/styles/tokens.react.stories.jsx @@ -1,17 +1,14 @@ -import { Story, Canvas, Meta } from '@storybook/addon-docs'; import { useState } from 'react'; import tokens from './tokens.ts'; -import { PharosIcon } from '../react-components/icon/pharos-icon'; +import { PharosIcon } from '../react-components'; -<Meta - title="Styles/Design Tokens" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> +export default { + title: 'Styles/Design Tokens', + parameters: { options: { selectedPanel: 'addon-controls' } }, +}; -export const toTokenFormat = (text) => { +const toTokenFormat = (text) => { return ( <code style={{ fontSize: 'var(--pharos-font-size-small)' }}> {text @@ -23,9 +20,7 @@ export const toTokenFormat = (text) => { ); }; -# Examples - -export const ColorRow = (color) => { +const ColorRow = (color) => { let OGColorHtml; if (color.original.value.startsWith('{color.')) { const OGColorToken = @@ -53,7 +48,7 @@ export const ColorRow = (color) => { ); }; -export const TokenTable = (title, content) => { +const TokenTable = (title, content) => { return ( <div className="token-table-container"> <h2>{title}</h2> @@ -64,7 +59,7 @@ export const TokenTable = (title, content) => { ); }; -export const UiColorTokens = () => ( +const UiColorTokens = () => ( <> {TokenTable( 'Alias color tokens', @@ -121,11 +116,11 @@ export const UiColorTokens = () => ( </> ); -<Canvas withToolbar> - <Story name="Alias Colors">{UiColorTokens()}</Story> -</Canvas> +export const AliasColors = { + render: (_) => UiColorTokens(), +}; -export const GlobalColorTokens = () => { +const GlobalColorTokens = () => { let colorTokens = []; Object.keys(tokens.color) .filter((key) => key !== 'brand' && key !== 'base') @@ -231,11 +226,11 @@ export const GlobalColorTokens = () => { ); }; -<Canvas withToolbar> - <Story name="Global Colors">{GlobalColorTokens()}</Story> -</Canvas> +export const GlobalColors = { + render: (_) => GlobalColorTokens(), +}; -export const FontFamilyTokens = () => ( +const FontFamilyTokens = () => ( <> {TokenTable( 'Font family tokens', @@ -280,11 +275,11 @@ export const FontFamilyTokens = () => ( </> ); -<Canvas withToolbar> - <Story name="Font Family">{FontFamilyTokens()}</Story> -</Canvas> +export const FontFamily = { + render: (_) => FontFamilyTokens(), +}; -export const FontWeightTokens = () => ( +const FontWeightTokens = () => ( <> {TokenTable( 'Font weight tokens', @@ -327,11 +322,11 @@ export const FontWeightTokens = () => ( </> ); -<Canvas withToolbar> - <Story name="Font Weight">{FontWeightTokens()}</Story> -</Canvas> +export const FontWeight = { + render: (_) => FontWeightTokens(), +}; -export const FontSizeTokens = () => { +const FontSizeTokens = () => { const baseValue = tokens.font.size['base'].value; const basePixels = tokens.type.scale[baseValue].comment; const basePx = basePixels.substring(0, basePixels.length - 2); @@ -376,11 +371,11 @@ export const FontSizeTokens = () => { ); }; -<Canvas withToolbar> - <Story name="Font Size">{FontSizeTokens()}</Story> -</Canvas> +export const FontSize = { + render: (_) => FontSizeTokens(), +}; -export const LineHeightToken = () => { +const LineHeightToken = () => { const fontSizeMap = [12, 14, 16, 24, 32, 54, 16]; return ( <> @@ -432,11 +427,11 @@ export const LineHeightToken = () => { ); }; -<Canvas withToolbar> - <Story name="Line Height">{LineHeightToken()}</Story> -</Canvas> +export const LineHeight = { + render: (_) => LineHeightToken(), +}; -export const SpacingTokens = () => ( +const SpacingTokens = () => ( <> {TokenTable( 'Spacing tokens', @@ -468,11 +463,11 @@ export const SpacingTokens = () => ( </> ); -<Canvas withToolbar> - <Story name="Spacing">{SpacingTokens()}</Story> -</Canvas> +export const Spacing = { + render: (_) => SpacingTokens(), +}; -export const RadiusTokens = () => ( +const RadiusTokens = () => ( <> {TokenTable( 'Border radius tokens', @@ -505,11 +500,11 @@ export const RadiusTokens = () => ( </> ); -<Canvas withToolbar> - <Story name="Radius">{RadiusTokens()}</Story> -</Canvas> +export const Radius = { + render: (_) => RadiusTokens(), +}; -export const TransitionRow = (transition, widthRem, color) => { +const TransitionRow = (transition, widthRem, color) => { const [bgc, setBgc] = useState(color); const HandleMouseEnter = () => { setBgc('--pharos-color-jstor-red'); @@ -537,7 +532,7 @@ export const TransitionRow = (transition, widthRem, color) => { ); }; -export const TransitionTokens = () => { +const TransitionTokens = () => { const exampleRems = [1, 2, 5, 10, 20]; const exampleColors = [ '--pharos-color-living-coral-90', @@ -570,11 +565,11 @@ export const TransitionTokens = () => { ); }; -<Canvas withToolbar> - <Story name="Transitions">{TransitionTokens()}</Story> -</Canvas> +export const Transitions = { + render: (_) => TransitionTokens(), +}; -export const TypeTokens = () => ( +const TypeTokens = () => ( <> {TokenTable( 'Type scale tokens', @@ -631,6 +626,6 @@ export const TypeTokens = () => ( </> ); -<Canvas withToolbar> - <Story name="Type Scale">{TypeTokens()}</Story> -</Canvas> +export const TypeScale = { + render: (_) => TypeTokens(), +}; diff --git a/packages/pharos/src/styles/tokens.wc.stories.mdx b/packages/pharos/src/styles/tokens.wc.stories.jsx similarity index 84% rename from packages/pharos/src/styles/tokens.wc.stories.mdx rename to packages/pharos/src/styles/tokens.wc.stories.jsx index 233cf3de5..fde0a2efe 100644 --- a/packages/pharos/src/styles/tokens.wc.stories.mdx +++ b/packages/pharos/src/styles/tokens.wc.stories.jsx @@ -1,16 +1,13 @@ -import { Story, Canvas, Meta } from '@storybook/addon-docs'; import { html } from 'lit'; import tokens from './tokens.ts'; -<Meta - title="Styles/Design Tokens" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> +export default { + title: 'Styles/Design Tokens', + parameters: { options: { selectedPanel: 'addon-controls' } }, +}; -export const toTokenFormat = (text) => { +const toTokenFormat = (text) => { return html`<code style="font-size:var(--pharos-font-size-small);" >$${text .replace(/([a-z])([A-Z]|[0-9])/g, '$1-$2') @@ -20,9 +17,7 @@ export const toTokenFormat = (text) => { </code>`; }; -# Examples - -export const ColorRow = (color) => { +const ColorRow = (color) => { let OGColorHtml = html``; if (color.original.value.startsWith('{color.')) { const OGColorToken = @@ -50,7 +45,7 @@ export const ColorRow = (color) => { `; }; -export const TokenTable = (title, content) => { +const TokenTable = (title, content) => { return html` <div class="token-table-container"> <h2>${title}</h2> @@ -63,7 +58,7 @@ export const TokenTable = (title, content) => { `; }; -export const UiColorTokens = () => html` +const UiColorTokens = () => html` ${TokenTable( 'Alias color tokens', html` @@ -77,14 +72,14 @@ export const UiColorTokens = () => html` <tbody> ${Object.keys(tokens.color.interactive).map((key) => ColorRow(tokens.color.interactive[key]) - )} ${Object.keys(tokens.color.ui).map((key) => ColorRow(tokens.color.ui[key]))} ${ColorRow( - tokens.color.disabled - )} ${ColorRow(tokens.color.overlay)} ${Object.keys(tokens.color.feedback).map((key) => - ColorRow(tokens.color.feedback[key]) )} + ${Object.keys(tokens.color.ui).map((key) => ColorRow(tokens.color.ui[key]))} + ${ColorRow(tokens.color.disabled)} ${ColorRow(tokens.color.overlay)} + ${Object.keys(tokens.color.feedback).map((key) => ColorRow(tokens.color.feedback[key]))} </tbody> ` - )} ${TokenTable( + )} + ${TokenTable( 'Text color tokens', html` <thead> @@ -98,7 +93,8 @@ export const UiColorTokens = () => html` ${Object.keys(tokens.color.text).map((key) => ColorRow(tokens.color.text[key]))} </tbody> ` - )} ${TokenTable( + )} + ${TokenTable( 'Interaction color tokens', html` <thead> @@ -109,19 +105,18 @@ export const UiColorTokens = () => html` </tr> </thead> <tbody> - ${ColorRow(tokens.color.focus)} ${Object.keys(tokens.color.hover).map((key) => - ColorRow(tokens.color.hover[key]) - )} + ${ColorRow(tokens.color.focus)} + ${Object.keys(tokens.color.hover).map((key) => ColorRow(tokens.color.hover[key]))} </tbody> ` )} `; -<Canvas withToolbar> - <Story name="Alias Colors">{UiColorTokens()}</Story> -</Canvas> +export const AliasColors = { + render: (_) => UiColorTokens(), +}; -export const GlobalColorTokens = () => { +const GlobalColorTokens = () => { let colorTokens = []; Object.keys(tokens.color) .filter((key) => key !== 'brand' && key !== 'base') @@ -154,7 +149,8 @@ export const GlobalColorTokens = () => { .map((color) => ColorRow(color))} </tbody> ` - )} ${TokenTable( + )} + ${TokenTable( 'Secondary colors', html` <thead> @@ -167,10 +163,12 @@ export const GlobalColorTokens = () => { <tbody> ${colorTokens .filter((color) => color.group === 'secondary') - .map((color) => ColorRow(color))} ${ColorRow(tokens.color['Marble gray'].base)} + .map((color) => ColorRow(color))} + ${ColorRow(tokens.color['Marble gray'].base)} </tbody> ` - )} ${TokenTable( + )} + ${TokenTable( 'Grayscale colors', html` <thead> @@ -186,7 +184,8 @@ export const GlobalColorTokens = () => { .map((color) => ColorRow(color))} </tbody> ` - )} ${TokenTable( + )} + ${TokenTable( 'Tints', html` <thead> @@ -200,7 +199,8 @@ export const GlobalColorTokens = () => { ${colorTokens.filter((color) => color.group === 'tint').map((color) => ColorRow(color))} </tbody> ` - )} ${TokenTable( + )} + ${TokenTable( 'Feedback color', html` <thead> @@ -220,11 +220,11 @@ export const GlobalColorTokens = () => { `; }; -<Canvas withToolbar> - <Story name="Global Colors">{GlobalColorTokens()}</Story> -</Canvas> +export const GlobalColors = { + render: (_) => GlobalColorTokens(), +}; -export const FontFamilyTokens = () => html` +const FontFamilyTokens = () => html` ${TokenTable( 'Font family tokens', html` @@ -263,11 +263,11 @@ export const FontFamilyTokens = () => html` )} `; -<Canvas withToolbar> - <Story name="Font Family">{FontFamilyTokens()}</Story> -</Canvas> +export const FontFamily = { + render: (_) => FontFamilyTokens(), +}; -export const FontWeightTokens = () => html` +const FontWeightTokens = () => html` ${TokenTable( 'Font weight tokens', html` @@ -301,11 +301,11 @@ export const FontWeightTokens = () => html` )} `; -<Canvas withToolbar> - <Story name="Font Weight">{FontWeightTokens()}</Story> -</Canvas> +export const FontWeight = { + render: (_) => FontWeightTokens(), +}; -export const FontSizeTokens = () => { +const FontSizeTokens = () => { const baseValue = tokens.font.size['base'].value; const basePixels = tokens.type.scale[baseValue].comment; const basePx = basePixels.substring(0, basePixels.length - 2); @@ -346,11 +346,11 @@ export const FontSizeTokens = () => { `; }; -<Canvas withToolbar> - <Story name="Font Size">{FontSizeTokens()}</Story> -</Canvas> +export const FontSize = { + render: (_) => FontSizeTokens(), +}; -export const LineHeightToken = () => { +const LineHeightToken = () => { const fontSizeMap = [12, 14, 16, 24, 32, 54, 16]; return html` ${TokenTable( @@ -395,11 +395,11 @@ export const LineHeightToken = () => { `; }; -<Canvas withToolbar> - <Story name="Line Height">{LineHeightToken()}</Story> -</Canvas> +export const LineHeight = { + render: (_) => LineHeightToken(), +}; -export const SpacingTokens = () => html` +const SpacingTokens = () => html` ${TokenTable( 'Spacing tokens', html` @@ -429,11 +429,11 @@ export const SpacingTokens = () => html` )} `; -<Canvas withToolbar> - <Story name="Spacing">{SpacingTokens()}</Story> -</Canvas> +export const Spacing = { + render: (_) => SpacingTokens(), +}; -export const RadiusTokens = () => html` +const RadiusTokens = () => html` ${TokenTable( 'Border radius tokens', html` @@ -464,11 +464,11 @@ export const RadiusTokens = () => html` )} `; -<Canvas withToolbar> - <Story name="Radius">{RadiusTokens()}</Story> -</Canvas> +export const Radius = { + render: (_) => RadiusTokens(), +}; -export const TransitionRow = (transition, widthRem, color) => { +const TransitionRow = (transition, widthRem, color) => { return html` <tr> <td>${toTokenFormat(transition.name)}</td> @@ -485,7 +485,7 @@ export const TransitionRow = (transition, widthRem, color) => { `; }; -export const TransitionTokens = () => { +const TransitionTokens = () => { const exampleRems = [1, 2, 5, 10, 20]; const exampleColors = [ '--pharos-color-living-coral-90', @@ -506,9 +506,8 @@ export const TransitionTokens = () => { </tr> </thead> <tbody> - ${TransitionRow(tokens.transition.base, 5, '--pharos-color-living-coral-80')} ${Object.keys( - tokens.transition.duration - ).map((key, i) => + ${TransitionRow(tokens.transition.base, 5, '--pharos-color-living-coral-80')} + ${Object.keys(tokens.transition.duration).map((key, i) => TransitionRow(tokens.transition.duration[key], exampleRems[i], exampleColors[i]) )} </tbody> @@ -517,11 +516,11 @@ export const TransitionTokens = () => { `; }; -<Canvas withToolbar> - <Story name="Transitions">{TransitionTokens()}</Story> -</Canvas> +export const Transitions = { + render: (_) => TransitionTokens(), +}; -export const TypeTokens = () => html` +const TypeTokens = () => html` ${TokenTable( 'Type scale tokens', html` @@ -539,7 +538,8 @@ export const TypeTokens = () => html` <tr> <td>${toTokenFormat(tokens.type.scale[key].name)}</td> <td> - ${tokens.type.scale[key].comment} | ${tokens.type.scale[key].comment.substring( + ${tokens.type.scale[key].comment} | + ${tokens.type.scale[key].comment.substring( 0, tokens.type.scale[key].comment.length - 2 ) / 16}rem @@ -570,6 +570,6 @@ export const TypeTokens = () => html` )} `; -<Canvas withToolbar> - <Story name="Type Scale">{TypeTokens()}</Story> -</Canvas> +export const TypeScale = { + render: (_) => TypeTokens(), +}; diff --git a/packages/pharos/src/styles/typography.react.stories.jsx b/packages/pharos/src/styles/typography.react.stories.jsx new file mode 100644 index 000000000..a4b09e2cd --- /dev/null +++ b/packages/pharos/src/styles/typography.react.stories.jsx @@ -0,0 +1,124 @@ +export default { + title: 'Styles/Typography', + parameters: { options: { selectedPanel: 'addon-controls' } }, +}; + +const theirNames = ['Item 1', 'Item 2', 'Item 3', 'Item 4', 'Item 5']; +const list = ( + <> + {theirNames.map((name, index) => { + return <li key={index}>{name}</li>; + })} + </> +); + +export const PlainText = { + render: (args) => <span>{args.text}</span>, + args: { text: 'I am plain text' }, +}; + +export const BringToAttentionText = { + name: 'Bring to Attention Text', + render: (args) => ( + <span> + This is an example of how to bring attention to <b>{args.text}</b>. + </span> + ), + args: { text: 'specific text' }, +}; + +export const StrongText = { + render: (args) => ( + <span> + This is an example of <strong>{args.text}</strong>. + </span> + ), + args: { text: 'strong text' }, +}; + +export const SmallText = { + render: (args) => ( + <span> + This is an example of <small>{args.text}</small>. + </span> + ), + args: { text: 'small text' }, +}; + +export const IdiomaticText = { + render: (args) => ( + <span> + <i>{args.text}</i> is a beacon leading ships safely toward our collective knowledge. + </span> + ), + args: { text: 'Pharos' }, +}; + +export const StressEmphasisText = { + render: (args) => ( + <span> + This is an example of <em>{args.text}</em>. + </span> + ), + args: { text: 'emphasized text' }, +}; + +export const Tables = { + render: (args) => ( + <table className="typography-table-example" style={{ borderCollapse: 'collapse' }}> + <thead> + <tr> + <th className="typography-table-example">{args.header}</th> + </tr> + </thead> + <tbody> + <tr> + <td className="typography-table-example">Item 1</td> + </tr> + <tr> + <td className="typography-table-example">Item 2</td> + </tr> + <tr> + <td className="typography-table-example">Item 3</td> + </tr> + </tbody> + </table> + ), + args: { header: 'Header' }, +}; + +export const OrderedList = { + render: (_) => <ol>{list}</ol>, +}; + +export const UnorderedList = { + render: (_) => <ul>{list}</ul>, +}; + +export const ListWithoutBullets = { + name: 'List without Bullets', + render: (_) => <ul className="list-example__no-bullets">{list}</ul>, +}; + +export const NestedLists = { + render: (_) => ( + <ul className="list-example__nested"> + <li> + Item 1 + <ul> + <li>Item 1.1</li> + </ul> + </li> + <li> + Item 2 + <ul> + <li>Item 2.1</li> + </ul> + </li> + </ul> + ), +}; + +export const InlineList = { + render: (_) => <ul className="list-example__inline">{list}</ul>, +}; diff --git a/packages/pharos/src/styles/typography.react.stories.mdx b/packages/pharos/src/styles/typography.react.stories.mdx deleted file mode 100644 index 18a99e1be..000000000 --- a/packages/pharos/src/styles/typography.react.stories.mdx +++ /dev/null @@ -1,195 +0,0 @@ -import { Story, Canvas, Meta } from '@storybook/addon-docs'; -import { Fragment } from 'react'; - -<Meta - title="Styles/Typography" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Examples - -export const theirNames = ['Item 1', 'Item 2', 'Item 3', 'Item 4', 'Item 5']; -export const list = ( - <Fragment> - {theirNames.map((name, index) => { - return <li key={index}>{name}</li>; - })} - </Fragment> -); - -export const PlainTemplate = (args) => <span>{args.text}</span>; - -export const BringAttentionTemplate = (args) => ( - <span> - This is an example of how to bring attention to <b>{args.text}</b>. - </span> -); - -export const StrongTemplate = (args) => ( - <span> - This is an example of <strong>{args.text}</strong>. - </span> -); - -export const SmallTemplate = (args) => ( - <span> - This is an example of <small>{args.text}</small> - </span> -); - -export const IdiomaticTemplate = (args) => ( - <span> - <i>{args.text}</i> is a beacon leading ships safely toward our collective knowledge. - </span> -); - -export const EmphasisTemplate = (args) => ( - <span> - This is an example of <em>{args.text}</em>. - </span> -); - -export const TableTemplate = (args) => ( - <table className="typography-table-example" style={{ borderCollapse: 'collapse' }}> - <thead> - <tr> - <th className="typography-table-example">{args.header}</th> - </tr> - </thead> - <tbody> - <tr> - <td className="typography-table-example">Item 1</td> - </tr> - <tr> - <td className="typography-table-example">Item 2</td> - </tr> - <tr> - <td className="typography-table-example">Item 3</td> - </tr> - </tbody> - </table> -); - -export const OrderedListTemplate = () => <ol>{list}</ol>; - -export const UnorderedListTemplate = () => <ul>{list}</ul>; - -export const ListNoBulletsTemplate = () => <ul className="list-example__no-bullets">{list}</ul>; - -export const NestedListsTemplate = () => ( - <ul className="list-example__nested"> - <li> - Item 1 - <ul> - <li>Item 1.1</li> - </ul> - </li> - <li> - Item 2 - <ul> - <li>Item 2.1</li> - </ul> - </li> - </ul> -); - -export const InlineListTemplate = () => <ul className="list-example__inline">{list}</ul>; - -<Canvas withToolbar> - <Story - name="Plain Text" - args={{ - text: 'This is the default plain text', - }} - > - {PlainTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Bring to Attention Text" - args={{ - text: 'specific text', - }} - > - {BringAttentionTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Strong Text" - args={{ - text: 'strong text', - }} - > - {StrongTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Small Text" - args={{ - text: 'small text', - }} - > - {SmallTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Idiomatic Text" - args={{ - text: 'Pharos', - }} - > - {IdiomaticTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Stress Emphasis Text" - args={{ - text: 'emphasized text', - }} - > - {EmphasisTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Tables" - args={{ - header: 'Header', - }} - > - {TableTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story name="Ordered List">{OrderedListTemplate.bind({})}</Story> -</Canvas> - -<Canvas withToolbar> - <Story name="Unordered List">{UnorderedListTemplate.bind({})}</Story> -</Canvas> - -<Canvas withToolbar> - <Story name="List without Bullets">{ListNoBulletsTemplate.bind({})}</Story> -</Canvas> - -<Canvas withToolbar> - <Story name="Nested Lists">{NestedListsTemplate.bind({})}</Story> -</Canvas> - -<Canvas withToolbar> - <Story name="Inline List">{InlineListTemplate.bind({})}</Story> -</Canvas> diff --git a/packages/pharos/src/styles/typography.wc.stories.jsx b/packages/pharos/src/styles/typography.wc.stories.jsx new file mode 100644 index 000000000..87adb91e4 --- /dev/null +++ b/packages/pharos/src/styles/typography.wc.stories.jsx @@ -0,0 +1,116 @@ +import { html } from 'lit'; + +export default { + title: 'Styles/Typography', + parameters: { options: { selectedPanel: 'addon-controls' } }, +}; + +const theirNames = ['Item 1', 'Item 2', 'Item 3', 'Item 4', 'Item 5']; +const list = html` + ${theirNames.map((name) => { + return html` <li>${name}</li> `; + })} +`; + +export const PlainText = { + render: (args) => html` <span>${args.text}</span> `, + args: { text: 'I am plain text' }, +}; + +export const BringToAttentionText = { + name: 'Bring to Attention Text', + render: (args) => + html` <span> This is an example of how to bring attention to <b>${args.text}</b>. </span>`, + args: { text: 'specific text' }, +}; + +export const StrongText = { + render: (args) => html` <span> This is an example of <strong>${args.text}</strong>. </span>`, + args: { text: 'strong text' }, +}; + +export const SmallText = { + render: (args) => html`<span>This is an example of <small>${args.text}</small></span>`, + args: { text: 'small text' }, +}; + +export const IdiomaticText = { + render: (args) => + html`<span + ><i>${args.text}</i> is a beacon leading ships safely toward our collective knowledge.</span + >`, + args: { text: 'Pharos' }, +}; + +export const StressEmphasisText = { + render: (args) => html`<span>This is an example of <em>${args.text}</em>.</span>`, + args: { text: 'emphasized text' }, +}; + +export const Tables = { + render: (args) => html` + <table class="typography-table-example" style="border-collapse: collapse;"> + <thead> + <tr> + <th>${args.header}</th> + </tr> + </thead> + <tbody> + <tr> + <td class="typography-table-example">Item 1</td> + </tr> + <tr> + <td class="typography-table-example">Item 2</td> + </tr> + <tr> + <td class="typography-table-example">Item 3</td> + </tr> + </tbody> + </table> + `, + args: { header: 'Header' }, +}; + +export const OrderedList = { + render: () => html` <ol> + ${list} + </ol>`, +}; + +export const UnorderedList = { + render: () => html` <ul> + ${list} + </ul>`, +}; + +export const ListWithoutBullets = { + name: 'List without Bullets', + render: () => html` <ul class="list-example__no-bullets"> + ${list} + </ul>`, +}; + +export const NestedLists = { + render: () => html` + <ul class="list-example__nested"> + <li> + Item 1 + <ul> + <li>Item 1.1</li> + </ul> + </li> + <li> + Item 2 + <ul> + <li>Item 2.1</li> + </ul> + </li> + </ul> + `, +}; + +export const InlineList = { + render: () => html` <ul class="list-example__inline"> + ${list} + </ul>`, +}; diff --git a/packages/pharos/src/styles/typography.wc.stories.mdx b/packages/pharos/src/styles/typography.wc.stories.mdx deleted file mode 100644 index a466bd477..000000000 --- a/packages/pharos/src/styles/typography.wc.stories.mdx +++ /dev/null @@ -1,196 +0,0 @@ -import { Story, Canvas, Meta } from '@storybook/addon-docs'; -import { html } from 'lit'; - -<Meta - title="Styles/Typography" - parameters={{ - options: { selectedPanel: 'addon-controls' }, - }} -/> - -# Examples - -export const theirNames = ['Item 1', 'Item 2', 'Item 3', 'Item 4', 'Item 5']; -export const list = html` - ${theirNames.map((name) => { - return html` <li>${name}</li> `; - })} -`; - -export const PlainTemplate = (args) => html` <span>${args.text}</span> `; - -export const BringAttentionTemplate = (args) => - html` <span> This is an example of how to bring attention to <b>${args.text}</b>. </span>`; - -export const StrongTemplate = (args) => - html` <span> This is an example of <strong>${args.text}</strong>. </span>`; - -export const SmallTemplate = (args) => - html`<span>This is an example of <small>${args.text}</small></span>`; - -export const IdiomaticTemplate = (args) => - html`<span> - <i>${args.text}</i> is a beacon leading ships safely toward our collective knowledge. - </span>`; - -export const EmphasisTemplate = (args) => - html`<span>This is an example of <em>${args.text}</em>.</span>`; - -export const TableTemplate = (args) => html` - <table class="typography-table-example" style="border-collapse: collapse;"> - <thead> - <tr> - <th>${args.header}</th> - </tr> - </thead> - <tbody> - <tr> - <td class="typography-table-example">Item 1</td> - </tr> - <tr> - <td class="typography-table-example">Item 2</td> - </tr> - <tr> - <td class="typography-table-example">Item 3</td> - </tr> - </tbody> - </table> -`; - -export const OrderedListTemplate = () => html` - <ol> - ${list} - </ol> -`; - -export const UnorderedListTemplate = () => html` - <ul> - ${list} - </ul> -`; - -export const ListNoBulletsTemplate = () => html` - <ul class="list-example__no-bullets"> - ${list} - </ul> -`; - -export const NestedListsTemplate = () => html` - <ul class="list-example__nested"> - <li> - Item 1 - <ul> - <li>Item 1.1</li> - </ul> - </li> - <li> - Item 2 - <ul> - <li>Item 2.1</li> - </ul> - </li> - </ul> -`; - -export const InlineListTemplate = () => html` - <ul class="list-example__inline"> - ${list} - </ul> -`; - -<Canvas withToolbar> - <Story - name="Plain Text" - args={{ - text: 'I am plain text', - }} - > - {PlainTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Bring to Attention Text" - args={{ - text: 'specific text', - }} - > - {BringAttentionTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Strong Text" - args={{ - text: 'strong text', - }} - > - {StrongTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Small Text" - args={{ - text: 'small text', - }} - > - {SmallTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Idiomatic Text" - args={{ - text: 'Pharos', - }} - > - {IdiomaticTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Stress Emphasis Text" - args={{ - text: 'emphasized text', - }} - > - {EmphasisTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story - name="Tables" - args={{ - header: 'Header', - }} - > - {TableTemplate.bind({})} - </Story> -</Canvas> - -<Canvas withToolbar> - <Story name="Ordered List">{OrderedListTemplate.bind({})}</Story> -</Canvas> - -<Canvas withToolbar> - <Story name="Unordered List">{UnorderedListTemplate.bind({})}</Story> -</Canvas> - -<Canvas withToolbar> - <Story name="List without Bullets">{ListNoBulletsTemplate.bind({})}</Story> -</Canvas> - -<Canvas withToolbar> - <Story name="Nested Lists">{NestedListsTemplate.bind({})}</Story> -</Canvas> - -<Canvas withToolbar> - <Story name="Inline List">{InlineListTemplate.bind({})}</Story> -</Canvas> diff --git a/packages/pharos/src/utils/iconNames.ts b/packages/pharos/src/utils/iconNames.ts index 15578be54..365c5e857 100644 --- a/packages/pharos/src/utils/iconNames.ts +++ b/packages/pharos/src/utils/iconNames.ts @@ -1,3 +1,4 @@ import tokens from '../styles/tokens'; +import type { IconName } from '../components/icon/pharos-icon'; -export const iconNames = Object.keys(tokens.asset.icon); +export const iconNames = Object.keys(tokens.asset.icon).sort() as IconName[]; From 237339f5130c4809c2f8e807d5a463edd8e63b13 Mon Sep 17 00:00:00 2001 From: Dane Hillard <github@danehillard.com> Date: Mon, 7 Nov 2022 18:31:43 -0500 Subject: [PATCH 6/9] Docs: update copy for Button's on-background usage (#444) * fix(docs): update copy for Button's on-background usage * chore: add changeset --- .changeset/lemon-islands-sin.md | 5 +++++ packages/pharos-site/static/guidelines/button.docs.mdx | 9 +++------ 2 files changed, 8 insertions(+), 6 deletions(-) create mode 100644 .changeset/lemon-islands-sin.md diff --git a/.changeset/lemon-islands-sin.md b/.changeset/lemon-islands-sin.md new file mode 100644 index 000000000..ea4efb1ae --- /dev/null +++ b/.changeset/lemon-islands-sin.md @@ -0,0 +1,5 @@ +--- +'@ithaka/pharos-site': patch +--- + +Fix documentation for Button's on-background usage diff --git a/packages/pharos-site/static/guidelines/button.docs.mdx b/packages/pharos-site/static/guidelines/button.docs.mdx index b85f95511..7c91ee9de 100644 --- a/packages/pharos-site/static/guidelines/button.docs.mdx +++ b/packages/pharos-site/static/guidelines/button.docs.mdx @@ -299,12 +299,9 @@ import ellipsesExample from '@images/components/button/buttons_ellipses-example. </PageSection> <PageSection title="Buttons on dark background" subSectionLevel={1}> <p> - Use the disabled state of a button when a user can't perform an action at the time of their - experience. They should be used sparingly and only for actions that they are unable to take. - The user shouldn't have to guess why a button is disabled. It should be immediately obvious as - to why the button might be disabled (e.g., an item can't be downloaded due to access). - Otherwise, show the button in its default state, then provide helpful error text after it's - been clicked. + When a button is used on a darker background (e.g., black or marble-gray-20), use the + on-background attribute. The four variants described above can all be used on dark backgrounds + and follow the same guidelines. </p> <div style={{ From 92e7175b48bfae96b848e6ecac88d404cfb6a9e2 Mon Sep 17 00:00:00 2001 From: Dane Hillard <github@danehillard.com> Date: Tue, 8 Nov 2022 09:56:50 -0500 Subject: [PATCH 7/9] feat(storybook): install Measure and Outline addons (#445) - Remove storysource addon for now as it doesn't work with CSF 3 yet - Outline doesn't appear to drill down into the shadow DOM elements at the moment; it only outlines the host element and any slotted content. --- .storybook/main.js | 3 +- package.json | 29 +++++----- yarn.lock | 132 +++++++++++++++------------------------------ 3 files changed, 61 insertions(+), 103 deletions(-) diff --git a/.storybook/main.js b/.storybook/main.js index f88780da8..e6ab02d96 100644 --- a/.storybook/main.js +++ b/.storybook/main.js @@ -19,6 +19,8 @@ module.exports = { '@storybook/addon-actions', '@storybook/addon-a11y', '@storybook/addon-viewport', + '@storybook/addon-measure', + '@storybook/addon-outline', '@storybook/addon-controls', '@storybook/addon-google-analytics', { @@ -29,7 +31,6 @@ module.exports = { }, }, }, - '@storybook/addon-storysource', '@storybook/addon-backgrounds', ], stories: [], diff --git a/package.json b/package.json index 571c5056c..98812048a 100644 --- a/package.json +++ b/package.json @@ -66,22 +66,23 @@ "@commitlint/config-conventional": "^15.0.0", "@emotion/babel-plugin": "^11.9.2", "@size-limit/preset-small-lib": "^7.0.4", - "@storybook/addon-a11y": "^6.5.9", - "@storybook/addon-actions": "^6.5.9", - "@storybook/addon-backgrounds": "^6.5.9", - "@storybook/addon-controls": "^6.5.9", - "@storybook/addon-docs": "^6.5.9", + "@storybook/addon-a11y": "^6.5.13", + "@storybook/addon-actions": "^6.5.13", + "@storybook/addon-backgrounds": "^6.5.13", + "@storybook/addon-controls": "^6.5.13", + "@storybook/addon-docs": "^6.5.13", "@storybook/addon-google-analytics": "^6.3.0-alpha.22", + "@storybook/addon-measure": "^6.5.13", + "@storybook/addon-outline": "^6.5.13", "@storybook/addon-postcss": "^2.0.0", - "@storybook/addon-storysource": "^6.5.9", - "@storybook/addon-viewport": "^6.5.9", - "@storybook/addons": "^6.5.9", - "@storybook/builder-webpack5": "^6.5.9", - "@storybook/manager-webpack5": "^6.5.9", - "@storybook/react": "^6.5.9", - "@storybook/source-loader": "^6.5.9", - "@storybook/theming": "^6.5.9", - "@storybook/web-components": "^6.5.9", + "@storybook/addon-viewport": "^6.5.13", + "@storybook/addons": "^6.5.13", + "@storybook/builder-webpack5": "^6.5.13", + "@storybook/manager-webpack5": "^6.5.13", + "@storybook/react": "^6.5.13", + "@storybook/source-loader": "^6.5.13", + "@storybook/theming": "^6.5.13", + "@storybook/web-components": "^6.5.13", "@typescript-eslint/eslint-plugin": "^5.41.0", "@typescript-eslint/parser": "^5.41.0", "all-contributors-cli": "^6.20.0", diff --git a/yarn.lock b/yarn.lock index ea1b1ac39..ae4199cce 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1141,7 +1141,7 @@ core-js-pure "^3.25.1" regenerator-runtime "^0.13.10" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.4", "@babel/runtime@^7.12.5", "@babel/runtime@^7.15.4", "@babel/runtime@^7.17.8", "@babel/runtime@^7.18.0", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.9", "@babel/runtime@^7.2.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.3.4", "@babel/runtime@^7.5.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.4", "@babel/runtime@^7.12.5", "@babel/runtime@^7.15.4", "@babel/runtime@^7.17.8", "@babel/runtime@^7.18.0", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.9", "@babel/runtime@^7.2.0", "@babel/runtime@^7.3.4", "@babel/runtime@^7.5.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": version "7.20.0" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.0.tgz#824a9ef325ffde6f78056059db3168c08785e24a" integrity sha512-NDYdls71fTXoU8TZHfbBWg7DiZfNzClcKui/+kyi6ppD2L1qnWW3VV6CjtaBXSUGGhiTWJ6ereOIkUvenif66Q== @@ -3202,7 +3202,7 @@ "@size-limit/esbuild" "7.0.8" "@size-limit/file" "7.0.8" -"@storybook/addon-a11y@^6.5.9": +"@storybook/addon-a11y@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/addon-a11y/-/addon-a11y-6.5.13.tgz#3934b12dc2f3bf7a1a1bc660aa7b84b856bc2b6c" integrity sha512-+Tcl/4LWRh3ygLUZFGvkjT42CF/tJcP+kgsIho7i2MxpgZyD6+BUhL9srPZusjbR+uHcHXJ/yxw/vxFQ+UCTLA== @@ -3224,7 +3224,7 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/addon-actions@^6.5.9": +"@storybook/addon-actions@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-6.5.13.tgz#84535dda78c7fe15fc61f19a23ed1440952f3c76" integrity sha512-3Tji0gIy95havhTpSc6CsFl5lNxGn4O5Y1U9fyji+GRkKqDFOrvVLYAHPtLOpYdEI5tF0bDo+akiqfDouY8+eA== @@ -3249,7 +3249,7 @@ util-deprecate "^1.0.2" uuid-browser "^3.1.0" -"@storybook/addon-backgrounds@^6.5.9": +"@storybook/addon-backgrounds@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/addon-backgrounds/-/addon-backgrounds-6.5.13.tgz#37629db582501aa22bddf492a9f01d6614aaa993" integrity sha512-b4JX7JMY7e50y1l6g71D+2XWV3GO0TO2z1ta8J6W4OQt8f44V7sSkRQaJUzXdLjQMrA+Anojuy1ZwPjVeLC6vg== @@ -3268,7 +3268,7 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/addon-controls@^6.5.9": +"@storybook/addon-controls@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/addon-controls/-/addon-controls-6.5.13.tgz#14c8f9379337768bf03f59d19f1a16f3c41418ab" integrity sha512-lYq3uf2mlVevm0bi6ueL3H6TpUMRYW9s/pTNTVJT225l27kLdFR9wEKxAkCBrlKaTgDLJmzzDRsJE3NLZlR/5Q== @@ -3286,7 +3286,7 @@ lodash "^4.17.21" ts-dedent "^2.0.0" -"@storybook/addon-docs@^6.5.9": +"@storybook/addon-docs@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-6.5.13.tgz#fd82893946b0fa6f0657f16bf6a94637ab4b7532" integrity sha512-RG/NjsheD9FixZ789RJlNyNccaR2Cuy7CtAwph4oUNi3aDFjtOI8Oe9L+FOT7qtVnZLw/YMjF+pZxoDqJNKLPw== @@ -3327,37 +3327,48 @@ dependencies: react-ga "^2.7.0" -"@storybook/addon-postcss@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@storybook/addon-postcss/-/addon-postcss-2.0.0.tgz#ec61cb9bb2662f408072b35c466c7df801c28498" - integrity sha512-Nt82A7e9zJH4+A+VzLKKswUfru+T6FJTakj4dccP0i8DSn7a0CkzRPrLuZBq8tg4voV6gD74bcDf3gViCVBGtA== +"@storybook/addon-measure@^6.5.13": + version "6.5.13" + resolved "https://registry.yarnpkg.com/@storybook/addon-measure/-/addon-measure-6.5.13.tgz#05c0e9813fee84a13ba1172444ea99ee083acdbd" + integrity sha512-pi5RFB9YTnESRFtYHAVRUrgEI5to0TFc4KndtwcCKt1fMJ8OFjXQeznEfdj95PFeUvW5TNUwjL38vK4LhicB+g== dependencies: - "@storybook/node-logger" "^6.1.14" - css-loader "^3.6.0" - postcss "^7.0.35" - postcss-loader "^4.2.0" - style-loader "^1.3.0" + "@storybook/addons" "6.5.13" + "@storybook/api" "6.5.13" + "@storybook/client-logger" "6.5.13" + "@storybook/components" "6.5.13" + "@storybook/core-events" "6.5.13" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + core-js "^3.8.2" + global "^4.4.0" -"@storybook/addon-storysource@^6.5.9": +"@storybook/addon-outline@^6.5.13": version "6.5.13" - resolved "https://registry.yarnpkg.com/@storybook/addon-storysource/-/addon-storysource-6.5.13.tgz#e773bf528ef4ba5b809c308b77b0e1551dccdafb" - integrity sha512-Gcru/fBuLZKlswHiD3JNjIWshtv7g0XtNpLOFg1B0lPVgISvBQ92k7SGdRV5HpHVkkzTcQ1yFH78h1RJY80MIQ== + resolved "https://registry.yarnpkg.com/@storybook/addon-outline/-/addon-outline-6.5.13.tgz#e4233e7d268cd0e1b814c253e8756fb459a341bf" + integrity sha512-8d8taPheO/tryflzXbj2QRuxHOIS8CtzRzcaglCcioqHEMhOIDOx9BdXKdheq54gdk/UN94HdGJUoVxYyXwZ4Q== dependencies: "@storybook/addons" "6.5.13" "@storybook/api" "6.5.13" "@storybook/client-logger" "6.5.13" "@storybook/components" "6.5.13" - "@storybook/router" "6.5.13" - "@storybook/source-loader" "6.5.13" - "@storybook/theming" "6.5.13" + "@storybook/core-events" "6.5.13" + "@storybook/csf" "0.0.2--canary.4566f4d.1" core-js "^3.8.2" - estraverse "^5.2.0" - loader-utils "^2.0.0" - prop-types "^15.7.2" - react-syntax-highlighter "^15.4.5" + global "^4.4.0" regenerator-runtime "^0.13.7" + ts-dedent "^2.0.0" -"@storybook/addon-viewport@^6.5.9": +"@storybook/addon-postcss@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@storybook/addon-postcss/-/addon-postcss-2.0.0.tgz#ec61cb9bb2662f408072b35c466c7df801c28498" + integrity sha512-Nt82A7e9zJH4+A+VzLKKswUfru+T6FJTakj4dccP0i8DSn7a0CkzRPrLuZBq8tg4voV6gD74bcDf3gViCVBGtA== + dependencies: + "@storybook/node-logger" "^6.1.14" + css-loader "^3.6.0" + postcss "^7.0.35" + postcss-loader "^4.2.0" + style-loader "^1.3.0" + +"@storybook/addon-viewport@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-6.5.13.tgz#97771ed2f4ca1bef83d25174ce07db8557cdf795" integrity sha512-KSfeuCSIjncwWGnUu6cZBx8WNqYvm5gHyFvkSPKEu0+MJtgncbUy7pl53lrEEr6QmIq0GRXvS3A0XzV8RCnrSA== @@ -3374,7 +3385,7 @@ prop-types "^15.7.2" regenerator-runtime "^0.13.7" -"@storybook/addons@6.5.13", "@storybook/addons@^6.5.9": +"@storybook/addons@6.5.13", "@storybook/addons@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-6.5.13.tgz#61ec5eab07879400d423d60bb397880d10ee5e73" integrity sha512-18CqzNnrGMfeZtiKz+R/3rHtSNnfNwz6y6prIQIbWseK16jY8ELTfIFGviwO5V2OqpbHDQi5+xQQ63QAIb89YA== @@ -3467,7 +3478,7 @@ webpack-hot-middleware "^2.25.1" webpack-virtual-modules "^0.2.2" -"@storybook/builder-webpack5@^6.5.9": +"@storybook/builder-webpack5@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/builder-webpack5/-/builder-webpack5-6.5.13.tgz#b40a6fc0ff22b6e7c7e1a46a8fc3c24cf14833f8" integrity sha512-juNH31ZljWbaoBD6Yx2/iQ4G66UBkwq+cFUqLzgVROKMXmYaT0AJYbfyY8CgGqcXkc+sqNA63yWaLWd8/K9vTg== @@ -3821,7 +3832,7 @@ webpack-dev-middleware "^3.7.3" webpack-virtual-modules "^0.2.2" -"@storybook/manager-webpack5@^6.5.9": +"@storybook/manager-webpack5@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/manager-webpack5/-/manager-webpack5-6.5.13.tgz#3d88d4ec7dfce6413da944e94e28f3b7a1af4b51" integrity sha512-lQEZacSfeRsbqfJE7TVk35Hm1vkr0I2i1pyYqM+4862gRbMh1nJQXbJ5GqZ+Fo/bf0ZfyFZ32jGDIJAFdlpkuQ== @@ -3929,7 +3940,7 @@ react-docgen-typescript "^2.1.1" tslib "^2.0.0" -"@storybook/react@^6.5.9": +"@storybook/react@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/react/-/react-6.5.13.tgz#9b02c4515b6c6a13ce92f1bb4869c20c8ae05dfa" integrity sha512-4gO8qihEkVZ8RNm9iQd7G2iZz4rRAHizJ6T5m58Sn21fxfyg9zAMzhgd0JzXuPXR8lTTj4AvRyPv1Qx7b43smg== @@ -3989,7 +4000,7 @@ core-js "^3.6.5" find-up "^4.1.0" -"@storybook/source-loader@6.5.13", "@storybook/source-loader@^6.5.9": +"@storybook/source-loader@6.5.13", "@storybook/source-loader@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/source-loader/-/source-loader-6.5.13.tgz#40e6e42888b8c12b43a505ffa6c6f1f2cebb0b0d" integrity sha512-tHuM8PfeB/0m+JigbaFp+Ld0euFH+fgOObH2W9rjEXy5vnwmaeex/JAdCprv4oL+LcDQEERqNULUUNIvbcTPAg== @@ -4044,7 +4055,7 @@ read-pkg-up "^7.0.1" regenerator-runtime "^0.13.7" -"@storybook/theming@6.5.13", "@storybook/theming@^6.5.9": +"@storybook/theming@6.5.13", "@storybook/theming@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-6.5.13.tgz#3f905eb9f72ddc28d096384290999057987f3083" integrity sha512-oif5NGFAUQhizo50r+ctw2hZNLWV4dPHai+L/gFvbaSeRBeHSNkIcMoZ2FlrO566HdGZTDutYXcR+xus8rI28g== @@ -4074,7 +4085,7 @@ regenerator-runtime "^0.13.7" resolve-from "^5.0.0" -"@storybook/web-components@^6.5.9": +"@storybook/web-components@^6.5.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/web-components/-/web-components-6.5.13.tgz#4556c1884798c773b56e83bb4ef58dff716d713b" integrity sha512-udGRHkM3B6CA99mZJC/9k3Bf4BlaqJ8WjU3VYm0sCeYnwC0SF5YmAXExKwFzxBcKH0Vf/v1R4eMq/keEePnEag== @@ -9985,13 +9996,6 @@ fastq@^1.13.0, fastq@^1.6.0: dependencies: reusify "^1.0.4" -fault@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/fault/-/fault-1.0.4.tgz#eafcfc0a6d214fc94601e170df29954a4f842f13" - integrity sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA== - dependencies: - format "^0.2.0" - fb-watchman@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" @@ -10297,11 +10301,6 @@ form-data@^3.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" -format@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b" - integrity sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww== - formdata-node@^4.3.1: version "4.4.1" resolved "https://registry.yarnpkg.com/formdata-node/-/formdata-node-4.4.1.tgz#23f6a5cb9cb55315912cbec4ff7b0f59bbd191e2" @@ -11659,11 +11658,6 @@ header-case@^2.0.4: capital-case "^1.0.4" tslib "^2.0.3" -highlight.js@^10.4.1, highlight.js@~10.7.0: - version "10.7.3" - resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.7.3.tgz#697272e3991356e40c3cac566a74eef681756531" - integrity sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A== - hosted-git-info@^2.1.4: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" @@ -14250,14 +14244,6 @@ lowercase-keys@^2.0.0: resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== -lowlight@^1.17.0: - version "1.20.0" - resolved "https://registry.yarnpkg.com/lowlight/-/lowlight-1.20.0.tgz#ddb197d33462ad0d93bf19d17b6c301aa3941888" - integrity sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw== - dependencies: - fault "^1.0.0" - highlight.js "~10.7.0" - lru-cache@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.0.0.tgz#b5cbf01556c16966febe54ceec0fb4dc90df6c28" @@ -16716,16 +16702,6 @@ prism-react-renderer@^1.2.1: resolved "https://registry.yarnpkg.com/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz#786bb69aa6f73c32ba1ee813fbe17a0115435085" integrity sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg== -prismjs@^1.27.0: - version "1.29.0" - resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.29.0.tgz#f113555a8fa9b57c35e637bba27509dcf802dd12" - integrity sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q== - -prismjs@~1.27.0: - version "1.27.0" - resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.27.0.tgz#bb6ee3138a0b438a3653dd4d6ce0cc6510a45057" - integrity sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA== - probe-image-size@^7.2.3: version "7.2.3" resolved "https://registry.yarnpkg.com/probe-image-size/-/probe-image-size-7.2.3.tgz#d49c64be540ec8edea538f6f585f65a9b3ab4309" @@ -17193,17 +17169,6 @@ react-sizeme@^3.0.1: shallowequal "^1.1.0" throttle-debounce "^3.0.1" -react-syntax-highlighter@^15.4.5: - version "15.5.0" - resolved "https://registry.yarnpkg.com/react-syntax-highlighter/-/react-syntax-highlighter-15.5.0.tgz#4b3eccc2325fa2ec8eff1e2d6c18fa4a9e07ab20" - integrity sha512-+zq2myprEnQmH5yw6Gqc8lD55QHnpKaU8TOcFeC/Lg/MQSs8UknEA0JC4nTZGFAXC2J2Hyj/ijJ7NlabyPi2gg== - dependencies: - "@babel/runtime" "^7.3.1" - highlight.js "^10.4.1" - lowlight "^1.17.0" - prismjs "^1.27.0" - refractor "^3.6.0" - react@16.14.0: version "16.14.0" resolved "https://registry.yarnpkg.com/react/-/react-16.14.0.tgz#94d776ddd0aaa37da3eda8fc5b6b18a4c9a3114d" @@ -17367,15 +17332,6 @@ redux@4.1.2: dependencies: "@babel/runtime" "^7.9.2" -refractor@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/refractor/-/refractor-3.6.0.tgz#ac318f5a0715ead790fcfb0c71f4dd83d977935a" - integrity sha512-MY9W41IOWxxk31o+YvFCNyNzdkc9M20NoZK5vq6jkv4I/uh2zkWcfudj0Q1fovjUQJrNewS9NMzeTtqPf+n5EA== - dependencies: - hastscript "^6.0.0" - parse-entities "^2.0.0" - prismjs "~1.27.0" - 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" From ba80a3c77306322403796fc03267fa19ba32b4d5 Mon Sep 17 00:00:00 2001 From: Dane Hillard <github@danehillard.com> Date: Wed, 9 Nov 2022 20:46:21 -0500 Subject: [PATCH 8/9] Storybook: add eslint-plugin-storybook and fix issues (#446) * feat(storybook): add eslint-plugin-storybook and fix issues * fix(storybook): remove unused args from story signatures * fix(storybook): remove previously ignored linting issues * fix(storybook): fix missing and erroring React stories - Fix style attributes that were strings instead of objects - Fix misconfigured `docs` meta property --- .eslintrc.js | 11 ++- .storybook/react/preview.js | 1 + package.json | 4 +- .../button/PharosButton.react.stories.jsx | 8 +- .../PharosCheckboxGroup.react.stories.jsx | 10 ++- .../pharos-checkbox-group.wc.stories.jsx | 4 +- .../checkbox/PharosCheckbox.react.stories.jsx | 2 +- .../checkbox/pharos-checkbox.wc.stories.jsx | 6 +- .../combobox/PharosCombobox.react.stories.jsx | 10 +-- .../combobox/pharos-combobox.wc.stories.jsx | 8 +- .../PharosDropdownMenuNav.react.stories.jsx | 2 +- .../pharos-dropdown-menu-nav.wc.stories.jsx | 2 +- .../PharosDropdownMenu.react.stories.jsx | 20 ++--- .../pharos-dropdown-menu.wc.stories.jsx | 20 ++--- .../footer/PharosFooter.react.stories.jsx | 2 +- .../footer/pharos-footer.wc.stories.jsx | 2 +- .../header/PharosHeader.react.stories.jsx | 2 +- .../header/pharos-header.wc.stories.jsx | 2 +- .../icon/PharosIcon.react.stories.jsx | 2 +- .../icon/pharos-icon.wc.stories.jsx | 2 +- .../PharosImageCard.react.stories.jsx | 60 +++++++------- .../pharos-image-card.wc.stories.jsx | 18 ++--- .../PharosInputGroup.react.stories.jsx | 8 +- .../pharos-input-group.wc.stories.jsx | 8 +- .../layout/PharosLayout.react.stories.jsx | 10 +-- .../layout/pharos-layout.wc.stories.jsx | 10 +-- .../link/PharosLink.react.stories.jsx | 12 +-- .../link/pharos-link.wc.stories.jsx | 8 +- .../PharosLoadingSpinner.react.stories.jsx | 6 +- .../pharos-loading-spinner.wc.stories.jsx | 4 +- .../modal/PharosModal.react.stories.jsx | 10 +-- .../modal/pharos-modal.wc.stories.jsx | 6 +- .../PharosPagination.react.stories.jsx | 2 +- .../PharosProgressBar.react.stories.jsx | 2 +- .../PharosRadioButton.react.stories.jsx | 4 +- .../pharos-radio-button.wc.stories.jsx | 4 +- .../PharosRadioGroup.react.stories.jsx | 4 +- .../pharos-radio-group.wc.stories.jsx | 5 +- .../select/PharosSelect.react.stories.jsx | 8 +- .../select/pharos-select.wc.stories.jsx | 8 +- .../sidenav/PharosSidenav.react.stories.jsx | 2 +- .../sidenav/pharos-sidenav.wc.stories.jsx | 2 +- .../tabs/PharosTabs.react.stories.jsx | 10 +-- .../tabs/pharos-tabs.wc.stories.jsx | 8 +- .../PharosTextInput.react.stories.jsx | 6 +- .../pharos-text-input.wc.stories.jsx | 6 +- .../src/components/text-input/storyArgs.ts | 1 - .../textarea/PharosTextarea.react.stories.jsx | 8 +- .../textarea/pharos-textarea.wc.stories.jsx | 6 +- .../toast/PharosToast.react.stories.jsx | 17 ++-- .../toast/pharos-toast.wc.stories.jsx | 10 +-- .../PharosToggleButtonGroup.react.stories.jsx | 6 +- .../pharos-toggle-button-group.wc.stories.jsx | 6 +- .../tooltip/PharosTooltip.react.stories.jsx | 8 +- .../tooltip/pharos-tooltip.wc.stories.jsx | 6 +- .../pages/home/react/home.pages.stories.tsx | 3 +- .../src/pages/home/wc/home.pages.stories.ts | 3 +- .../react/item-detail.pages.stories.tsx | 3 +- .../wc/item-detail.pages.stories.ts | 3 +- .../reports/react/reports.pages.stories.tsx | 3 +- .../pages/reports/wc/reports.pages.stories.ts | 3 +- .../search/react/search.pages.stories.tsx | 3 +- .../pages/search/wc/search.pages.stories.ts | 3 +- .../pharos/src/styles/sass.react.stories.jsx | 6 +- .../pharos/src/styles/sass.wc.stories.jsx | 2 +- .../src/styles/tokens.react.stories.jsx | 20 ++--- .../pharos/src/styles/tokens.wc.stories.jsx | 20 ++--- .../src/styles/typography.react.stories.jsx | 10 +-- yarn.lock | 78 ++++++++++++++++++- 69 files changed, 328 insertions(+), 251 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index b93c15d1e..2aede7af4 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,6 +1,11 @@ module.exports = { ignorePatterns: ['**/*.css.ts'], - extends: ['eslint:recommended', 'plugin:prettier/recommended'], + extends: [ + 'eslint:recommended', + 'plugin:react/recommended', + 'plugin:prettier/recommended', + 'plugin:storybook/recommended', + ], parser: '@babel/eslint-parser', parserOptions: { ecmaVersion: 2020, @@ -8,6 +13,9 @@ module.exports = { ecmaFeatures: { jsx: true, }, + babelOptions: { + presets: ['@babel/preset-react'], + }, }, plugins: ['react', '@typescript-eslint', 'no-smart-quotes'], settings: { @@ -21,6 +29,7 @@ module.exports = { }, rules: { 'no-smart-quotes/no-smart-quotes': 'error', + 'react/react-in-jsx-scope': 'off', }, overrides: [ { diff --git a/.storybook/react/preview.js b/.storybook/react/preview.js index d056a9721..0d0d23800 100644 --- a/.storybook/react/preview.js +++ b/.storybook/react/preview.js @@ -9,6 +9,7 @@ export const parameters = { a11y: a11yConfig, controls: { expanded: true }, docs: { + source: { type: 'dynamic' }, inlineStories: true, theme: theme, components: { diff --git a/package.json b/package.json index 98812048a..52fefdfa1 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "analyze": "yarn workspace @ithaka/pharos analyze", "format": "prettier packages/* --write", "lint": "yarn lint:lit-analyzer && yarn lint:eslint && yarn lint:styles", - "lint:eslint": "eslint 'packages/**/*.{ts,tsx,mdx,js,mjs}'", + "lint:eslint": "eslint 'packages/**/*.{ts,tsx,mdx,js,jsx,mjs}'", "lint:lit-analyzer": "lit-analyzer 'packages/*/src/**/!(*.css|*.test).ts' --strict --rules.no-missing-import off --rules.no-unknown-tag-name off", "lint:styles": "stylelint 'packages/**/*.{scss,css}'", "test": "yarn workspace @ithaka/pharos test", @@ -60,6 +60,7 @@ "@babel/plugin-proposal-export-default-from": "^7.14.5", "@babel/plugin-syntax-import-assertions": "^7.16.7", "@babel/preset-env": "^7.15.6", + "@babel/preset-react": "^7.18.6", "@changesets/changelog-github": "^0.4.1", "@changesets/cli": "^2.18.0", "@commitlint/cli": "^15.0.0", @@ -99,6 +100,7 @@ "eslint-plugin-prettier": "^4.0.0", "eslint-plugin-react": "^7.27.0", "eslint-plugin-react-hooks": "^4.3.0", + "eslint-plugin-storybook": "^0.6.7", "eslint-plugin-wc": "^1.3.2", "husky": "^7.0.0", "lint-staged": "^12.0.2", diff --git a/packages/pharos/src/components/button/PharosButton.react.stories.jsx b/packages/pharos/src/components/button/PharosButton.react.stories.jsx index fa9cf4175..c2db65b73 100644 --- a/packages/pharos/src/components/button/PharosButton.react.stories.jsx +++ b/packages/pharos/src/components/button/PharosButton.react.stories.jsx @@ -54,7 +54,7 @@ export const Base = { }; export const Variants = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -114,7 +114,7 @@ export const Variants = { }; export const Large = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -176,7 +176,7 @@ export const Large = { }; export const WithIcons = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -268,7 +268,7 @@ export const Link = { }; export const Forms = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', diff --git a/packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.jsx b/packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.jsx index e36f86648..1f2dbbf90 100644 --- a/packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.jsx +++ b/packages/pharos/src/components/checkbox-group/PharosCheckboxGroup.react.stories.jsx @@ -3,12 +3,16 @@ import { action } from '@storybook/addon-actions'; import { PharosButton, PharosCheckbox, PharosCheckboxGroup } from '../../react-components'; import createFormData from '../../utils/createFormData'; import { defaultArgs } from './storyArgs'; +import { configureDocsPage } from '@config/docsPageConfig'; export default { title: 'Forms/Checkbox Group', component: PharosCheckboxGroup, subcomponents: { PharosCheckbox }, - options: { selectedPanel: 'addon-controls' }, + parameters: { + docs: { page: configureDocsPage('checkbox') }, + options: { selectedPanel: 'addon-controls' }, + }, }; export const Base = { @@ -35,7 +39,7 @@ export const Base = { }; export const Events = { - render: (_) => ( + render: () => ( <PharosCheckboxGroup onChange={(e) => action('Change')(JSON.stringify(e.target.value))} name="group2" @@ -65,7 +69,7 @@ export const Validity = { }; export const FormData = { - render: (_) => ( + render: () => ( <form name="my-form" action="https://httpbin.org/post" method="POST"> <PharosCheckboxGroup style={{ marginBottom: '0.5rem' }} diff --git a/packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.jsx b/packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.jsx index bed1bc21d..5f4f0c8fb 100644 --- a/packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.jsx +++ b/packages/pharos/src/components/checkbox-group/pharos-checkbox-group.wc.stories.jsx @@ -36,7 +36,7 @@ export const Base = { }; export const Events = { - render: (_) => + render: () => html` <pharos-checkbox-group @change="${(e) => action('Change')(JSON.stringify(e.target.value))}" name="checkbox-group2" @@ -61,7 +61,7 @@ export const Validity = { }; export const FormData = { - render: (_) => + render: () => html` <form name="my-form" action="https://httpbin.org/post" method="POST"> <pharos-checkbox-group @change="${(e) => action('Change')(e.target.value)}" diff --git a/packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.jsx b/packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.jsx index dab4cc103..37b49fc50 100644 --- a/packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.jsx +++ b/packages/pharos/src/components/checkbox/PharosCheckbox.react.stories.jsx @@ -8,7 +8,7 @@ export default { title: 'Forms/Checkbox', component: PharosCheckbox, parameters: { - docs: configureDocsPage('checkbox'), + docs: { page: configureDocsPage('checkbox') }, options: { selectedPanel: 'addon-controls', }, diff --git a/packages/pharos/src/components/checkbox/pharos-checkbox.wc.stories.jsx b/packages/pharos/src/components/checkbox/pharos-checkbox.wc.stories.jsx index c11631b86..212960b5b 100644 --- a/packages/pharos/src/components/checkbox/pharos-checkbox.wc.stories.jsx +++ b/packages/pharos/src/components/checkbox/pharos-checkbox.wc.stories.jsx @@ -30,7 +30,7 @@ export const Base = { }; export const States = { - render: (_) => + render: () => html` <div> <pharos-checkbox name="one"><span slot="label">Normal Checkbox</span></pharos-checkbox> @@ -77,7 +77,7 @@ export const States = { }; export const Events = { - render: (_) => + render: () => html` <pharos-checkbox value="My value" @change="${(e) => action('Change')(e.target.checked)}" @@ -103,7 +103,7 @@ export const Validity = { export const OnBackground = { name: 'On background', - render: (_) => + render: () => html` <div style="background-color: #000000; padding: 1rem;"> <pharos-checkbox name="on-background" on-background> diff --git a/packages/pharos/src/components/combobox/PharosCombobox.react.stories.jsx b/packages/pharos/src/components/combobox/PharosCombobox.react.stories.jsx index b40703c9c..551d57106 100644 --- a/packages/pharos/src/components/combobox/PharosCombobox.react.stories.jsx +++ b/packages/pharos/src/components/combobox/PharosCombobox.react.stories.jsx @@ -76,7 +76,7 @@ export const States = { }; export const Events = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -111,13 +111,13 @@ export const Events = { }; export const SearchMode = { - render: (_) => ( + render: () => ( <PharosCombobox placeholder="Search..." searchMode style={{ display: 'grid', gridTemplateColumns: '300px' }} > - <span slot="label">I'm searching for</span> + <span slot="label">I'm searching for</span> <option value="1">Bulbasaur</option> <option value="2">Charmander</option> <option value="3">Squirtle</option> @@ -136,7 +136,7 @@ export const SearchMode = { export const Validity = { render: (args) => ( - <div style="display: grid; grid-template-columns: 300px;"> + <div style={{ display: 'grid', gridTemplateColumns: '300px' }}> <PharosCombobox name="my-combobox" placeholder="Enter some text" @@ -163,7 +163,7 @@ export const Validity = { }; export const FormData = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', gridTemplateColumns: '300px' }}> <form name="my-form" action="https://httpbin.org/post" method="POST"> <PharosCombobox diff --git a/packages/pharos/src/components/combobox/pharos-combobox.wc.stories.jsx b/packages/pharos/src/components/combobox/pharos-combobox.wc.stories.jsx index 5f15c7fe2..86ebe73a2 100644 --- a/packages/pharos/src/components/combobox/pharos-combobox.wc.stories.jsx +++ b/packages/pharos/src/components/combobox/pharos-combobox.wc.stories.jsx @@ -54,7 +54,7 @@ export const Base = { }; export const States = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 7rem; grid-template-columns: repeat(2, 300px);"> <pharos-combobox name="default"> @@ -92,7 +92,7 @@ export const States = { }; export const Events = { - render: (_) => + render: () => html` <div style="display: grid; grid-template-columns: 300px;"> <pharos-combobox @@ -123,7 +123,7 @@ export const Events = { }; export const SearchMode = { - render: (_) => + render: () => html` <pharos-combobox placeholder="Search..." @@ -168,7 +168,7 @@ export const Validity = { }; export const FormData = { - render: (_) => + render: () => html` <div style="display: grid; grid-template-columns: 300px;"> <form name="my-form" action="https://httpbin.org/post" method="POST"> diff --git a/packages/pharos/src/components/dropdown-menu-nav/PharosDropdownMenuNav.react.stories.jsx b/packages/pharos/src/components/dropdown-menu-nav/PharosDropdownMenuNav.react.stories.jsx index 71cab15c0..70fc02c16 100644 --- a/packages/pharos/src/components/dropdown-menu-nav/PharosDropdownMenuNav.react.stories.jsx +++ b/packages/pharos/src/components/dropdown-menu-nav/PharosDropdownMenuNav.react.stories.jsx @@ -20,7 +20,7 @@ export default { }; export const Base = { - render: (_) => ( + render: () => ( <PharosDropdownMenuNav> <PharosDropdownMenuNavLink href="#" diff --git a/packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.jsx b/packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.jsx index 567d588af..c1cb55897 100644 --- a/packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.jsx +++ b/packages/pharos/src/components/dropdown-menu-nav/pharos-dropdown-menu-nav.wc.stories.jsx @@ -16,7 +16,7 @@ export default { }; export const Base = { - render: (_) => + render: () => html` <pharos-dropdown-menu-nav> <pharos-dropdown-menu-nav-link diff --git a/packages/pharos/src/components/dropdown-menu/PharosDropdownMenu.react.stories.jsx b/packages/pharos/src/components/dropdown-menu/PharosDropdownMenu.react.stories.jsx index e9eada819..03c7162c6 100644 --- a/packages/pharos/src/components/dropdown-menu/PharosDropdownMenu.react.stories.jsx +++ b/packages/pharos/src/components/dropdown-menu/PharosDropdownMenu.react.stories.jsx @@ -22,7 +22,7 @@ export default { }; export const Base = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -42,7 +42,7 @@ export const Base = { }; export const Events = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -72,7 +72,7 @@ export const Events = { }; export const Icons = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -100,7 +100,7 @@ export const Icons = { }; export const Descriptions = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -139,7 +139,7 @@ export const Descriptions = { }; export const FullWidth = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -171,7 +171,7 @@ export const FullWidth = { }; export const Links = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -205,7 +205,7 @@ export const Links = { }; export const MultipleTriggers = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -240,7 +240,7 @@ export const MultipleTriggers = { }; export const MultipleDynamicTriggers = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -287,7 +287,7 @@ export const MultipleDynamicTriggers = { }; export const Composition = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -370,7 +370,7 @@ export const Composition = { }; export const CoordinatingDropdowns = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', diff --git a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.jsx b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.jsx index 20aa450e6..b6a64ccda 100644 --- a/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.jsx +++ b/packages/pharos/src/components/dropdown-menu/pharos-dropdown-menu.wc.stories.jsx @@ -17,7 +17,7 @@ export default { }; export const Base = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> <pharos-button id="my-button" data-dropdown-menu-id="my-menu" icon-right="chevron-down" @@ -34,7 +34,7 @@ export const Base = { }; export const Events = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> <pharos-button @@ -60,7 +60,7 @@ export const Events = { }; export const Icons = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { setTimeout(() => { @@ -89,7 +89,7 @@ export const Icons = { }; export const Descriptions = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { setTimeout(() => { @@ -135,7 +135,7 @@ export const Descriptions = { }; export const FullWidth = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { setTimeout(() => { @@ -170,7 +170,7 @@ export const FullWidth = { }; export const Links = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { setTimeout(() => { @@ -213,7 +213,7 @@ export const Links = { }; export const MultipleTriggers = { - render: (_) => + render: () => html` <div style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" @@ -243,7 +243,7 @@ export const MultipleTriggers = { }; export const MultipleDynamicTriggers = { - render: (_) => + render: () => html` <div style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" @@ -285,7 +285,7 @@ export const MultipleDynamicTriggers = { }; export const Composition = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { setTimeout(() => { @@ -345,7 +345,7 @@ export const Composition = { }; export const CoordinatingDropdowns = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> <pharos-button diff --git a/packages/pharos/src/components/footer/PharosFooter.react.stories.jsx b/packages/pharos/src/components/footer/PharosFooter.react.stories.jsx index 42e372ac8..75cd6fef3 100644 --- a/packages/pharos/src/components/footer/PharosFooter.react.stories.jsx +++ b/packages/pharos/src/components/footer/PharosFooter.react.stories.jsx @@ -12,7 +12,7 @@ export default { }; export const Base = { - render: (_) => <Footer />, + render: () => <Footer />, parameters: { chromatic: { viewports: [320, 1024, 1200] }, }, diff --git a/packages/pharos/src/components/footer/pharos-footer.wc.stories.jsx b/packages/pharos/src/components/footer/pharos-footer.wc.stories.jsx index 7ed530510..d193f9d60 100644 --- a/packages/pharos/src/components/footer/pharos-footer.wc.stories.jsx +++ b/packages/pharos/src/components/footer/pharos-footer.wc.stories.jsx @@ -11,7 +11,7 @@ export default { }; export const Base = { - render: (_) => Footer(), + render: () => Footer(), parameters: { chromatic: { viewports: [320, 1024, 1200] }, }, diff --git a/packages/pharos/src/components/header/PharosHeader.react.stories.jsx b/packages/pharos/src/components/header/PharosHeader.react.stories.jsx index 666fb7a6a..bf778ebb9 100644 --- a/packages/pharos/src/components/header/PharosHeader.react.stories.jsx +++ b/packages/pharos/src/components/header/PharosHeader.react.stories.jsx @@ -21,7 +21,7 @@ export default { }; export const Base = { - render: (_) => ( + render: () => ( <PharosHeader> <div id="pds" slot="top" className="hide-for-small"> <div diff --git a/packages/pharos/src/components/header/pharos-header.wc.stories.jsx b/packages/pharos/src/components/header/pharos-header.wc.stories.jsx index e94b40fe6..fe1931e44 100644 --- a/packages/pharos/src/components/header/pharos-header.wc.stories.jsx +++ b/packages/pharos/src/components/header/pharos-header.wc.stories.jsx @@ -12,7 +12,7 @@ export default { }; export const Base = { - render: (_) => { + render: () => { const accountNav = (section) => html` <pharos-dropdown-menu-nav label="profile"> <pharos-dropdown-menu-nav-link diff --git a/packages/pharos/src/components/icon/PharosIcon.react.stories.jsx b/packages/pharos/src/components/icon/PharosIcon.react.stories.jsx index 0bf73ea1d..b172b59db 100644 --- a/packages/pharos/src/components/icon/PharosIcon.react.stories.jsx +++ b/packages/pharos/src/components/icon/PharosIcon.react.stories.jsx @@ -19,7 +19,7 @@ export const Base = { }; export const Names = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', diff --git a/packages/pharos/src/components/icon/pharos-icon.wc.stories.jsx b/packages/pharos/src/components/icon/pharos-icon.wc.stories.jsx index af271b2ae..8a62c9fa5 100644 --- a/packages/pharos/src/components/icon/pharos-icon.wc.stories.jsx +++ b/packages/pharos/src/components/icon/pharos-icon.wc.stories.jsx @@ -21,7 +21,7 @@ export const Base = { }; export const Names = { - render: (_) => + render: () => html` <div style="display: grid; grid-template-columns: repeat(4, auto); grid-gap: 2rem; margin-top: 2rem; justify-content: space-evenly;" diff --git a/packages/pharos/src/components/image-card/PharosImageCard.react.stories.jsx b/packages/pharos/src/components/image-card/PharosImageCard.react.stories.jsx index 80ed318a6..6fab6261e 100644 --- a/packages/pharos/src/components/image-card/PharosImageCard.react.stories.jsx +++ b/packages/pharos/src/components/image-card/PharosImageCard.react.stories.jsx @@ -56,7 +56,7 @@ const Template = { }; export const Base = { - render: (_) => ( + render: () => ( <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> {items.map((item, index) => { return ( @@ -89,7 +89,7 @@ export const Base = { }; export const WithSourceTypes = { - render: (_) => ( + render: () => ( <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> {items.map((item, index) => { return ( @@ -122,7 +122,7 @@ export const WithSourceTypes = { }; export const Collection = { - render: (_) => ( + render: () => ( <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> {collections.map((collection, index) => { return ( @@ -154,7 +154,7 @@ export const Collection = { }; export const Promotional = { - render: (_) => ( + render: () => ( <PharosLayout style={{ margin: '1rem 0' }}> <div className="image-card-example__card--promotional"> <PharosImageCard title="Bring your work to life with images" link="#" variant="promotional"> @@ -170,14 +170,14 @@ export const Promotional = { }; export const Selectable = { - render: (_) => ( - <PharosLayout tag="ol" style="margin: 1rem 0"> - <li style="grid-column: span 3"> + render: () => ( + <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Selectable" link="#" source-type="Image" variant="selectable"> <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> </PharosImageCard> </li> - <li style="grid-column: span 3"> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Subtle select" link="#" @@ -188,7 +188,7 @@ export const Selectable = { <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> </PharosImageCard> </li> - <li style="grid-column: span 3"> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Selected Disabled" link="#" @@ -200,7 +200,7 @@ export const Selectable = { <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> </PharosImageCard> </li> - <li style="grid-column: span 3"> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Selectable Error State" link="#" @@ -211,7 +211,7 @@ export const Selectable = { <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> </PharosImageCard> </li> - <li style="grid-column: span 3"> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Subtle Select Error State" link="#" @@ -228,9 +228,9 @@ export const Selectable = { }; export const SubtleSelectable = { - render: (_) => ( - <PharosLayout tag="ol" style="margin: 1rem 0"> - <li style="grid-column: span 3"> + render: () => ( + <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Selectable" link="#" @@ -241,7 +241,7 @@ export const SubtleSelectable = { <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> </PharosImageCard> </li> - <li style="grid-column: span 3"> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Subtle select" link="#" @@ -253,7 +253,7 @@ export const SubtleSelectable = { <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> </PharosImageCard> </li> - <li style="grid-column: span 3"> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Selected Disabled" link="#" @@ -266,7 +266,7 @@ export const SubtleSelectable = { <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> </PharosImageCard> </li> - <li style="grid-column: span 3"> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Selectable Error State" link="#" @@ -278,7 +278,7 @@ export const SubtleSelectable = { <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> </PharosImageCard> </li> - <li style="grid-column: span 3"> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Subtle Select Error State" link="#" @@ -320,7 +320,7 @@ export const VisitedTitleLink = { }; export const WithActionMenu = { - render: (_) => ( + render: () => ( <Fragment> <PharosLayout style={{ margin: '1rem 0' }}> <PharosImageCard @@ -359,7 +359,7 @@ export const WithActionMenu = { }; export const WithActionButtonSlot = { - render: (_) => ( + render: () => ( <Fragment> <PharosLayout style={{ margin: '1rem 0' }}> <PharosImageCard @@ -404,16 +404,16 @@ export const WithActionButtonSlot = { }; export const SelectableCollection = { - render: (_) => ( - <PharosLayout tag="ol" style="margin: 1rem 0"> - <li class="image-card-example__card--collection"> + render: () => ( + <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> + <li className="image-card-example__card--collection"> <PharosImageCard title="Selectable" link="#" variant="selectable-collection"> <img src="./images/item-detail/open_collection_1.png" slot="image" /> <strong slot="metadata">50 items</strong> <div slot="metadata">Selections from the global permanent collection.</div> </PharosImageCard> </li> - <li class="image-card-example__card--collection"> + <li className="image-card-example__card--collection"> <PharosImageCard title="Subtle Select" link="#" @@ -425,7 +425,7 @@ export const SelectableCollection = { <div slot="metadata">Selections from the global permanent collection.</div> </PharosImageCard> </li> - <li class="image-card-example__card--collection"> + <li className="image-card-example__card--collection"> <PharosImageCard title="Selected Disabled" link="#" @@ -443,14 +443,14 @@ export const SelectableCollection = { }; export const Disabled = { - render: (_) => ( - <PharosLayout tag="ol" style="margin: 1rem 0"> - <li style="grid-column: span 3"> + render: () => ( + <PharosLayout tag="ol" style={{ margin: '1rem 0' }}> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Disabled" link="#" source-type="Image" disabled="true"> <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> </PharosImageCard> </li> - <li style="grid-column: span 3"> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Selectable Disabled" link="#" @@ -461,7 +461,7 @@ export const Disabled = { <img src="./images/item-detail/collection_5.png" alt="Card Title" slot="image" /> </PharosImageCard> </li> - <li style="grid-column: span 3"> + <li style={{ gridColumn: 'span 3' }}> <PharosImageCard title="Selected Disabled" link="#" diff --git a/packages/pharos/src/components/image-card/pharos-image-card.wc.stories.jsx b/packages/pharos/src/components/image-card/pharos-image-card.wc.stories.jsx index 8b255cfc8..57985b838 100644 --- a/packages/pharos/src/components/image-card/pharos-image-card.wc.stories.jsx +++ b/packages/pharos/src/components/image-card/pharos-image-card.wc.stories.jsx @@ -41,7 +41,7 @@ const Template = { }; export const Base = { - render: (_) => + render: () => html` <pharos-layout tag="ol" style="margin: 1rem 0"> ${items.map((item, index) => { return html` <li style="grid-column: span 2"> @@ -67,7 +67,7 @@ export const Base = { }; export const WithSourceTypes = { - render: (_) => + render: () => html` <pharos-layout tag="ol" style="margin: 1rem 0"> ${items.map((item, index) => { return html` <li style="grid-column: span 2"> @@ -93,7 +93,7 @@ export const WithSourceTypes = { }; export const Collection = { - render: (_) => + render: () => html` <pharos-layout tag="ol" style="margin: 1rem 0"> ${collections.map((collection, index) => { return html` <li class="image-card-example__card--collection"> @@ -120,7 +120,7 @@ export const Collection = { }; export const Promotional = { - render: (_) => + render: () => html` <pharos-layout style="margin: 1rem 0"> <div class="image-card-example__card--promotional"> <pharos-image-card @@ -139,7 +139,7 @@ export const Promotional = { }; export const Selectable = { - render: (_) => + render: () => html` <pharos-layout tag="ol" style="margin: 1rem 0"> <li style="grid-column: span 3"> <pharos-image-card title="Selectable" link="#" source-type="Image" variant="selectable"> @@ -287,7 +287,7 @@ export const VisitedTitleLink = { }; export const WithActionMenu = { - render: (_) => + render: () => html` <pharos-layout style="margin: 1rem 0"> <pharos-image-card @@ -321,7 +321,7 @@ export const WithActionMenu = { }; export const WithActionButtonSlot = { - render: (_) => + render: () => html` <pharos-layout style="margin: 1rem 0"> <pharos-image-card @@ -361,7 +361,7 @@ export const WithActionButtonSlot = { }; export const SelectableCollection = { - render: (_) => + render: () => html` <pharos-layout tag="ol" style="margin: 1rem 0"> <li class="image-card-example__card--collection"> <pharos-image-card title="Selectable" link="#" variant="selectable-collection"> @@ -399,7 +399,7 @@ export const SelectableCollection = { }; export const Disabled = { - render: (_) => + render: () => html` <pharos-layout tag="ol" style="margin: 1rem 0"> <li style="grid-column: span 3"> <pharos-image-card title="Disabled" link="#" source-type="Image" disabled="true"> diff --git a/packages/pharos/src/components/input-group/PharosInputGroup.react.stories.jsx b/packages/pharos/src/components/input-group/PharosInputGroup.react.stories.jsx index 24e44f853..cd1479ba1 100644 --- a/packages/pharos/src/components/input-group/PharosInputGroup.react.stories.jsx +++ b/packages/pharos/src/components/input-group/PharosInputGroup.react.stories.jsx @@ -16,7 +16,7 @@ export default { }; export const Base = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -38,7 +38,7 @@ export const Base = { }; export const Prominent = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -60,7 +60,7 @@ export const Prominent = { }; export const Validity = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -91,7 +91,7 @@ export const Validity = { }; export const Composition = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', diff --git a/packages/pharos/src/components/input-group/pharos-input-group.wc.stories.jsx b/packages/pharos/src/components/input-group/pharos-input-group.wc.stories.jsx index a94e93eca..dba8970cc 100644 --- a/packages/pharos/src/components/input-group/pharos-input-group.wc.stories.jsx +++ b/packages/pharos/src/components/input-group/pharos-input-group.wc.stories.jsx @@ -12,7 +12,7 @@ export default { }; export const Base = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 524px;"> <pharos-input-group name="my-input-group"> @@ -29,7 +29,7 @@ export const Base = { }; export const Prominent = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 524px;"> <pharos-input-group name="my-input-group" variant="prominent"> @@ -87,7 +87,7 @@ export const Prominent = { }; export const Validity = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 524px;"> <pharos-input-group invalidated value="not an email" name="my-input-group"> @@ -113,7 +113,7 @@ export const Validity = { }; export const Composition = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 524px;"> <pharos-input-group name="my-input-group-icon"> diff --git a/packages/pharos/src/components/layout/PharosLayout.react.stories.jsx b/packages/pharos/src/components/layout/PharosLayout.react.stories.jsx index fa421ad08..00e2edc01 100644 --- a/packages/pharos/src/components/layout/PharosLayout.react.stories.jsx +++ b/packages/pharos/src/components/layout/PharosLayout.react.stories.jsx @@ -53,12 +53,12 @@ const _gridColumns = () => { export const OneColumn = { name: 'One column', - render: (_) => <PharosLayout>{_gridColumns()}</PharosLayout>, + render: () => <PharosLayout>{_gridColumns()}</PharosLayout>, }; export const OneColumnWithSidenav = { name: 'One column with sidenav', - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -81,7 +81,7 @@ export const OneColumnWithSidenav = { export const OneColumnWithSidenavAndComfySpacing = { name: 'One column with sidenav and comfy spacing', - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -104,7 +104,7 @@ export const OneColumnWithSidenavAndComfySpacing = { export const TwoColumn = { name: 'Two column', - render: (_) => ( + render: () => ( <Fragment> <PharosLayout preset="2-col"> <div className="layout-example__container--first"></div> @@ -120,7 +120,7 @@ export const TwoColumn = { export const ColumnLayouts = { name: 'Column layouts', - render: (_) => ( + render: () => ( <PharosLayout style={{ margin: '1rem 0' }}> {_gridItems([1, 2, 3, 4, 6])} {_comboItems([7, 8, 9, 10])} diff --git a/packages/pharos/src/components/layout/pharos-layout.wc.stories.jsx b/packages/pharos/src/components/layout/pharos-layout.wc.stories.jsx index a77c83d5d..5462c88aa 100644 --- a/packages/pharos/src/components/layout/pharos-layout.wc.stories.jsx +++ b/packages/pharos/src/components/layout/pharos-layout.wc.stories.jsx @@ -53,12 +53,12 @@ const _gridColumns = () => { export const OneColumn = { name: 'One column', - render: (_) => html` <pharos-layout>${_gridColumns()}</pharos-layout> `, + render: () => html` <pharos-layout>${_gridColumns()}</pharos-layout> `, }; export const OneColumnWithSidenav = { name: 'One column with sidenav', - render: (_) => + render: () => html` <div style="display: grid; grid-template-areas: 'sidenav main'; grid-template-columns: max-content 1fr" @@ -77,7 +77,7 @@ export const OneColumnWithSidenav = { export const OneColumnWithSidenavAndComfySpacing = { name: 'One column with sidenav and comfy spacing', - render: (_) => + render: () => html` <div style="display: grid; grid-template-areas: 'sidenav main'; grid-template-columns: max-content 1fr" @@ -96,7 +96,7 @@ export const OneColumnWithSidenavAndComfySpacing = { export const TwoColumn = { name: 'Two column', - render: (_) => + render: () => html` <pharos-layout preset="2-col"> <div class="layout-example__container--first"></div> @@ -111,7 +111,7 @@ export const TwoColumn = { export const ColumnLayouts = { name: 'Column layouts', - render: (_) => + render: () => html` <pharos-layout style="margin: 1rem 0"> ${_gridItems([1, 2, 3, 4, 6])} ${_comboItems([7, 8, 9, 10])} diff --git a/packages/pharos/src/components/link/PharosLink.react.stories.jsx b/packages/pharos/src/components/link/PharosLink.react.stories.jsx index 92732af4e..59d9f6635 100644 --- a/packages/pharos/src/components/link/PharosLink.react.stories.jsx +++ b/packages/pharos/src/components/link/PharosLink.react.stories.jsx @@ -1,6 +1,6 @@ import { Fragment } from 'react'; -import { PharosLink } from '../../react-components'; +import { PharosLink, PharosHeading } from '../../react-components'; import { configureDocsPage } from '@config/docsPageConfig'; import { defaultArgs } from './storyArgs'; @@ -13,7 +13,7 @@ export default { }; export const Base = { - render: (_) => ( + render: (args) => ( <PharosLink bold={args.bold} download={args.download} @@ -38,7 +38,7 @@ export const Base = { }; export const VisitedLink = { - render: (_) => ( + render: () => ( <div style={{ marginBottom: '1rem' }}> <PharosLink href="https://www.google.com" target="_blank" indicateVisited> Visited link @@ -48,7 +48,7 @@ export const VisitedLink = { }; export const VisitedLinkHeading = { - render: (_) => ( + render: () => ( <div style={{ marginBottom: '1rem' }}> <PharosLink href="https://www.google.com" target="_blank" indicateVisited> <PharosHeading level="1"> Visited link heading </PharosHeading> @@ -58,7 +58,7 @@ export const VisitedLinkHeading = { }; export const Button = { - render: (_) => ( + render: () => ( <Fragment> <div style={{ marginBottom: '1rem' }}> <PharosLink name="primary" primary> @@ -81,7 +81,7 @@ export const Button = { }; export const Variants = { - render: (_) => ( + render: () => ( <Fragment> <div style={{ marginBottom: '1rem' }}> <PharosLink name="primary" href="#"> diff --git a/packages/pharos/src/components/link/pharos-link.wc.stories.jsx b/packages/pharos/src/components/link/pharos-link.wc.stories.jsx index ee287866e..2b69118e1 100644 --- a/packages/pharos/src/components/link/pharos-link.wc.stories.jsx +++ b/packages/pharos/src/components/link/pharos-link.wc.stories.jsx @@ -39,7 +39,7 @@ export const Base = { }; export const VisitedLink = { - render: (_) => + render: () => html` <div style="margin-bottom: 1rem"> <pharos-link href="https://www.google.com" target="_blank" indicate-visited @@ -50,7 +50,7 @@ export const VisitedLink = { }; export const VisitedLinkHeading = { - render: (_) => + render: () => html` <div style="margin-bottom: 1rem"> <pharos-link href="https://www.google.com" target="_blank" indicate-visited> @@ -61,7 +61,7 @@ export const VisitedLinkHeading = { }; export const Button = { - render: (_) => + render: () => html` <div style="margin-bottom: 1rem"> <pharos-link name="primary">I am a button</pharos-link> @@ -73,7 +73,7 @@ export const Button = { }; export const Variants = { - render: (_) => + render: () => html` <div style="margin-bottom: 1rem"> <pharos-link name="primary" href="#">Primary link</pharos-link> diff --git a/packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.jsx b/packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.jsx index d2ed69b1c..f103d06da 100644 --- a/packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.jsx +++ b/packages/pharos/src/components/loading-spinner/PharosLoadingSpinner.react.stories.jsx @@ -13,19 +13,19 @@ export default { }; export const Base = { - render: (_) => ( + render: () => ( <div> <PharosLoadingSpinner></PharosLoadingSpinner> <PharosHeading level={1} preset={'5'}> Loading spinner demonstration </PharosHeading> - <PharosButton onClick={() => action('Click')('Clicked')}>Can't press me!</PharosButton> + <PharosButton onClick={() => action('Click')('Clicked')}>Can't press me!</PharosButton> </div> ), }; export const Scoped = { - render: (_) => ( + render: () => ( <div style={{ height: '5rem', diff --git a/packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.jsx b/packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.jsx index 1e9451537..dba78e3ef 100644 --- a/packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.jsx +++ b/packages/pharos/src/components/loading-spinner/pharos-loading-spinner.wc.stories.jsx @@ -14,7 +14,7 @@ export default { }; export const Base = { - render: (_) => + render: () => html` <pharos-loading-spinner></pharos-loading-spinner> <pharos-heading level="1" preset="5">Loading spinner demonstration</pharos-heading> @@ -23,7 +23,7 @@ export const Base = { }; export const Scoped = { - render: (_) => + render: () => html` <div style="height: 5rem; width: 5rem; border: 1px solid black; position: relative;"> <pharos-loading-spinner></pharos-loading-spinner> diff --git a/packages/pharos/src/components/modal/PharosModal.react.stories.jsx b/packages/pharos/src/components/modal/PharosModal.react.stories.jsx index 955465adc..2672c3e80 100644 --- a/packages/pharos/src/components/modal/PharosModal.react.stories.jsx +++ b/packages/pharos/src/components/modal/PharosModal.react.stories.jsx @@ -53,7 +53,7 @@ export const Base = { }; export const NoFooter = { - render: (_) => ( + render: () => ( <Fragment> <PharosButton type="button" @@ -72,7 +72,7 @@ export const NoFooter = { }; export const Events = { - render: (_) => ( + render: () => ( <Fragment> <PharosButton type="button" @@ -115,7 +115,7 @@ export const Events = { }; export const Composition = { - render: (_) => ( + render: () => ( <Fragment> <PharosButton type="button" @@ -129,8 +129,8 @@ export const Composition = { <PharosModal id="my-alert-modal" header="Add external link" open> <div style={{ maxWidth: '36rem' }}> <PharosAlert status="error"> - We're sorry, we experienced an issue submitting your report. Please try again. If the - issue persists, contact + We're sorry, we experienced an issue submitting your report. Please try again. If + the issue persists, contact <PharosLink id="support-link" href="#"> support@jstor.org </PharosLink> diff --git a/packages/pharos/src/components/modal/pharos-modal.wc.stories.jsx b/packages/pharos/src/components/modal/pharos-modal.wc.stories.jsx index e2dffc507..987e807d7 100644 --- a/packages/pharos/src/components/modal/pharos-modal.wc.stories.jsx +++ b/packages/pharos/src/components/modal/pharos-modal.wc.stories.jsx @@ -53,7 +53,7 @@ export const Base = { }; export const NoFooter = { - render: (_) => + render: () => html` <pharos-button @click="${(e) => { @@ -71,7 +71,7 @@ export const NoFooter = { }; export const Events = { - render: (_) => + render: () => html` <pharos-button type="button" @@ -111,7 +111,7 @@ export const Events = { }; export const Composition = { - render: (_) => + render: () => html` <pharos-button type="button" diff --git a/packages/pharos/src/components/pagination/PharosPagination.react.stories.jsx b/packages/pharos/src/components/pagination/PharosPagination.react.stories.jsx index 4dd423c01..e7d4f51ea 100644 --- a/packages/pharos/src/components/pagination/PharosPagination.react.stories.jsx +++ b/packages/pharos/src/components/pagination/PharosPagination.react.stories.jsx @@ -14,7 +14,7 @@ export default { }; export const Base = { - render: (_) => ( + render: (args) => ( <PharosPagination totalResults={args.totalResults} pageSize={args.pageSize} diff --git a/packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.jsx b/packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.jsx index a93b798cb..7417ac007 100644 --- a/packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.jsx +++ b/packages/pharos/src/components/progress-bar/PharosProgressBar.react.stories.jsx @@ -13,7 +13,7 @@ export default { }; export const Base = { - render: (_) => ( + render: (args) => ( <PharosProgressBar value={args.value}> <div slot="title">{args.title}</div> <div slot="description">{args.description}</div> diff --git a/packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.jsx b/packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.jsx index 0c4b800a9..99cddbb33 100644 --- a/packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.jsx +++ b/packages/pharos/src/components/radio-button/PharosRadioButton.react.stories.jsx @@ -30,7 +30,7 @@ export const Base = { }; export const States = { - render: (_) => ( + render: () => ( <Fragment> <div> <div> @@ -79,7 +79,7 @@ export const States = { }; export const Events = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', diff --git a/packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.jsx b/packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.jsx index f01c25111..00568e76d 100644 --- a/packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.jsx +++ b/packages/pharos/src/components/radio-button/pharos-radio-button.wc.stories.jsx @@ -30,7 +30,7 @@ export const Base = { }; export const States = { - render: (_) => + render: () => html` <div> <pharos-radio-button name="base"><span slot="label">Default Radio Button</span></pharos-radio-button> @@ -68,7 +68,7 @@ export const States = { }; export const Events = { - render: (_) => + render: () => html` <pharos-radio-button value="My value" diff --git a/packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.jsx b/packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.jsx index 883ac164a..76393ab6e 100644 --- a/packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.jsx +++ b/packages/pharos/src/components/radio-group/PharosRadioGroup.react.stories.jsx @@ -46,7 +46,7 @@ export const Base = { }; export const Events = { - render: (_) => ( + render: () => ( <PharosRadioGroup onChange={(e) => action('Change')(e.target.value)} name="group2"> <span slot="legend">Radio Group Header</span> <PharosRadioButton value="1"> @@ -74,7 +74,7 @@ export const Validity = { }; export const FormData = { - render: (_) => ( + render: () => ( <form name="my-form" action="https://httpbin.org/post" method="POST"> <PharosRadioGroup style={{ marginBottom: '0.5rem' }} diff --git a/packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.jsx b/packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.jsx index 28f02ac7e..b9fac579d 100644 --- a/packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.jsx +++ b/packages/pharos/src/components/radio-group/pharos-radio-group.wc.stories.jsx @@ -1,4 +1,3 @@ -import { Story, Canvas, Meta, ArgsTable } from '@storybook/addon-docs'; import { html } from 'lit'; import { action } from '@storybook/addon-actions'; @@ -48,7 +47,7 @@ export const Base = { }; export const Events = { - render: (_) => + render: () => html` <pharos-radio-group @change="${(e) => action('Change')(e.target.value)}" name="radio-group2" @@ -74,7 +73,7 @@ export const Validity = { }; export const FormData = { - render: (_) => + render: () => html` <form name="my-form" action="https://httpbin.org/post" method="POST"> <pharos-radio-group diff --git a/packages/pharos/src/components/select/PharosSelect.react.stories.jsx b/packages/pharos/src/components/select/PharosSelect.react.stories.jsx index 454f78fc8..70f969ac3 100644 --- a/packages/pharos/src/components/select/PharosSelect.react.stories.jsx +++ b/packages/pharos/src/components/select/PharosSelect.react.stories.jsx @@ -38,7 +38,7 @@ export const Base = { }; export const States = { - render: (_) => ( + render: () => ( <Fragment> <PharosSelect> <span slot="label">Normal Select</span> @@ -61,7 +61,7 @@ export const States = { export const WithOptionGroups = { name: 'With option groups', - render: (_) => ( + render: () => ( <PharosSelect> <span slot="label">Normal Select</span> <optgroup label="Group 1"> @@ -77,7 +77,7 @@ export const WithOptionGroups = { }; export const Events = { - render: (_) => ( + render: () => ( <PharosSelect onChange={(e) => action('Change')(e.target.value)}> <span slot="label">Normal Select</span> <option value="1">Option 1 (Value is 1)</option> @@ -98,7 +98,7 @@ export const Validity = { }; export const FormData = { - render: (_) => ( + render: () => ( <form name="my-form" action="https://httpbin.org/post" method="POST"> <PharosSelect name="my-select" required style={{ marginBottom: '0.5rem' }}> <span slot="label">Select Demo</span> diff --git a/packages/pharos/src/components/select/pharos-select.wc.stories.jsx b/packages/pharos/src/components/select/pharos-select.wc.stories.jsx index bf565f80e..3f92ffa5e 100644 --- a/packages/pharos/src/components/select/pharos-select.wc.stories.jsx +++ b/packages/pharos/src/components/select/pharos-select.wc.stories.jsx @@ -37,7 +37,7 @@ export const Base = { }; export const States = { - render: (_) => + render: () => html` <pharos-select> <span slot="label">Normal Select</span> @@ -59,7 +59,7 @@ export const States = { export const WithOptionGroups = { name: 'With option groups', - render: (_) => + render: () => html` <pharos-select> <span slot="label">Normal Select</span> @@ -76,7 +76,7 @@ export const WithOptionGroups = { }; export const Events = { - render: (_) => + render: () => html` <pharos-select @change="${(e) => action('Change')(e.target.value)}"> <span slot="label">Normal Select</span> @@ -98,7 +98,7 @@ export const Validity = { }; export const FormData = { - render: (_) => + render: () => html` <form name="my-form" action="https://httpbin.org/post" method="POST"> <pharos-select name="my-select" required style="margin-bottom: 0.5rem;"> diff --git a/packages/pharos/src/components/sidenav/PharosSidenav.react.stories.jsx b/packages/pharos/src/components/sidenav/PharosSidenav.react.stories.jsx index 8c5eed9bc..db085b4b0 100644 --- a/packages/pharos/src/components/sidenav/PharosSidenav.react.stories.jsx +++ b/packages/pharos/src/components/sidenav/PharosSidenav.react.stories.jsx @@ -27,7 +27,7 @@ export default { }; export const Base = { - render: (_) => ( + render: () => ( <Fragment> <PharosSidenavButton /> <PharosSidenav> diff --git a/packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.jsx b/packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.jsx index 871ff5ff7..a10cdbb6a 100644 --- a/packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.jsx +++ b/packages/pharos/src/components/sidenav/pharos-sidenav.wc.stories.jsx @@ -17,7 +17,7 @@ export default { }; export const Base = { - render: (_) => + render: () => html` <pharos-sidenav-button></pharos-sidenav-button> <pharos-sidenav> diff --git a/packages/pharos/src/components/tabs/PharosTabs.react.stories.jsx b/packages/pharos/src/components/tabs/PharosTabs.react.stories.jsx index 26d7c61d4..c13e8ef26 100644 --- a/packages/pharos/src/components/tabs/PharosTabs.react.stories.jsx +++ b/packages/pharos/src/components/tabs/PharosTabs.react.stories.jsx @@ -14,7 +14,7 @@ export default { }; export const Base = { - render: (_) => ( + render: () => ( <PharosTabs> <PharosTab id="tab-1" data-panel-id="panel-1"> Tab 1 @@ -39,7 +39,7 @@ export const Base = { }; export const Events = { - render: (_) => ( + render: () => ( <PharosTabs onPharos-Tab-Selected={(e) => action('Select')(e.target.id)}> <PharosTab id="tab-1" data-panel-id="panel-1"> Tab 1 @@ -65,7 +65,7 @@ export const Events = { }; export const PanelOrder = { - render: (_) => ( + render: () => ( <PharosTabs> <PharosTab id="tab-1" data-panel-id="panel-1"> Tab 1 @@ -90,8 +90,8 @@ export const PanelOrder = { }; export const PanelSeparator = { - render: (_) => ( - <PharosTabs panel-separator style="width: 100%"> + render: () => ( + <PharosTabs panelSeparator style={{ width: '100%' }}> <PharosTab id="tab-1" data-panel-id="panel-1"> Tab 1 </PharosTab> diff --git a/packages/pharos/src/components/tabs/pharos-tabs.wc.stories.jsx b/packages/pharos/src/components/tabs/pharos-tabs.wc.stories.jsx index 3d126474c..73deb7fb3 100644 --- a/packages/pharos/src/components/tabs/pharos-tabs.wc.stories.jsx +++ b/packages/pharos/src/components/tabs/pharos-tabs.wc.stories.jsx @@ -14,7 +14,7 @@ export default { }; export const Base = { - render: (_) => + render: () => html` <pharos-tabs> <pharos-tab id="tab-1" data-panel-id="panel-1">Tab 1</pharos-tab> @@ -28,7 +28,7 @@ export const Base = { }; export const Events = { - render: (_) => + render: () => html` <pharos-tabs @pharos-tab-selected="${(e) => action('Selected')(e.target.id)}"> <pharos-tab id="tab-1" data-panel-id="panel-1">Tab 1</pharos-tab> @@ -43,7 +43,7 @@ export const Events = { }; export const PanelOrder = { - render: (_) => + render: () => html` <pharos-tabs> <pharos-tab id="tab-1" data-panel-id="panel-1">Tab 1</pharos-tab> @@ -63,7 +63,7 @@ export const PanelOrder = { }; export const PanelSeparator = { - render: (_) => + render: () => html` <pharos-tabs panel-separator style="width: 100%"> <pharos-tab id="tab-1" data-panel-id="panel-1">Tab 1</pharos-tab> diff --git a/packages/pharos/src/components/text-input/PharosTextInput.react.stories.jsx b/packages/pharos/src/components/text-input/PharosTextInput.react.stories.jsx index 438c63da3..8bb4b62b3 100644 --- a/packages/pharos/src/components/text-input/PharosTextInput.react.stories.jsx +++ b/packages/pharos/src/components/text-input/PharosTextInput.react.stories.jsx @@ -45,7 +45,7 @@ export const Base = { }; export const States = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -82,7 +82,7 @@ export const States = { }; export const Events = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -151,7 +151,7 @@ export const CustomErrorMessage = { }; export const FormData = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', diff --git a/packages/pharos/src/components/text-input/pharos-text-input.wc.stories.jsx b/packages/pharos/src/components/text-input/pharos-text-input.wc.stories.jsx index be4099b2b..72f28a32c 100644 --- a/packages/pharos/src/components/text-input/pharos-text-input.wc.stories.jsx +++ b/packages/pharos/src/components/text-input/pharos-text-input.wc.stories.jsx @@ -41,7 +41,7 @@ export const Base = { }; export const States = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: repeat(2, 300px); 1rem 300px" @@ -73,7 +73,7 @@ export const States = { }; export const Events = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> <pharos-text-input @@ -132,7 +132,7 @@ export const CustomErrorMessage = { }; export const FormData = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 300px;"> <form name="my-form" action="https://httpbin.org/post" method="POST"> diff --git a/packages/pharos/src/components/text-input/storyArgs.ts b/packages/pharos/src/components/text-input/storyArgs.ts index b440da87e..24553d12a 100644 --- a/packages/pharos/src/components/text-input/storyArgs.ts +++ b/packages/pharos/src/components/text-input/storyArgs.ts @@ -21,6 +21,5 @@ export const argTypes = { control: { type: 'inline-radio', }, - defaultValue: 'text', }, }; diff --git a/packages/pharos/src/components/textarea/PharosTextarea.react.stories.jsx b/packages/pharos/src/components/textarea/PharosTextarea.react.stories.jsx index ccd09919a..c6d0709aa 100644 --- a/packages/pharos/src/components/textarea/PharosTextarea.react.stories.jsx +++ b/packages/pharos/src/components/textarea/PharosTextarea.react.stories.jsx @@ -46,7 +46,7 @@ export const Base = { }; export const States = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', gridGap: '1rem', gridTemplateColumns: 'repeat(2, 250px)' }}> <PharosTextarea> <span slot="label">Empty textarea</span> @@ -71,7 +71,7 @@ export const States = { }; export const Events = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -105,7 +105,7 @@ export const Validity = { }; export const CustomErrorMessage = { - render: (_) => ( + render: (args) => ( <div style={{ display: 'grid', @@ -137,7 +137,7 @@ export const CustomErrorMessage = { }; export const FormData = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', diff --git a/packages/pharos/src/components/textarea/pharos-textarea.wc.stories.jsx b/packages/pharos/src/components/textarea/pharos-textarea.wc.stories.jsx index e69fd27ee..613b62834 100644 --- a/packages/pharos/src/components/textarea/pharos-textarea.wc.stories.jsx +++ b/packages/pharos/src/components/textarea/pharos-textarea.wc.stories.jsx @@ -42,7 +42,7 @@ export const Base = { }; export const States = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: repeat(2, 250px);"> <pharos-textarea name="default"><span slot="label">Empty textarea</span></pharos-textarea> @@ -66,7 +66,7 @@ export const States = { }; export const Events = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 250px;"> <pharos-textarea @@ -122,7 +122,7 @@ export const CustomErrorMessage = { }; export const FormData = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 1rem; grid-template-columns: 350px;"> <form name="my-form" action="https://httpbin.org/post" method="POST"> diff --git a/packages/pharos/src/components/toast/PharosToast.react.stories.jsx b/packages/pharos/src/components/toast/PharosToast.react.stories.jsx index d33ce5955..2f3e1ce97 100644 --- a/packages/pharos/src/components/toast/PharosToast.react.stories.jsx +++ b/packages/pharos/src/components/toast/PharosToast.react.stories.jsx @@ -1,7 +1,6 @@ import { useEffect } from 'react'; -// eslint-disable-next-line no-unused-vars -import { PharosToast, PharosToaster, PharosButton, PharosLink } from '../../react-components'; +import { PharosToast, PharosToaster, PharosButton } from '../../react-components'; import { configureDocsPage } from '@config/docsPageConfig'; export default { @@ -15,7 +14,7 @@ export default { }; export const Base = { - render: (_) => ( + render: () => ( <> <PharosButton id="success-toast-button" @@ -23,7 +22,7 @@ export const Base = { const event = new CustomEvent('pharos-toast-open', { detail: { content: - 'The item has moved to your <PharosLink href="#" onBackground bold>Workspace</PharosLink>.', + 'The item has moved to your <pharos-link href="#" on-background bold>Workspace</pharos-link>.', }, }); document.dispatchEvent(event); @@ -37,7 +36,7 @@ export const Base = { }; export const Error = { - render: (_) => ( + render: () => ( <> <PharosButton id="error-toast-button" @@ -46,7 +45,7 @@ export const Error = { detail: { status: 'error', content: - 'Sorry, we were unable to move the item. Please try again later. If the issue persists, <PharosLink href="#" onBackground bold>contact JSTOR Support</PharosLink>.', + 'Sorry, we were unable to move the item. Please try again later. If the issue persists, <pharos-link href="#" on-background bold>contact JSTOR Support</pharos-link>.', }, }); document.dispatchEvent(event); @@ -60,7 +59,7 @@ export const Error = { }; export const LongContent = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { setTimeout(() => { @@ -92,7 +91,7 @@ export const LongContent = { }; export const Info = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { document.querySelector('#info-toast-button').click(); @@ -122,7 +121,7 @@ export const Info = { }; export const UpdateableToast = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { document.querySelector('#info-toast-button').click(); diff --git a/packages/pharos/src/components/toast/pharos-toast.wc.stories.jsx b/packages/pharos/src/components/toast/pharos-toast.wc.stories.jsx index 5556903f9..5d7092626 100644 --- a/packages/pharos/src/components/toast/pharos-toast.wc.stories.jsx +++ b/packages/pharos/src/components/toast/pharos-toast.wc.stories.jsx @@ -15,7 +15,7 @@ export default { }; export const Base = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { document.querySelector('#success-toast-button').click(); @@ -44,7 +44,7 @@ export const Base = { }; export const Error = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { document.querySelector('#error-toast-button').click(); @@ -73,7 +73,7 @@ export const Error = { }; export const LongContent = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { setTimeout(() => { @@ -104,7 +104,7 @@ export const LongContent = { }; export const Info = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { document.querySelector('#info-toast-button').click(); @@ -132,7 +132,7 @@ export const Info = { }; export const UpdateableToast = { - render: (_) => { + render: () => { const effect = () => { useEffect(() => { document.querySelector('#info-toast-button').click(); diff --git a/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.jsx b/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.jsx index bc5648b6b..02034b49d 100644 --- a/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.jsx +++ b/packages/pharos/src/components/toggle-button-group/PharosToggleButtonGroup.react.stories.jsx @@ -14,7 +14,7 @@ export default { }; export const Base = { - render: (_) => ( + render: () => ( <> <PharosToggleButtonGroup> <PharosToggleButton @@ -63,7 +63,7 @@ export const Base = { }; export const Events = { - render: (_) => ( + render: () => ( <PharosToggleButtonGroup onPharos-Toggle-Button-Selected={(e) => action('Select')(e.target.id)}> <PharosToggleButton id="list-mode-button" selected icon-left="view-list"> List @@ -77,7 +77,7 @@ export const Events = { }; export const IconsOnly = { - render: (_) => ( + render: () => ( <PharosToggleButtonGroup> <PharosToggleButton icon="view-list" id="view-list-button"> List diff --git a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.jsx b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.jsx index fcbd17fa0..2bc638780 100644 --- a/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.jsx +++ b/packages/pharos/src/components/toggle-button-group/pharos-toggle-button-group.wc.stories.jsx @@ -14,7 +14,7 @@ export default { }; export const Base = { - render: (_) => + render: () => html` <pharos-toggle-button-group> <pharos-toggle-button @@ -56,7 +56,7 @@ export const Base = { }; export const Events = { - render: (_) => + render: () => html` <pharos-toggle-button-group @pharos-toggle-button-selected="${(e) => action('Selected')(e.target.id)}" @@ -72,7 +72,7 @@ export const Events = { }; export const IconsOnly = { - render: (_) => + render: () => html` <pharos-toggle-button-group> <pharos-toggle-button icon="view-list" id="view-list-button"></pharos-toggle-button diff --git a/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.jsx b/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.jsx index 92757df87..acf67b90e 100644 --- a/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.jsx +++ b/packages/pharos/src/components/tooltip/PharosTooltip.react.stories.jsx @@ -65,7 +65,7 @@ export const Placement = { }; export const DismissBehavior = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -109,7 +109,7 @@ export const FullWidth = { }; export const MultipleTriggers = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -130,7 +130,7 @@ export const MultipleTriggers = { }; export const CustomBoundary = { - render: (_) => ( + render: () => ( <div style={{ display: 'grid', @@ -147,7 +147,7 @@ export const CustomBoundary = { <PharosDropdownMenuItem>Menu item 2</PharosDropdownMenuItem> <PharosDropdownMenuItem data-tooltip-id="my-tooltip">Hover on Me</PharosDropdownMenuItem> <PharosTooltip id="my-tooltip" boundary="my-menu"> - this is a very long tooltip but I stay in the dropdown menu's boundary!!! + this is a very long tooltip but I stay in the dropdown menu's boundary!!! </PharosTooltip> </PharosDropdownMenu> </div> diff --git a/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.jsx b/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.jsx index d7f50e686..48675dc87 100644 --- a/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.jsx +++ b/packages/pharos/src/components/tooltip/pharos-tooltip.wc.stories.jsx @@ -55,7 +55,7 @@ export const Placement = { }; export const DismissBehavior = { - render: (_) => + render: () => html` <div style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" @@ -94,7 +94,7 @@ export const FullWidth = { }; export const MultipleTriggers = { - render: (_) => + render: () => html` <div style="display: grid; grid-template-columns: repeat(3, auto); grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;" @@ -108,7 +108,7 @@ export const MultipleTriggers = { }; export const CustomBoundary = { - render: (_) => + render: () => html` <div style="display: grid; grid-gap: 8rem; margin-top: 5rem; justify-content: space-evenly;"> <pharos-button id="my-button" data-dropdown-menu-id="my-menu" icon-right="chevron-down" diff --git a/packages/pharos/src/pages/home/react/home.pages.stories.tsx b/packages/pharos/src/pages/home/react/home.pages.stories.tsx index 84eae0200..467cf894f 100644 --- a/packages/pharos/src/pages/home/react/home.pages.stories.tsx +++ b/packages/pharos/src/pages/home/react/home.pages.stories.tsx @@ -22,8 +22,7 @@ export default { } as Meta; export const Home = { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - render: (_: object) => ( + render: () => ( <div className="home-page__container"> <HeaderRevised /> <main> diff --git a/packages/pharos/src/pages/home/wc/home.pages.stories.ts b/packages/pharos/src/pages/home/wc/home.pages.stories.ts index fa7bc60e4..80892162e 100644 --- a/packages/pharos/src/pages/home/wc/home.pages.stories.ts +++ b/packages/pharos/src/pages/home/wc/home.pages.stories.ts @@ -22,8 +22,7 @@ export default { }; export const Home = { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - render: (_: object): TemplateResult => html` + render: (): TemplateResult => html` <div class="home-page__container"> ${HeaderRevised()} <main> diff --git a/packages/pharos/src/pages/item-detail/react/item-detail.pages.stories.tsx b/packages/pharos/src/pages/item-detail/react/item-detail.pages.stories.tsx index 26557e51e..d105b4781 100644 --- a/packages/pharos/src/pages/item-detail/react/item-detail.pages.stories.tsx +++ b/packages/pharos/src/pages/item-detail/react/item-detail.pages.stories.tsx @@ -21,8 +21,7 @@ export default { } as Meta; export const ItemDetail = { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - render: (_: object) => ( + render: () => ( <div className="item-detail-page__container"> <HeaderRevised showSearch={true} /> <main> diff --git a/packages/pharos/src/pages/item-detail/wc/item-detail.pages.stories.ts b/packages/pharos/src/pages/item-detail/wc/item-detail.pages.stories.ts index 07e69d01e..544d22630 100644 --- a/packages/pharos/src/pages/item-detail/wc/item-detail.pages.stories.ts +++ b/packages/pharos/src/pages/item-detail/wc/item-detail.pages.stories.ts @@ -21,8 +21,7 @@ export default { }; export const ItemDetail = { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - render: (_: object): TemplateResult => html` + render: (): TemplateResult => html` <div class="item-detail-page__container"> ${HeaderRevised(true)} <main> diff --git a/packages/pharos/src/pages/reports/react/reports.pages.stories.tsx b/packages/pharos/src/pages/reports/react/reports.pages.stories.tsx index 462382f78..dba33a325 100644 --- a/packages/pharos/src/pages/reports/react/reports.pages.stories.tsx +++ b/packages/pharos/src/pages/reports/react/reports.pages.stories.tsx @@ -30,8 +30,7 @@ export default { } as Meta; export const Reports = { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - render: (_: object) => ( + render: () => ( <> <div className="reports-page__container"> <Sidenav /> diff --git a/packages/pharos/src/pages/reports/wc/reports.pages.stories.ts b/packages/pharos/src/pages/reports/wc/reports.pages.stories.ts index 855b49cf6..3e00a6124 100644 --- a/packages/pharos/src/pages/reports/wc/reports.pages.stories.ts +++ b/packages/pharos/src/pages/reports/wc/reports.pages.stories.ts @@ -20,8 +20,7 @@ export default { }; export const Reports = { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - render: (_: object): TemplateResult => html` + render: (): TemplateResult => html` <div class="reports-page__container"> ${Sidenav()} <main id="main-content"> diff --git a/packages/pharos/src/pages/search/react/search.pages.stories.tsx b/packages/pharos/src/pages/search/react/search.pages.stories.tsx index fa778639b..24e23fe8d 100644 --- a/packages/pharos/src/pages/search/react/search.pages.stories.tsx +++ b/packages/pharos/src/pages/search/react/search.pages.stories.tsx @@ -15,8 +15,7 @@ export default { } as Meta; export const Search = { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - render: (_: object) => ( + render: () => ( <div className="search-page__container"> <Header /> <main className="search-page__container--main-content"> diff --git a/packages/pharos/src/pages/search/wc/search.pages.stories.ts b/packages/pharos/src/pages/search/wc/search.pages.stories.ts index 1e00de3a6..c18669489 100644 --- a/packages/pharos/src/pages/search/wc/search.pages.stories.ts +++ b/packages/pharos/src/pages/search/wc/search.pages.stories.ts @@ -17,8 +17,7 @@ export default { }; export const Search = { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - render: (_: object): TemplateResult => html` + render: (): TemplateResult => html` <div class="search-page__container"> ${Header()} <main class="search-page__container--main-content"> diff --git a/packages/pharos/src/styles/sass.react.stories.jsx b/packages/pharos/src/styles/sass.react.stories.jsx index 5f6a7e2ce..4ab598ebb 100644 --- a/packages/pharos/src/styles/sass.react.stories.jsx +++ b/packages/pharos/src/styles/sass.react.stories.jsx @@ -5,14 +5,14 @@ export default { parameters: { options: { selectedPanel: 'addon-controls' } }, }; -export const tableTitle = (title) => { +const tableTitle = (title) => { return title .split('-') .map((str) => str[0].toUpperCase() + str.slice(1)) .join(' '); }; -export const MixinTable = (title) => { +const MixinTable = (title) => { const mixins = sassDoc.filter((value) => value.context.type === 'mixin'); return ( <div className="token-table-container" style={{ width: '100%' }}> @@ -70,7 +70,7 @@ export const MixinTable = (title) => { }; export const Mixins = { - render: (_) => ( + render: () => ( <> {MixinTable('buttons')} {MixinTable('form-elements')} {MixinTable('interaction')} {MixinTable('layout')} {MixinTable('links')} {MixinTable('typography')} diff --git a/packages/pharos/src/styles/sass.wc.stories.jsx b/packages/pharos/src/styles/sass.wc.stories.jsx index e3c01dfe8..755cc257a 100644 --- a/packages/pharos/src/styles/sass.wc.stories.jsx +++ b/packages/pharos/src/styles/sass.wc.stories.jsx @@ -62,7 +62,7 @@ const MixinTable = (title) => { }; export const Mixins = { - render: (_) => html` + render: () => html` ${MixinTable('buttons')} ${MixinTable('form-elements')} ${MixinTable('interaction')} ${MixinTable('layout')} ${MixinTable('links')} ${MixinTable('typography')} `, diff --git a/packages/pharos/src/styles/tokens.react.stories.jsx b/packages/pharos/src/styles/tokens.react.stories.jsx index 42155276b..ec7b56319 100644 --- a/packages/pharos/src/styles/tokens.react.stories.jsx +++ b/packages/pharos/src/styles/tokens.react.stories.jsx @@ -117,7 +117,7 @@ const UiColorTokens = () => ( ); export const AliasColors = { - render: (_) => UiColorTokens(), + render: () => UiColorTokens(), }; const GlobalColorTokens = () => { @@ -227,7 +227,7 @@ const GlobalColorTokens = () => { }; export const GlobalColors = { - render: (_) => GlobalColorTokens(), + render: () => GlobalColorTokens(), }; const FontFamilyTokens = () => ( @@ -276,7 +276,7 @@ const FontFamilyTokens = () => ( ); export const FontFamily = { - render: (_) => FontFamilyTokens(), + render: () => FontFamilyTokens(), }; const FontWeightTokens = () => ( @@ -323,7 +323,7 @@ const FontWeightTokens = () => ( ); export const FontWeight = { - render: (_) => FontWeightTokens(), + render: () => FontWeightTokens(), }; const FontSizeTokens = () => { @@ -372,7 +372,7 @@ const FontSizeTokens = () => { }; export const FontSize = { - render: (_) => FontSizeTokens(), + render: () => FontSizeTokens(), }; const LineHeightToken = () => { @@ -428,7 +428,7 @@ const LineHeightToken = () => { }; export const LineHeight = { - render: (_) => LineHeightToken(), + render: () => LineHeightToken(), }; const SpacingTokens = () => ( @@ -464,7 +464,7 @@ const SpacingTokens = () => ( ); export const Spacing = { - render: (_) => SpacingTokens(), + render: () => SpacingTokens(), }; const RadiusTokens = () => ( @@ -501,7 +501,7 @@ const RadiusTokens = () => ( ); export const Radius = { - render: (_) => RadiusTokens(), + render: () => RadiusTokens(), }; const TransitionRow = (transition, widthRem, color) => { @@ -566,7 +566,7 @@ const TransitionTokens = () => { }; export const Transitions = { - render: (_) => TransitionTokens(), + render: () => TransitionTokens(), }; const TypeTokens = () => ( @@ -627,5 +627,5 @@ const TypeTokens = () => ( ); export const TypeScale = { - render: (_) => TypeTokens(), + render: () => TypeTokens(), }; diff --git a/packages/pharos/src/styles/tokens.wc.stories.jsx b/packages/pharos/src/styles/tokens.wc.stories.jsx index fde0a2efe..4edc302f8 100644 --- a/packages/pharos/src/styles/tokens.wc.stories.jsx +++ b/packages/pharos/src/styles/tokens.wc.stories.jsx @@ -113,7 +113,7 @@ const UiColorTokens = () => html` `; export const AliasColors = { - render: (_) => UiColorTokens(), + render: () => UiColorTokens(), }; const GlobalColorTokens = () => { @@ -221,7 +221,7 @@ const GlobalColorTokens = () => { }; export const GlobalColors = { - render: (_) => GlobalColorTokens(), + render: () => GlobalColorTokens(), }; const FontFamilyTokens = () => html` @@ -264,7 +264,7 @@ const FontFamilyTokens = () => html` `; export const FontFamily = { - render: (_) => FontFamilyTokens(), + render: () => FontFamilyTokens(), }; const FontWeightTokens = () => html` @@ -302,7 +302,7 @@ const FontWeightTokens = () => html` `; export const FontWeight = { - render: (_) => FontWeightTokens(), + render: () => FontWeightTokens(), }; const FontSizeTokens = () => { @@ -347,7 +347,7 @@ const FontSizeTokens = () => { }; export const FontSize = { - render: (_) => FontSizeTokens(), + render: () => FontSizeTokens(), }; const LineHeightToken = () => { @@ -396,7 +396,7 @@ const LineHeightToken = () => { }; export const LineHeight = { - render: (_) => LineHeightToken(), + render: () => LineHeightToken(), }; const SpacingTokens = () => html` @@ -430,7 +430,7 @@ const SpacingTokens = () => html` `; export const Spacing = { - render: (_) => SpacingTokens(), + render: () => SpacingTokens(), }; const RadiusTokens = () => html` @@ -465,7 +465,7 @@ const RadiusTokens = () => html` `; export const Radius = { - render: (_) => RadiusTokens(), + render: () => RadiusTokens(), }; const TransitionRow = (transition, widthRem, color) => { @@ -517,7 +517,7 @@ const TransitionTokens = () => { }; export const Transitions = { - render: (_) => TransitionTokens(), + render: () => TransitionTokens(), }; const TypeTokens = () => html` @@ -571,5 +571,5 @@ const TypeTokens = () => html` `; export const TypeScale = { - render: (_) => TypeTokens(), + render: () => TypeTokens(), }; diff --git a/packages/pharos/src/styles/typography.react.stories.jsx b/packages/pharos/src/styles/typography.react.stories.jsx index a4b09e2cd..4a041ad6a 100644 --- a/packages/pharos/src/styles/typography.react.stories.jsx +++ b/packages/pharos/src/styles/typography.react.stories.jsx @@ -88,20 +88,20 @@ export const Tables = { }; export const OrderedList = { - render: (_) => <ol>{list}</ol>, + render: () => <ol>{list}</ol>, }; export const UnorderedList = { - render: (_) => <ul>{list}</ul>, + render: () => <ul>{list}</ul>, }; export const ListWithoutBullets = { name: 'List without Bullets', - render: (_) => <ul className="list-example__no-bullets">{list}</ul>, + render: () => <ul className="list-example__no-bullets">{list}</ul>, }; export const NestedLists = { - render: (_) => ( + render: () => ( <ul className="list-example__nested"> <li> Item 1 @@ -120,5 +120,5 @@ export const NestedLists = { }; export const InlineList = { - render: (_) => <ul className="list-example__inline">{list}</ul>, + render: () => <ul className="list-example__inline">{list}</ul>, }; diff --git a/yarn.lock b/yarn.lock index ae4199cce..2143b6186 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1101,7 +1101,7 @@ "@babel/types" "^7.4.4" esutils "^2.0.2" -"@babel/preset-react@^7.12.10", "@babel/preset-react@^7.14.0": +"@babel/preset-react@^7.12.10", "@babel/preset-react@^7.14.0", "@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== @@ -3778,6 +3778,13 @@ 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.13": version "6.5.13" resolved "https://registry.yarnpkg.com/@storybook/docs-tools/-/docs-tools-6.5.13.tgz#00c7041ac7bc827d12731face909351a5af0cb3f" @@ -4957,6 +4964,13 @@ eslint-scope "^5.1.1" eslint-utils "^3.0.0" +"@typescript-eslint/experimental-utils@^5.3.0": + version "5.42.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.42.1.tgz#755695d8f1b45dff7b5626cb48f33542227a3471" + integrity sha512-qona75z2MLpeZADEuCet5Pwvh1g/0cWScEEDy43chuUPc4klgDiwz5hLFk5dHcjFEETSYQHRPYiiHKW24EMPjw== + dependencies: + "@typescript-eslint/utils" "5.42.1" + "@typescript-eslint/parser@^4.33.0", "@typescript-eslint/parser@^5.41.0": version "5.41.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.41.0.tgz#0414a6405007e463dc527b459af1f19430382d67" @@ -4983,6 +4997,14 @@ "@typescript-eslint/types" "5.41.0" "@typescript-eslint/visitor-keys" "5.41.0" +"@typescript-eslint/scope-manager@5.42.1": + version "5.42.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.42.1.tgz#05e5e1351485637d466464237e5259b49f609b18" + integrity sha512-QAZY/CBP1Emx4rzxurgqj3rUinfsh/6mvuKbLNMfJMMKYLRBfweus8brgXF8f64ABkIZ3zdj2/rYYtF8eiuksQ== + dependencies: + "@typescript-eslint/types" "5.42.1" + "@typescript-eslint/visitor-keys" "5.42.1" + "@typescript-eslint/type-utils@5.41.0": version "5.41.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.41.0.tgz#2371601171e9f26a4e6da918a7913f7266890cdf" @@ -5003,6 +5025,11 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.41.0.tgz#6800abebc4e6abaf24cdf220fb4ce28f4ab09a85" integrity sha512-5BejraMXMC+2UjefDvrH0Fo/eLwZRV6859SXRg+FgbhA0R0l6lDqDGAQYhKbXhPN2ofk2kY5sgGyLNL907UXpA== +"@typescript-eslint/types@5.42.1": + version "5.42.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.42.1.tgz#0d4283c30e9b70d2aa2391c36294413de9106df2" + integrity sha512-Qrco9dsFF5lhalz+lLFtxs3ui1/YfC6NdXu+RAGBa8uSfn01cjO7ssCsjIsUs484vny9Xm699FSKwpkCcqwWwA== + "@typescript-eslint/typescript-estree@4.33.0": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz#0dfb51c2908f68c5c08d82aefeaf166a17c24609" @@ -5029,6 +5056,19 @@ semver "^7.3.7" tsutils "^3.21.0" +"@typescript-eslint/typescript-estree@5.42.1": + version "5.42.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.42.1.tgz#f9a223ecb547a781d37e07a5ac6ba9ff681eaef0" + integrity sha512-qElc0bDOuO0B8wDhhW4mYVgi/LZL+igPwXtV87n69/kYC/7NG3MES0jHxJNCr4EP7kY1XVsRy8C/u3DYeTKQmw== + dependencies: + "@typescript-eslint/types" "5.42.1" + "@typescript-eslint/visitor-keys" "5.42.1" + 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.41.0": version "5.41.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.41.0.tgz#f41ae5883994a249d00b2ce69f4188f3a23fa0f9" @@ -5043,6 +5083,20 @@ eslint-utils "^3.0.0" semver "^7.3.7" +"@typescript-eslint/utils@5.42.1": + version "5.42.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.42.1.tgz#2789b1cd990f0c07aaa3e462dbe0f18d736d5071" + integrity sha512-Gxvf12xSp3iYZd/fLqiQRD4uKZjDNR01bQ+j8zvhPjpsZ4HmvEFL/tC4amGNyxN9Rq+iqvpHLhlqx6KTxz9ZyQ== + dependencies: + "@types/json-schema" "^7.0.9" + "@types/semver" "^7.3.12" + "@typescript-eslint/scope-manager" "5.42.1" + "@typescript-eslint/types" "5.42.1" + "@typescript-eslint/typescript-estree" "5.42.1" + eslint-scope "^5.1.1" + eslint-utils "^3.0.0" + semver "^7.3.7" + "@typescript-eslint/visitor-keys@4.33.0": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz#2a22f77a41604289b7a186586e9ec48ca92ef1dd" @@ -5059,6 +5113,14 @@ "@typescript-eslint/types" "5.41.0" eslint-visitor-keys "^3.3.0" +"@typescript-eslint/visitor-keys@5.42.1": + version "5.42.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.42.1.tgz#df10839adf6605e1cdb79174cf21e46df9be4872" + integrity sha512-LOQtSF4z+hejmpUvitPlc4hA7ERGoj2BVkesOcG91HCn8edLGUXbTrErmutmPbl8Bo9HjAvOO/zBKQHExXNA2A== + dependencies: + "@typescript-eslint/types" "5.42.1" + eslint-visitor-keys "^3.3.0" + "@vercel/webpack-asset-relocator-loader@^1.7.0": version "1.7.3" resolved "https://registry.yarnpkg.com/@vercel/webpack-asset-relocator-loader/-/webpack-asset-relocator-loader-1.7.3.tgz#e65ca1fd9feb045039788f9b4710e5acc84b01b0" @@ -9458,6 +9520,16 @@ eslint-plugin-react@^7.27.0, eslint-plugin-react@^7.30.1: semver "^6.3.0" string.prototype.matchall "^4.0.7" +eslint-plugin-storybook@^0.6.7: + version "0.6.7" + resolved "https://registry.yarnpkg.com/eslint-plugin-storybook/-/eslint-plugin-storybook-0.6.7.tgz#85e81f4d5d7af541d6abe5657f4f8b8dfb69b83e" + integrity sha512-lcUsB+3PesKWXwwEHGSTCijKWDXuQ4ITVbnsSDMXRCR/cjGtHZIEcy2pp/Eh7nfWA/GZrDPpK97DsTWEzyN6Bw== + dependencies: + "@storybook/csf" "^0.0.1" + "@typescript-eslint/experimental-utils" "^5.3.0" + requireindex "^1.1.0" + ts-dedent "^2.2.0" + eslint-plugin-wc@^1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/eslint-plugin-wc/-/eslint-plugin-wc-1.3.2.tgz#8e3785221851c4c226f6a5411f566b1bd7de33f3" @@ -17734,7 +17806,7 @@ require-package-name@^2.0.1: resolved "https://registry.yarnpkg.com/require-package-name/-/require-package-name-2.0.1.tgz#c11e97276b65b8e2923f75dabf5fb2ef0c3841b9" integrity sha512-uuoJ1hU/k6M0779t3VMVIYpb2VMJk05cehCaABFhXaibcbvfgR8wKiozLjVFSzJPmQMRqIcO0HMyTFqfV09V6Q== -requireindex@^1.2.0: +requireindex@^1.1.0, requireindex@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/requireindex/-/requireindex-1.2.0.tgz#3463cdb22ee151902635aa6c9535d4de9c2ef1ef" integrity sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww== @@ -19737,7 +19809,7 @@ trough@^1.0.0: resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-2.2.1.tgz#c5bf04a5bbec3fd118be4084461b3a27c4d796bf" integrity sha512-0z3j8R7MCjy10kc/g+qg7Ln3alJTodw9aDuVWZa3uiWqfuBMKeAeP2ocWcxoyM3D73yz3Jt/Pu4qPr4wHSdB/Q== -ts-dedent@^2.0.0: +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== From 50e665dbdb0a19c50df68b99e266f2fd7bb5aedd Mon Sep 17 00:00:00 2001 From: Dane Hillard <github@danehillard.com> Date: Thu, 10 Nov 2022 17:51:23 -0500 Subject: [PATCH 9/9] Tabs: fix initial tab selection in more cases (#449) * fix(tabs): fix initial tab selection in more cases The design flaw in tabs was letting each individual tab manage its own state when clicked. This created issues with state management centralization and reasoning. This change instead moves the job of state management to the Tabs component, which coordinates the individual Tab and TabPanel components it contains. This results in smoother management and, ultimately, a more correct implementation. * chore: add changeset * fix(tabs): only trigger event when selected prop changes * refactor(tabs): shorten ternary logic --- .changeset/violet-tigers-perform.md | 5 + .../src/components/tabs/pharos-tab.test.ts | 6 -- .../pharos/src/components/tabs/pharos-tab.ts | 17 ++-- .../src/components/tabs/pharos-tabs.test.ts | 3 + .../pharos/src/components/tabs/pharos-tabs.ts | 94 ++++++++----------- 5 files changed, 60 insertions(+), 65 deletions(-) create mode 100644 .changeset/violet-tigers-perform.md diff --git a/.changeset/violet-tigers-perform.md b/.changeset/violet-tigers-perform.md new file mode 100644 index 000000000..bf9475ecb --- /dev/null +++ b/.changeset/violet-tigers-perform.md @@ -0,0 +1,5 @@ +--- +'@ithaka/pharos': patch +--- + +Fix initial tab selection in more use cases diff --git a/packages/pharos/src/components/tabs/pharos-tab.test.ts b/packages/pharos/src/components/tabs/pharos-tab.test.ts index c111279da..d47e0f9c4 100644 --- a/packages/pharos/src/components/tabs/pharos-tab.test.ts +++ b/packages/pharos/src/components/tabs/pharos-tab.test.ts @@ -22,12 +22,6 @@ describe('pharos-tab', () => { await expect(component).to.be.accessible(); }); - it('updates selected state when clicked', async () => { - component.click(); - await component.updateComplete; - expect(component.selected).to.be.true; - }); - it('fires a custom event pharos-tab-selected when clicked', async () => { let selected = null; const handleSelected = (e: Event): void => { diff --git a/packages/pharos/src/components/tabs/pharos-tab.ts b/packages/pharos/src/components/tabs/pharos-tab.ts index 18f5548b5..bc2e452ac 100644 --- a/packages/pharos/src/components/tabs/pharos-tab.ts +++ b/packages/pharos/src/components/tabs/pharos-tab.ts @@ -45,20 +45,25 @@ export class PharosTab extends PharosElement { this._focused = this.selected; this.setAttribute('aria-selected', this.selected ? 'true' : 'false'); if (this.selected) { - const details = { - bubbles: true, - composed: true, - }; - this.dispatchEvent(new CustomEvent('pharos-tab-selected', details)); + this._triggerSelectedEvent(); } } + if (changedProperties.has('_focused')) { this.setAttribute('tabindex', this._focused ? '0' : '-1'); } } + private _triggerSelectedEvent() { + const details = { + bubbles: true, + composed: true, + }; + this.dispatchEvent(new CustomEvent('pharos-tab-selected', details)); + } + private _handleClick(): void { - this.selected = true; + this._triggerSelectedEvent(); } protected override render(): TemplateResult { diff --git a/packages/pharos/src/components/tabs/pharos-tabs.test.ts b/packages/pharos/src/components/tabs/pharos-tabs.test.ts index be9290006..487e643cf 100644 --- a/packages/pharos/src/components/tabs/pharos-tabs.test.ts +++ b/packages/pharos/src/components/tabs/pharos-tabs.test.ts @@ -81,6 +81,9 @@ describe('pharos-tabs', () => { componentLastTabSelected.querySelectorAll(`pharos-tab-panel`) ) as PharosTabPanel[]; + await Promise.all(Array.from(tabs).map((tab) => tab.updateComplete)); + await Promise.all(Array.from(panels).map((panel) => panel.updateComplete)); + expect(tabs[0].selected).to.be.false; expect(tabs[1].selected).to.be.false; expect(tabs[2].selected).to.be.true; diff --git a/packages/pharos/src/components/tabs/pharos-tabs.ts b/packages/pharos/src/components/tabs/pharos-tabs.ts index 582e16f07..fc9d9536d 100644 --- a/packages/pharos/src/components/tabs/pharos-tabs.ts +++ b/packages/pharos/src/components/tabs/pharos-tabs.ts @@ -1,12 +1,15 @@ import { PharosElement } from '../base/pharos-element'; import { html } from 'lit'; import type { TemplateResult, CSSResultArray } from 'lit'; -import { property } from 'lit/decorators.js'; +import { property, queryAssignedElements } from 'lit/decorators.js'; import { tabsStyles } from './pharos-tabs.css'; import type { PharosTab } from './pharos-tab'; import type { PharosTabPanel } from './pharos-tab-panel'; +const _allTabsSelector = '[data-pharos-component="PharosTab"]'; +const _allTabPanelsSelector = '[data-pharos-component="PharosTabPanel"]'; + /** * Pharos tabs component. * @@ -24,40 +27,35 @@ export class PharosTabs extends PharosElement { @property({ type: Boolean, reflect: true, attribute: 'panel-separator' }) public panelSeparator = false; + @queryAssignedElements({ selector: _allTabsSelector }) + private _tabs!: NodeListOf<PharosTab>; + public static override get styles(): CSSResultArray { return [tabsStyles]; } - protected override firstUpdated(): void { - this.addEventListener('pharos-tab-selected', this._handleTabSelected); + protected override async firstUpdated(): Promise<void> { + this.addEventListener('pharos-tab-selected', (e) => + this._handleTabSelected(e.target as PharosTab) + ); this.addEventListener('keydown', this._handleKeydown); this.addEventListener('focusout', this._handleFocusout); - const tabs: NodeListOf<PharosTab> = this.querySelectorAll( - `[data-pharos-component="PharosTab"]` - ); - - tabs.forEach((tab) => { + for (const tab of this._tabs) { const panel = this._queryPanelByTab(tab); - tab.setAttribute('aria-controls', panel?.id || ''); panel?.setAttribute('aria-labelledby', tab.id); - }); + await tab.updateComplete; + await panel?.updateComplete; + } - this._selectInitialTab(tabs); + this._selectInitialTab(); } - private _selectInitialTab(tabs: NodeListOf<PharosTab>): void { - const selected: PharosTab | null = this.querySelector( - `[data-pharos-component="PharosTab"][selected]` - ), - selectedTab: PharosTab = selected ? selected : tabs[0], - selectedPanel: PharosTabPanel | null = this._queryPanelByTab(selectedTab); - - selectedTab.selected = true; - if (selectedPanel) { - selectedPanel.selected = true; - } + private _selectInitialTab(): void { + const selected: PharosTab | null = this.querySelector(`${_allTabsSelector}[selected]`); + const selectedTab: PharosTab = selected || this._tabs[0]; + this._handleTabSelected(selectedTab); } private _queryPanelByTab(tab: PharosTab): PharosTabPanel | null { @@ -66,28 +64,29 @@ export class PharosTabs extends PharosElement { return this.querySelector(`#${panelId}`); } - private _handleTabSelected(event: Event): void { - const selected = event.target as PharosTab; - const previous: PharosTab | null = this.querySelector( - `[data-pharos-component="PharosTab"][selected]:not([id="${selected.id}"])` + private _handleTabSelected(selectedTab: PharosTab): void { + selectedTab.selected = true; + + const previousTab: PharosTab | null = this.querySelector( + `${_allTabsSelector}[selected]:not([id="${selectedTab.id}"])` ); - if (previous) { - previous.selected = false; - const panel: PharosTabPanel | null = this.querySelector( - `[data-pharos-component="PharosTabPanel"][id="${previous.getAttribute('aria-controls')}"]` + if (previousTab && previousTab != selectedTab) { + previousTab.selected = false; + const previousPanel: PharosTabPanel | null = this.querySelector( + `${_allTabPanelsSelector}[id="${previousTab.getAttribute('aria-controls')}"]` ); - if (panel) { - panel.selected = false; + if (previousPanel) { + previousPanel.selected = false; } } - const panel: PharosTabPanel | null = this.querySelector( - `[data-pharos-component="PharosTabPanel"][id="${selected.getAttribute('aria-controls')}"]` + const selectedPanel: PharosTabPanel | null = this.querySelector( + `${_allTabPanelsSelector}[id="${selectedTab.getAttribute('aria-controls')}"]` ); - if (panel) { - panel.selected = true; + if (selectedPanel) { + selectedPanel.selected = true; } } @@ -113,13 +112,11 @@ export class PharosTabs extends PharosElement { } private async _handleArrowKeys(moveForward: boolean): Promise<void> { - const tabs: PharosTab[] = Array.prototype.slice.call( - this.querySelectorAll(`[data-pharos-component="PharosTab"]`) - ); + const tabs: PharosTab[] = Array.prototype.slice.call(this._tabs); const ids = tabs.map((tab) => tab.id); const focused = document.activeElement as PharosTab; - if (!focused.matches('[data-pharos-component="PharosTab"]')) { + if (!focused.matches(_allTabsSelector)) { return; } @@ -145,21 +142,12 @@ export class PharosTabs extends PharosElement { } private _handleFocusout(event: FocusEvent): void { - if ( - event.relatedTarget && - (event.relatedTarget as Element).matches('[data-pharos-component="PharosTab"]') - ) { + if (event.relatedTarget && (event.relatedTarget as Element).matches(_allTabsSelector)) { return; } - const tabs: NodeListOf<PharosTab> = this.querySelectorAll( - `[data-pharos-component="PharosTab"]` - ); - tabs.forEach((tab) => { - if (tab.hasAttribute('selected')) { - tab['_focused'] = true; - } else { - tab['_focused'] = false; - } + + this._tabs.forEach((tab) => { + tab['_focused'] = tab.hasAttribute('selected'); }); } private _renderPanelSeparator() {