diff --git a/.deployignore b/.deployignore
deleted file mode 100644
index 29039ea66..000000000
--- a/.deployignore
+++ /dev/null
@@ -1,31 +0,0 @@
-.DS_Store
-*.zip
-tags
-composer.lock
-vendor
-node_modules
-npm-debug.log
-
-# IDEs
-.idea
-.vscode
-
-# Directories and files that we do not want to be included with the built
-# version and deployed to WordPress.org.
-.babelrc
-.editorconfig
-.eslintignore
-.eslintrc.json
-.github
-.travis.yml
-assets/js/pluginsidebar
-assets/js/util
-bin
-composer.json
-package.json
-package-lock.json
-phpcs.xml.dist
-phpunit.xml.dist
-README.md
-tests
-webpack.config.js
diff --git a/.editorconfig b/.editorconfig
deleted file mode 100644
index 7e4af6942..000000000
--- a/.editorconfig
+++ /dev/null
@@ -1,21 +0,0 @@
-root = true
-
-# For all files:
-# - UTF-8
-# - Unix newlines
-# - Insert new line at the end
-# - trim whitespace at end of lines
-# - Use 2 spaces for indentation
-[*]
-charset = utf-8
-end_of_line = lf
-insert_final_newline = true
-trim_trailing_whitespace = true
-tab_style = space
-indent_size = 2
-
-# For PHP files only:
-# - Use tabs (following WordPress conventions) for indentation
-# - Show tab width as 2 spaces (inherit from indent_size)
-[*.php]
-indent_style = tab
diff --git a/.eslintrc.json b/.eslintrc.json
deleted file mode 100644
index 118471156..000000000
--- a/.eslintrc.json
+++ /dev/null
@@ -1,29 +0,0 @@
-{
- "env": {
- "browser": true,
- "es2021": true,
- "jest": true,
- "node": true
- },
- "extends": ["airbnb", "airbnb/hooks"],
- "ignorePatterns": [
- "!assets/js",
- "assets/js/*",
- "!assets/js/components",
- "!assets/js/config",
- "!assets/js/pluginsidebar",
- "!assets/js/services",
- "!assets/js/util",
- "build",
- "vendor"
- ],
- "parser": "@babel/eslint-parser",
- "parserOptions": {
- "ecmaFeatures": {
- "globalReturn": true,
- "impliedStrict": true,
- "jsx": true
- },
- "sourceType": "module"
- }
-}
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
deleted file mode 100644
index 804636ebb..000000000
--- a/.github/workflows/build.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-on:
- push:
- tags:
- - 'v*.*.*' # Push events to matching v* (eg. v2.0.8)
- - '!*-built' # Exclude built branches (eg. v2.0.8-built)
-
-name: Trigger Build
-
-jobs:
- build:
- name: Trigger Build
- runs-on: ubuntu-latest
-
- steps:
- - name: 'curl to build server'
- shell: bash
- env:
- URL: ${{ secrets.DB_BUILD_URL }}
- TOKEN: ${{ secrets.DB_BUILD_SECRET }}
- ENV_ID: ${{ secrets.DB_BUILD_ENV }}
- run: |
- curl -s "$URL" \
- -X POST \
- -H "X-Api-Token: $TOKEN" \
- -d "{\"environment_id\":${ENV_ID},\"deploy_from_scratch\":true,\"trigger_notifications\":true,\"comment\":\"Build Trigger from GitHub Actions\"}"
diff --git a/.github/workflows/linting.yml b/.github/workflows/linting.yml
deleted file mode 100644
index 37dde86c3..000000000
--- a/.github/workflows/linting.yml
+++ /dev/null
@@ -1,112 +0,0 @@
-name: Linting
-
-on:
- pull_request:
-
-jobs:
- PHPCompatibility:
- runs-on: ubuntu-latest
- strategy:
- fail-fast: true
- matrix:
- php: ['7.4', '7.3', '7.2', '7.1', '7.0', '5.6']
-
- name: PHPCompatibility
- steps:
- - name: Cancel previous runs of this workflow (pull requests only)
- if: ${{ github.event_name == 'pull_request' }}
- uses: styfle/cancel-workflow-action@0.5.0
- with:
- access_token: ${{ github.token }}
-
- - name: Checkout code
- uses: actions/checkout@v2
-
- - name: Get Composer cache directory
- id: composer-cache
- run: echo "::set-output name=dir::$(composer config cache-files-dir)"
-
- - name: Set up Composer caching
- uses: actions/cache@v2
- env:
- cache-name: cache-composer-dependencies
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
- restore-keys: |
- ${{ runner.os }}-composer-
-
- - name: Setup PHP
- uses: shivammathur/setup-php@v2
- with:
- php-version: ${{ matrix.php }}
- extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, gd
- tools: composer:v2
- coverage: none
-
- - name: Install composer dependencies
- if: ${{ matrix.php != '5.6' }}
- uses: nick-invision/retry@v1
- with:
- timeout_minutes: 5
- max_attempts: 5
- command: composer install
-
- - name: Install phpcs
- if: ${{ matrix.php == '5.6' }}
- uses: nick-invision/retry@v1
- with:
- timeout_minutes: 5
- max_attempts: 5
- command: composer global require "phpunit/phpunit=5.7.*" "alleyinteractive/alley-coding-standards"
-
- - name: PHPCompatibility for ${{ matrix.php }}
- run: composer phpcs -- --standard=PHPCompatibility --extensions=php --runtime-set testVersion ${{ matrix.php }} --ignore="/vendor/*" --ignore="/node-modules/*"
-
- coding-standards:
- runs-on: ubuntu-latest
- strategy:
- fail-fast: true
-
- name: Coding Standards
- steps:
- - name: Cancel previous runs of this workflow (pull requests only)
- if: ${{ github.event_name == 'pull_request' }}
- uses: styfle/cancel-workflow-action@0.5.0
- with:
- access_token: ${{ github.token }}
-
- - name: Checkout code
- uses: actions/checkout@v2
-
- - name: Get Composer cache directory
- id: composer-cache
- run: echo "::set-output name=dir::$(composer config cache-files-dir)"
-
- - name: Set up Composer caching
- uses: actions/cache@v2
- env:
- cache-name: cache-composer-dependencies
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
- restore-keys: |
- ${{ runner.os }}-composer-
-
- - name: Setup PHP
- uses: shivammathur/setup-php@v2
- with:
- php-version: '7.4'
- extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, gd
- tools: composer:v2
- coverage: none
-
- - name: Install composer dependencies
- uses: nick-invision/retry@v1
- with:
- timeout_minutes: 5
- max_attempts: 5
- command: composer install
-
- - name: Coding standards
- run: composer phpcs
diff --git a/.github/workflows/node-tests.yml b/.github/workflows/node-tests.yml
deleted file mode 100644
index 71ca88900..000000000
--- a/.github/workflows/node-tests.yml
+++ /dev/null
@@ -1,34 +0,0 @@
-name: Node Tests
-
-on:
- pull_request:
-
-jobs:
- npm-ci:
- name: (npm) Install, build, and test
- runs-on: ubuntu-latest
- strategy:
- fail-fast: true
- steps:
- - name: Cancel previous runs of this workflow (pull requests only)
- if: ${{ github.event_name == 'pull_request' }}
- uses: styfle/cancel-workflow-action@0.5.0
- with:
- access_token: ${{ github.token }}
-
- - name: Checkout code
- uses: actions/checkout@v2
- - name: Setup Node
- uses: actions/setup-node@v1
- with:
- node-version: 14
- - name: Install npm 7
- run: npm i -g npm@7
- - name: Install node dependencies (npm ci)
- run: npm ci
- - name: Run npm lint
- run: npm run lint
- - name: Run npm test
- run: npm run test
- - name: Run npm build
- run: npm run build
diff --git a/.github/workflows/phpunit.yml b/.github/workflows/phpunit.yml
deleted file mode 100644
index de8010972..000000000
--- a/.github/workflows/phpunit.yml
+++ /dev/null
@@ -1,86 +0,0 @@
-name: Unit Tests
-
-on:
- pull_request:
-
-jobs:
- tests:
- runs-on: ubuntu-latest
-
- services:
- mysql:
- image: mysql:5.7
- env:
- MYSQL_ALLOW_EMPTY_PASSWORD: yes
- ports:
- - 3306:3306
- options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
- continue-on-error: ${{ matrix.can_fail }}
- strategy:
- fail-fast: true
- matrix:
- wp_version: ["latest"]
- can_fail: [false]
- multisite: [0,1]
-
- name: phpunit '7.4' @ WP ${{ matrix.wp_version }} WP_MULTISITE=${{ matrix.multisite }}
- env:
- CACHEDIR: /tmp/test-cache
- WP_CORE_DIR: /tmp/wordpress/
- WP_VERSION: ${{ matrix.wp_version }}
- WP_MULTISITE: ${{ matrix.multisite }}
-
- steps:
- - name: Checkout code
- uses: actions/checkout@v2
-
- - name: Get Composer cache directory
- id: composer-cache
- run: echo "::set-output name=dir::$(composer config cache-files-dir)"
-
- - name: Set up Composer caching
- uses: actions/cache@v2
- env:
- cache-name: cache-composer-dependencies
- with:
- path: |
- ${{ steps.composer-cache.outputs.dir }}
- /tmp/test-cache
- /tmp/wordpress
- key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
- restore-keys: |
- ${{ runner.os }}-composer-
-
- - name: Setup PHP
- uses: shivammathur/setup-php@v2
- with:
- php-version: '7.4'
- extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, gd
- tools: composer:v2
- coverage: none
-
- - name: Validate Composer
- run: composer validate --strict
-
- - name: Install dependencies
- uses: nick-invision/retry@v1
- with:
- timeout_minutes: 5
- max_attempts: 5
- command: composer install
-
- - name: Install WordPress and Copy Project
- shell: bash
- run: |
- bash bin/install-wp-tests.sh wordpress_unit_tests root '' 127.0.0.1 $WP_VERSION
-
- # Go into the core directory and replace wp-content.
- # mkdir -p ${WP_CORE_DIR}/wp-content/plugins/apple-news
- rm -rf ${WP_CORE_DIR}/wp-content/plugins/apple-news
- rsync -aWq --no-compress . ${WP_CORE_DIR}/wp-content/plugins/apple-news
-
- - name: Test Plugin
- shell: bash
- run: |
- cd ${WP_CORE_DIR}/wp-content/plugins/apple-news
- composer run phpunit
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
deleted file mode 100644
index 24fb4daf8..000000000
--- a/.github/workflows/release.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-on:
- push:
- tags:
- - 'v*-built' # Create releases for built branches (eg. v2.0.8-built)
-
-name: Create -built release
-
-jobs:
- release:
- name: Create release
- runs-on: ubuntu-latest
-
- steps:
- - name: Create Release
- id: create_release
- uses: actions/create-release@v1
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Provided by Actions
- with:
- tag_name: ${{ github.ref }}
- release_name: ${{ github.ref }}
- body: A version that contains pre-built JavaScript assets for Gutenberg. This version matches what is deployed to WordPress.org, minus some development and wiki image files, and is suitable for inclusion via submodule.
- draft: false
- prerelease: true
diff --git a/.gitignore b/.gitignore
index 0621cd6a1..29039ea66 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,8 +5,27 @@ composer.lock
vendor
node_modules
npm-debug.log
-build
-## IDE
+# IDEs
.idea
.vscode
+
+# Directories and files that we do not want to be included with the built
+# version and deployed to WordPress.org.
+.babelrc
+.editorconfig
+.eslintignore
+.eslintrc.json
+.github
+.travis.yml
+assets/js/pluginsidebar
+assets/js/util
+bin
+composer.json
+package.json
+package-lock.json
+phpcs.xml.dist
+phpunit.xml.dist
+README.md
+tests
+webpack.config.js
diff --git a/README.md b/README.md
deleted file mode 100644
index ba72031da..000000000
--- a/README.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# Publish to Apple News
-
-The Publish to Apple News plugin enables your WordPress blog content to be published to your Apple News channel.
-
-* Convert your WordPress content into Apple News format automatically.
-* Create a custom design for your Apple News content with no programming knowledge required.
-* Automatically or manually publish posts from WordPress to Apple News.
-* Control individual posts with options to publish, update, or delete.
-* Publish individual posts or in bulk.
-* Handles image galleries and popular embeds like YouTube and Vimeo that are supported by Apple News.
-* Automatically adjust advertisement settings.
-
-To enable content from your WordPress blog to be published to your Apple News channel, you must obtain and enter Apple News API credentials from Apple.
-
-Please see the [Apple Developer](https://developer.apple.com/) and [Apple News Publisher documentation](https://developer.apple.com/news-publisher/) and terms on Apple's website for complete information.
-
-# Wiki
-
-Please visit our [wiki](https://github.com/alleyinteractive/apple-news/wiki) for detailed [installation instructions](https://github.com/alleyinteractive/apple-news/wiki/Installation) as well as [configuration](https://github.com/alleyinteractive/apple-news/wiki/Configuration) and [usage instructions](https://github.com/alleyinteractive/apple-news/wiki/Usage), [troubleshooting information](https://github.com/alleyinteractive/apple-news/wiki/Usage#troubleshooting) and [details about contributing](https://github.com/alleyinteractive/apple-news/wiki/Contributing).
diff --git a/assets/js/components/image-picker/README.md b/assets/js/components/image-picker/README.md
deleted file mode 100644
index 685552ff2..000000000
--- a/assets/js/components/image-picker/README.md
+++ /dev/null
@@ -1,30 +0,0 @@
-# ImagePicker
-Allows a user to select or remove an image using the media modal. This component
-is a thin wrapper around `MediaPicker` and simply sets the allowed types for the
-`MediaPicker` to `image`.
-
-For more information on how to use this component, see
-[MediaPicker](../media-picker/README.md).
-
-
-## Usage
-Render a simple media upload/replace/remove feature for media for blocks.
-
-``` js
- setAttributes({ imageId: 0 })},
- onUpdate={({ id }) => setAttributes({ imageId: id })}
- value={imageId}
-/>
-```
-
-## Props
-| Prop | Default | Required | Type | Description |
-|--------------|-------------|----------|----------|----------------------------------------------------------------------------|
-| className | | No | string | Class name. |
-| imageSize | 'thumbnail' | No | string | Image size to fetch url for previewing. |
-| onReset | | Yes | function | Function to reset imageId to 0. |
-| onUpdate | | Yes | function | Function to set imageId value on image selection/upload. |
-| value | | Yes | integer | Image id or 0 |
diff --git a/assets/js/components/media-picker/README.md b/assets/js/components/media-picker/README.md
deleted file mode 100644
index 525b713ba..000000000
--- a/assets/js/components/media-picker/README.md
+++ /dev/null
@@ -1,29 +0,0 @@
-# MediaPicker
-Allows for a simple media upload/replace/remove feature for media for blocks.
-
-## Usage
-Render a media picker, complete with URL preview, update, and remove button:
-
-``` js
- setAttributes({ imageId: 0 })},
- onUpdate={({ id }) => setAttributes({ imageId: id })}
- value={imageId}
-/>
-```
-
-The value of `mediaId` is the ID of the media element, and is destructured from
-`props.attributes`.
-
-## Props
-| Prop | Default | Required | Type | Description |
-|--------------|-------------|----------|----------|----------------------------------------------------------------------------|
-| allowedTypes | all types | No | array | Array with the types of the media to upload/select from the media library. |
-| className | | No | string | Class name. |
-| imageSize | 'thumbnail' | No | string | Image size to fetch url for previewing. |
-| onReset | | Yes | function | Function to reset imageId to 0. |
-| onUpdate | | Yes | function | Function to set imageId value on image selection/upload. |
-| value | | Yes | integer | Media id or 0 |
diff --git a/assets/js/pluginsidebar/index.jsx b/assets/js/pluginsidebar/index.jsx
deleted file mode 100644
index 29c325b93..000000000
--- a/assets/js/pluginsidebar/index.jsx
+++ /dev/null
@@ -1,11 +0,0 @@
-import { registerPlugin } from '@wordpress/plugins';
-import React from 'react';
-
-// Components.
-import Icon from '../components/icon';
-import Sidebar from './sidebar';
-
-registerPlugin('publish-to-apple-news', {
- icon: ,
- render: Sidebar,
-});
diff --git a/assets/js/pluginsidebar/panels/cover-image.jsx b/assets/js/pluginsidebar/panels/cover-image.jsx
deleted file mode 100644
index 20b867108..000000000
--- a/assets/js/pluginsidebar/panels/cover-image.jsx
+++ /dev/null
@@ -1,43 +0,0 @@
-import { BaseControl, PanelBody, TextareaControl } from '@wordpress/components';
-import { __ } from '@wordpress/i18n';
-import PropTypes from 'prop-types';
-import React from 'react';
-
-// Components.
-import ImagePicker from '../../components/image-picker';
-
-const CoverImage = ({
- coverImageCaption,
- coverImageId,
- onChangeCoverImageCaption,
- onChangeCoverImageId,
-}) => (
-
-
- onChangeCoverImageId(0)}
- onUpdate={({ id }) => onChangeCoverImageId(id)}
- value={coverImageId}
- />
-
-
-
-);
-
-CoverImage.propTypes = {
- coverImageCaption: PropTypes.string.isRequired,
- coverImageId: PropTypes.number.isRequired,
- onChangeCoverImageCaption: PropTypes.func.isRequired,
- onChangeCoverImageId: PropTypes.func.isRequired,
-};
-
-export default CoverImage;
diff --git a/assets/js/pluginsidebar/panels/maturity-rating.jsx b/assets/js/pluginsidebar/panels/maturity-rating.jsx
deleted file mode 100644
index c2e389960..000000000
--- a/assets/js/pluginsidebar/panels/maturity-rating.jsx
+++ /dev/null
@@ -1,34 +0,0 @@
-import { PanelBody, SelectControl } from '@wordpress/components';
-import { __ } from '@wordpress/i18n';
-import PropTypes from 'prop-types';
-import React from 'react';
-
-const MaturityRating = ({
- maturityRating,
- onChangeMaturityRating,
-}) => (
-
-
-
-);
-
-MaturityRating.propTypes = {
- maturityRating: PropTypes.string.isRequired,
- onChangeMaturityRating: PropTypes.func.isRequired,
-};
-
-export default MaturityRating;
diff --git a/assets/js/pluginsidebar/panels/metadata.jsx b/assets/js/pluginsidebar/panels/metadata.jsx
deleted file mode 100644
index 4351dcf1b..000000000
--- a/assets/js/pluginsidebar/panels/metadata.jsx
+++ /dev/null
@@ -1,129 +0,0 @@
-import {
- Button,
- CheckboxControl,
- PanelBody,
- SelectControl,
- TextControl,
-} from '@wordpress/components';
-import { __ } from '@wordpress/i18n';
-import PropTypes from 'prop-types';
-import React from 'react';
-
-// Config.
-import { METADATA_SHAPE } from '../../config/prop-types';
-
-// Util.
-import deleteAtIndex from '../../util/delete-at-index';
-import updateValueAtIndex from '../../util/update-value-at-index';
-
-const Metadata = ({
- isHidden,
- isPaid,
- isPreview,
- isSponsored,
- metadata,
- onChangeIsHidden,
- onChangeIsPaid,
- onChangeIsPreview,
- onChangeIsSponsored,
- onChangeMetadata,
-}) => (
-
-
-
-
-
- {__('Custom Metadata', 'apple-news')}
- {metadata.map(({ key, type, value }, index) => (
- // eslint-disable-next-line react/no-array-index-key
-
- onChangeMetadata(updateValueAtIndex(metadata, 'key', next, index))}
- value={key}
- />
- onChangeMetadata(updateValueAtIndex(metadata, 'type', next, index))}
- options={[
- { label: __('string', 'apple-news'), value: 'string' },
- { label: __('boolean', 'apple-news'), value: 'boolean' },
- { label: __('number', 'apple-news'), value: 'number' },
- { label: __('array', 'apple-news'), value: 'array' },
- ]}
- value={type}
- />
- {type === 'boolean' ? (
- onChangeMetadata(updateValueAtIndex(metadata, 'value', next === 'true', index))}
- options={[
- { label: __('', 'apple-news'), value: '' },
- { label: __('true', 'apple-news'), value: 'true' },
- { label: __('false', 'apple-news'), value: 'false' },
- ]}
- value={value}
- />
- ) : (
- onChangeMetadata(updateValueAtIndex(metadata, 'value', type === 'number' ? parseFloat(next) : next, index))}
- type={type === 'number' ? 'number' : 'text'}
- value={value}
- />
- )}
- onChangeMetadata(deleteAtIndex(metadata, index))}
- style={{ marginBottom: '1em' }}
- >
- {__('Remove', 'apple-news')}
-
-
- ))}
- onChangeMetadata([...metadata, { key: '', type: 'string', value: '' }])}
- >
- {__('Add Metadata', 'apple-news')}
-
-
-);
-
-Metadata.propTypes = {
- isHidden: PropTypes.bool.isRequired,
- isPaid: PropTypes.bool.isRequired,
- isPreview: PropTypes.bool.isRequired,
- isSponsored: PropTypes.bool.isRequired,
- metadata: PropTypes.arrayOf(PropTypes.shape(METADATA_SHAPE)).isRequired,
- onChangeIsHidden: PropTypes.func.isRequired,
- onChangeIsPaid: PropTypes.func.isRequired,
- onChangeIsPreview: PropTypes.func.isRequired,
- onChangeIsSponsored: PropTypes.func.isRequired,
- onChangeMetadata: PropTypes.func.isRequired,
-};
-
-export default Metadata;
diff --git a/assets/js/pluginsidebar/panels/publish-controls.jsx b/assets/js/pluginsidebar/panels/publish-controls.jsx
deleted file mode 100644
index 520037622..000000000
--- a/assets/js/pluginsidebar/panels/publish-controls.jsx
+++ /dev/null
@@ -1,83 +0,0 @@
-import { Button, Spinner } from '@wordpress/components';
-import { __ } from '@wordpress/i18n';
-import PropTypes from 'prop-types';
-import React from 'react';
-
-const PublishControls = ({
- apiAutosync,
- apiAutosyncDelete,
- apiAutosyncUpdate,
- deletePost,
- loading,
- postIsDirty,
- postStatus,
- publishPost,
- publishState,
- updatePost,
- userCanPublish,
-}) => {
- // If the post isn't published, or the user can't publish to Apple News, bail.
- if (postStatus !== 'publish' || !userCanPublish) {
- return null;
- }
-
- // If we're loading, spin.
- if (loading) {
- return ;
- }
-
- return (
- <>
- {postIsDirty ? (
-
-
- {__('Please click the Update button above to ensure that all changes are saved before publishing to Apple News.', 'apple-news')}
-
-
- ) : null}
- {publishState !== 'N/A' && !apiAutosyncUpdate ? (
-
- {__('Update', 'apple-news')}
-
- ) : null}
- {publishState !== 'N/A' && !apiAutosyncDelete ? (
-
- {__('Delete', 'apple-news')}
-
- ) : null}
- {publishState === 'N/A' && !apiAutosync ? (
-
- {__('Publish', 'apple-news')}
-
- ) : null}
- >
- );
-};
-
-PublishControls.propTypes = {
- apiAutosync: PropTypes.bool.isRequired,
- apiAutosyncDelete: PropTypes.bool.isRequired,
- apiAutosyncUpdate: PropTypes.bool.isRequired,
- deletePost: PropTypes.func.isRequired,
- loading: PropTypes.bool.isRequired,
- postIsDirty: PropTypes.bool.isRequired,
- postStatus: PropTypes.string.isRequired,
- publishPost: PropTypes.func.isRequired,
- publishState: PropTypes.string.isRequired,
- updatePost: PropTypes.func.isRequired,
- userCanPublish: PropTypes.bool.isRequired,
-};
-
-export default PublishControls;
diff --git a/assets/js/pluginsidebar/panels/publish-info.jsx b/assets/js/pluginsidebar/panels/publish-info.jsx
deleted file mode 100644
index 4ceafeb4e..000000000
--- a/assets/js/pluginsidebar/panels/publish-info.jsx
+++ /dev/null
@@ -1,48 +0,0 @@
-import { PanelBody } from '@wordpress/components';
-import { __ } from '@wordpress/i18n';
-import PropTypes from 'prop-types';
-import React from 'react';
-
-const PublishInfo = ({
- apiId,
- dateCreated,
- dateModified,
- revision,
- shareUrl,
- publishState,
-}) => {
- if (!publishState || publishState === 'N/A') {
- return null;
- }
-
- return (
-
- {__('API Id', 'apple-news')}
- {apiId}
- {__('Created On', 'apple-news')}
- {dateCreated}
- {__('Last Updated On', 'apple-news')}
- {dateModified}
- {__('Share URL', 'apple-news')}
- {shareUrl}
- {__('Revision', 'apple-news')}
- {revision}
- {__('Publish State', 'apple-news')}
- {publishState}
-
- );
-};
-
-PublishInfo.propTypes = {
- apiId: PropTypes.string.isRequired,
- dateCreated: PropTypes.string.isRequired,
- dateModified: PropTypes.string.isRequired,
- revision: PropTypes.string.isRequired,
- shareUrl: PropTypes.string.isRequired,
- publishState: PropTypes.string.isRequired,
-};
-
-export default PublishInfo;
diff --git a/assets/js/pluginsidebar/panels/pull-quote.jsx b/assets/js/pluginsidebar/panels/pull-quote.jsx
deleted file mode 100644
index 6e24fd036..000000000
--- a/assets/js/pluginsidebar/panels/pull-quote.jsx
+++ /dev/null
@@ -1,47 +0,0 @@
-import {
- PanelBody,
- SelectControl,
- TextareaControl,
-} from '@wordpress/components';
-import { __ } from '@wordpress/i18n';
-import PropTypes from 'prop-types';
-import React from 'react';
-
-const PullQuote = ({
- onChangePullquotePosition,
- onChangePullquoteText,
- pullquotePosition,
- pullquoteText,
-}) => (
-
-
-
-
-);
-
-PullQuote.propTypes = {
- onChangePullquotePosition: PropTypes.func.isRequired,
- onChangePullquoteText: PropTypes.func.isRequired,
- pullquotePosition: PropTypes.string.isRequired,
- pullquoteText: PropTypes.string.isRequired,
-};
-
-export default PullQuote;
diff --git a/assets/js/pluginsidebar/panels/sections.jsx b/assets/js/pluginsidebar/panels/sections.jsx
deleted file mode 100644
index 979a25ed3..000000000
--- a/assets/js/pluginsidebar/panels/sections.jsx
+++ /dev/null
@@ -1,66 +0,0 @@
-import {
- BaseControl,
- CheckboxControl,
- PanelBody,
- Spinner,
-} from '@wordpress/components';
-import { __ } from '@wordpress/i18n';
-import PropTypes from 'prop-types';
-import React from 'react';
-
-// Config.
-import { SECTION_SHAPE } from '../../config/prop-types';
-
-const Sections = ({
- autoAssignCategories,
- automaticAssignment,
- onChangeAutoAssignCategories,
- onChangeSelectedSections,
- sections,
- selectedSections,
-}) => (
-
- {!Array.isArray(sections) || sections.length === 0 ? (
-
- ) : (
- <>
- {automaticAssignment ? (
-
- ) : null}
- {automaticAssignment && !autoAssignCategories ? : null}
- {(!automaticAssignment || !autoAssignCategories) ? (
-
- {sections.map(({ id, name }) => (
- onChangeSelectedSections(id)}
- />
- ))}
-
- ) : null}
- >
- )}
-
-);
-
-Sections.propTypes = {
- autoAssignCategories: PropTypes.bool.isRequired,
- automaticAssignment: PropTypes.bool.isRequired,
- onChangeAutoAssignCategories: PropTypes.func.isRequired,
- onChangeSelectedSections: PropTypes.func.isRequired,
- sections: PropTypes.arrayOf(PropTypes.shape(SECTION_SHAPE)).isRequired,
- selectedSections: PropTypes.arrayOf(PropTypes.string).isRequired,
-};
-
-export default Sections;
diff --git a/assets/js/pluginsidebar/panels/slug.jsx b/assets/js/pluginsidebar/panels/slug.jsx
deleted file mode 100644
index 084fa2411..000000000
--- a/assets/js/pluginsidebar/panels/slug.jsx
+++ /dev/null
@@ -1,31 +0,0 @@
-import {
- PanelBody,
- TextControl,
-} from '@wordpress/components';
-import { __ } from '@wordpress/i18n';
-import PropTypes from 'prop-types';
-import React from 'react';
-
-const Slug = ({
- onChangeSlug,
- slug,
-}) => (
-
-
-
-);
-
-Slug.propTypes = {
- onChangeSlug: PropTypes.func.isRequired,
- slug: PropTypes.string.isRequired,
-};
-
-export default Slug;
diff --git a/assets/js/pluginsidebar/sidebar.jsx b/assets/js/pluginsidebar/sidebar.jsx
deleted file mode 100644
index cbe2bc159..000000000
--- a/assets/js/pluginsidebar/sidebar.jsx
+++ /dev/null
@@ -1,275 +0,0 @@
-import apiFetch from '@wordpress/api-fetch';
-import { useDispatch, useSelect } from '@wordpress/data';
-import {
- PluginSidebar,
- PluginSidebarMoreMenuItem,
-} from '@wordpress/edit-post';
-import { __ } from '@wordpress/i18n';
-import DOMPurify from 'dompurify';
-import React, { useCallback, useEffect, useState } from 'react';
-
-// Hooks.
-import usePostMeta from '../services/hooks/use-post-meta';
-
-// Panels.
-import CoverImage from './panels/cover-image';
-import MaturityRating from './panels/maturity-rating';
-import Metadata from './panels/metadata';
-import PublishControls from './panels/publish-controls';
-import PublishInfo from './panels/publish-info';
-import PullQuote from './panels/pull-quote';
-import Sections from './panels/sections';
-import Slug from './panels/slug';
-
-// Utils.
-import safeJsonParseArray from '../util/safe-json-parse-array';
-
-const Sidebar = () => {
- const [state, setState] = useState({
- autoAssignCategories: false,
- loading: false,
- publishState: 'N/A',
- sections: [],
- settings: {
- apiAutosync: false,
- apiAutosyncDelete: false,
- apiAutosyncUpdate: false,
- automaticAssignment: false,
- },
- userCanPublish: false,
- });
-
- // Destructure values out of state for easier access.
- const {
- autoAssignCategories,
- loading,
- publishState,
- sections,
- settings: {
- apiAutosync,
- apiAutosyncDelete,
- apiAutosyncUpdate,
- automaticAssignment,
- },
- userCanPublish,
- } = state;
-
- // Get a reference to the dispatch function for notices for use later.
- const dispatchNotice = useDispatch('core/notices');
-
- // Get the current post ID.
- const {
- notices,
- postId,
- postIsDirty,
- postStatus,
- } = useSelect((select) => {
- const editor = select('core/editor');
- return {
- notices: editor.getEditedPostAttribute('apple_news_notices'),
- postId: editor.getCurrentPostId(),
- postIsDirty: editor.isEditedPostDirty(),
- postStatus: editor.getEditedPostAttribute('status'),
- };
- });
-
- // Getter/setter for postmeta managed by this PluginSidebar.
- const [{
- apple_news_api_created_at: dateCreated = '',
- apple_news_api_id: apiId = '',
- apple_news_api_modified_at: dateModified = '',
- apple_news_api_revision: revision = '',
- apple_news_api_share_url: shareUrl = '',
- apple_news_coverimage: coverImageId = 0,
- apple_news_coverimage_caption: coverImageCaption = '',
- apple_news_is_hidden: isHidden = false,
- apple_news_is_paid: isPaid = false,
- apple_news_is_preview: isPreview = false,
- apple_news_is_sponsored: isSponsored = false,
- apple_news_maturity_rating: maturityRating = '',
- apple_news_metadata: metadataRaw = '',
- apple_news_pullquote: pullquoteText = '',
- apple_news_pullquote_position: pullquotePosition = '',
- apple_news_sections: selectedSectionsRaw = '',
- apple_news_slug: slug = '',
- }, setMeta] = usePostMeta();
-
- // Decode selected sections.
- const metadata = safeJsonParseArray(metadataRaw);
- const selectedSections = safeJsonParseArray(selectedSectionsRaw);
-
- /**
- * A helper function for displaying a notification to the user.
- * @param {string} message - The notification message displayed to the user.
- * @param {string} type - Optional. The type of message to display. Defaults to success.
- */
- const displayNotification = useCallback((message, type = 'success') => (type === 'success'
- ? dispatchNotice.createInfoNotice(DOMPurify.sanitize(message), { type: 'snackbar' })
- : dispatchNotice.createErrorNotice(DOMPurify.sanitize(message))
- ), [dispatchNotice]);
-
- /**
- * Sends a request to the REST API to modify the post.
- * @param {string} operation - One of delete, publish, update.
- */
- const modifyPost = async (operation) => {
- setState({
- ...state,
- loading: true,
- });
-
- try {
- const {
- notifications = [],
- publishState: nextPublishState = '',
- } = await apiFetch({
- data: {
- id: postId,
- },
- method: 'POST',
- path: `/apple-news/v1/${operation}`,
- });
- notifications.forEach((notification) => displayNotification(
- notification.message,
- notification.type,
- ));
- setState({
- ...state,
- loading: false,
- publishState: nextPublishState,
- });
- } catch (error) {
- displayNotification(error.message, 'error');
- setState({
- ...state,
- loading: false,
- });
- }
- };
-
- /**
- * A helper function to update which sections are selected.
- * @param {string} id - The id of the section to toggle.
- */
- const toggleSelectedSection = (id) => setMeta('apple_news_sections',
- selectedSections.includes(id)
- ? JSON.stringify(selectedSections.filter((section) => section !== id))
- : JSON.stringify([...selectedSections, id]));
-
- // On initial load, fetch info from the API into state.
- useEffect(() => {
- (async () => {
- const fetches = [
- await apiFetch({ path: `/apple-news/v1/get-published-state/${postId}` }),
- await apiFetch({ path: '/apple-news/v1/sections' }),
- await apiFetch({ path: '/apple-news/v1/get-settings' }),
- await apiFetch({ path: `/apple-news/v1/user-can-publish/${postId}` }),
- ];
-
- // Wait for everything to load, update state, and handle errors.
- try {
- const data = await Promise.all(fetches);
- setState({
- ...state,
- autoAssignCategories: (selectedSections === null || selectedSections.length === 0)
- && data[2].automaticAssignment === true,
- ...data[0],
- sections: data[1],
- settings: data[2],
- ...data[3],
- });
- } catch (error) {
- displayNotification(error.message, 'error');
- }
- })();
- }, []); // eslint-disable-line react-hooks/exhaustive-deps
-
- // Display notices whenever they change.
- useEffect(() => {
- notices.forEach((notice) => displayNotification(notice.message, notice.type));
- }, [displayNotification, notices]);
-
- return (
- <>
-
- {__('Apple News Options', 'apple-news')}
-
-
- {
- setState({
- ...state,
- autoAssignCategories: next,
- });
- setMeta('apple_news_sections', '');
- }}
- onChangeSelectedSections={toggleSelectedSection}
- sections={sections}
- selectedSections={selectedSections}
- />
- setMeta('apple_news_is_hidden', next)}
- onChangeIsPaid={(next) => setMeta('apple_news_is_paid', next)}
- onChangeIsPreview={(next) => setMeta('apple_news_is_preview', next)}
- onChangeIsSponsored={(next) => setMeta('apple_news_is_sponsored', next)}
- onChangeMetadata={(next) => setMeta('apple_news_metadata', JSON.stringify(next))}
- />
- setMeta('apple_news_maturity_rating', next)}
- />
- setMeta('apple_news_slug', next)}
- slug={slug}
- />
- setMeta('apple_news_pullquote_position', next)}
- onChangePullquoteText={(next) => setMeta('apple_news_pullquote', next)}
- pullquotePosition={pullquotePosition}
- pullquoteText={pullquoteText}
- />
- setMeta('apple_news_coverimage_caption', next)}
- onChangeCoverImageId={(next) => setMeta('apple_news_coverimage', next)}
- />
- {publishState !== 'N/A' ? (
-
- ) : null}
- modifyPost('delete')}
- loading={loading}
- postIsDirty={postIsDirty}
- postStatus={postStatus}
- publishPost={() => modifyPost('publish')}
- publishState={publishState}
- updatePost={() => modifyPost('update')}
- userCanPublish={userCanPublish}
- />
-
- >
- );
-};
-
-export default Sidebar;
diff --git a/assets/js/services/hooks/use-post-meta/README.md b/assets/js/services/hooks/use-post-meta/README.md
deleted file mode 100644
index f06287528..000000000
--- a/assets/js/services/hooks/use-post-meta/README.md
+++ /dev/null
@@ -1,50 +0,0 @@
-# Custom Hooks: usePostMeta
-
-A custom React hook that wraps `useEntityProp` for working with postmeta. It
-returns an array that contains a copy of postmeta as well as a helper
-function that sets a meta value for a given key. This hook is intended to
-reduce boilerplate code in components that need to read and write postmeta.
-By default, it operates on postmeta for the current post, but you can
-optionally pass a post type and post ID in order to get and set post meta
-for an arbitrary post.
-
-## Usage
-
-### Editing the Current Post's Meta
-
-```jsx
-const MyComponent = () => {
- const [{
- my_meta_key: myMetaKey = 'myDefaultValue',
- }, setMeta] = usePostMeta();
-
- return (
- setMeta('my_meta_key', next)}
- value={myMetaKey}
- />
- );
-};
-```
-
-### Editing Another Post's Meta
-
-```jsx
-const MyComponent = ({
- postId,
- postType,
-}) => {
- const [{
- my_meta_key: myMetaKey = 'myDefaultValue',
- }, setMeta] = usePostMeta(postType, postId);
-
- return (
- setMeta('my_meta_key', next)}
- value={myMetaKey}
- />
- );
-};
-```
diff --git a/assets/js/util/delete-at-index.js b/assets/js/util/delete-at-index.js
deleted file mode 100644
index 06d94bc40..000000000
--- a/assets/js/util/delete-at-index.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/**
- * Given an array of values, returns a copy of the array with the value at the
- * given index removed.
- * @param {Array} values - The array of values to modify.
- * @param {number} index - The index to remove.
- * @returns {Array} A copy of the values array with the value at the specified index removed.
- */
-const deleteAtIndex = (values, index) => values.filter((value, idx) => index !== idx);
-
-export default deleteAtIndex;
diff --git a/assets/js/util/delete-at-index.test.js b/assets/js/util/delete-at-index.test.js
deleted file mode 100644
index 1529ffdfe..000000000
--- a/assets/js/util/delete-at-index.test.js
+++ /dev/null
@@ -1,8 +0,0 @@
-import deleteAtIndex from './delete-at-index';
-
-test('deleteAtIndex should properly delete items at a given index.', () => {
- const values = ['a', 'b', 'c'];
- expect(deleteAtIndex(values, 0)).toEqual(['b', 'c']);
- expect(deleteAtIndex(values, 1)).toEqual(['a', 'c']);
- expect(deleteAtIndex(values, 2)).toEqual(['a', 'b']);
-});
diff --git a/assets/js/util/safe-json-parse-array.js b/assets/js/util/safe-json-parse-array.js
deleted file mode 100644
index 515ff502b..000000000
--- a/assets/js/util/safe-json-parse-array.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import safeJsonParse from './safe-json-parse';
-
-/**
- * Given a value, run JSON.parse on it, but if parsing fails, or if
- * what results from the parse is not an array, return an empty
- * array rather than a syntax error or a value of another type.
- * @param {*} value - The value to attempt to parse.
- * @returns {array} - The parsed value, or an empty array on failure.
- */
-const safeJsonParseArray = (value) => {
- const parsedValue = safeJsonParse(value);
-
- // Make absolutely sure that the parsed value is an array.
- if (!Array.isArray(parsedValue)) {
- return [];
- }
-
- return parsedValue;
-};
-
-export default safeJsonParseArray;
diff --git a/assets/js/util/safe-json-parse-array.test.js b/assets/js/util/safe-json-parse-array.test.js
deleted file mode 100644
index 1f91cea86..000000000
--- a/assets/js/util/safe-json-parse-array.test.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import safeJsonParseArray from './safe-json-parse-array';
-
-test('safeJsonParseArray should properly return a parsed array.', () => {
- expect(safeJsonParseArray('[1, 5, "false"]')).toEqual([1, 5, 'false']);
- expect(safeJsonParseArray('["a", "b", "c"]')).toEqual(['a', 'b', 'c']);
-});
-
-test('safeJsonParseArray should return an empty array for any non-array types.', () => {
- expect(safeJsonParseArray('true')).toEqual([]);
- expect(safeJsonParseArray('"foo"')).toEqual([]);
- expect(safeJsonParseArray('null')).toEqual([]);
- expect(safeJsonParseArray('{}')).toEqual([]);
- expect(safeJsonParseArray('{"a": "b"}')).toEqual([]);
- expect(safeJsonParseArray('')).toEqual([]);
- expect(safeJsonParseArray(undefined)).toEqual([]);
-});
diff --git a/assets/js/util/safe-json-parse-object.js b/assets/js/util/safe-json-parse-object.js
deleted file mode 100644
index 952c7883c..000000000
--- a/assets/js/util/safe-json-parse-object.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import safeJsonParse from './safe-json-parse';
-
-/**
- * Given a value, run JSON.parse on it, but if parsing fails, or if
- * what results from the parse is not a standard object, return an empty
- * object rather than a syntax error or a value of another type.
- * @param {*} value - The value to attempt to parse.
- * @returns {object} - The parsed value, or an empty object on failure.
- */
-const safeJsonParseObject = (value) => {
- const parsedValue = safeJsonParse(value);
-
- // Make absolutely sure that the object is a standard object.
- if (parsedValue === null
- || typeof parsedValue !== 'object'
- || Array.isArray(parsedValue)
- || JSON.stringify(parsedValue).indexOf('{') !== 0
- ) {
- return {};
- }
-
- return parsedValue;
-};
-
-export default safeJsonParseObject;
diff --git a/assets/js/util/safe-json-parse-object.test.js b/assets/js/util/safe-json-parse-object.test.js
deleted file mode 100644
index fe607b1fe..000000000
--- a/assets/js/util/safe-json-parse-object.test.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import safeJsonParseObject from './safe-json-parse-object';
-
-test('safeJsonParseObject should properly return a parsed object.', () => {
- expect(safeJsonParseObject('{}')).toEqual({});
- expect(safeJsonParseObject('{"a": "b"}')).toEqual({ a: 'b' });
-});
-
-test('safeJsonParseObject should return an empty object for any non-object types.', () => {
- expect(safeJsonParseObject('true')).toEqual({});
- expect(safeJsonParseObject('"foo"')).toEqual({});
- expect(safeJsonParseObject('[1, 5, "false"]')).toEqual({});
- expect(safeJsonParseObject('null')).toEqual({});
- expect(safeJsonParseObject('["a", "b", "c"]')).toEqual({});
- expect(safeJsonParseObject('')).toEqual({});
- expect(safeJsonParseObject(undefined)).toEqual({});
-});
diff --git a/assets/js/util/safe-json-parse.js b/assets/js/util/safe-json-parse.js
deleted file mode 100644
index 786a8799e..000000000
--- a/assets/js/util/safe-json-parse.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Given a value, run JSON.parse on it, but if parsing fails, return null
- * instead of throwing a SyntaxError.
- * @param {*} value - The value to attempt to parse.
- * @returns {*} - The parsed value, or null on failure.
- */
-const safeJsonParse = (value) => {
- try {
- return JSON.parse(value);
- } catch (e) {
- return null;
- }
-};
-
-export default safeJsonParse;
diff --git a/assets/js/util/safe-json-parse.test.js b/assets/js/util/safe-json-parse.test.js
deleted file mode 100644
index 82884632a..000000000
--- a/assets/js/util/safe-json-parse.test.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import safeJsonParse from './safe-json-parse';
-
-test('safeJsonParse should properly decode valid JSON.', () => {
- expect(safeJsonParse('{}')).toEqual({});
- expect(safeJsonParse('true')).toEqual(true);
- expect(safeJsonParse('"foo"')).toEqual('foo');
- expect(safeJsonParse('[1, 5, "false"]')).toEqual([1, 5, 'false']);
- expect(safeJsonParse('null')).toEqual(null);
- expect(safeJsonParse('["a", "b", "c"]')).toEqual(['a', 'b', 'c']);
- expect(safeJsonParse('{"a": "b"}')).toEqual({ a: 'b' });
-});
-
-test('Should not choke on invalid JSON.', () => {
- expect(safeJsonParse('')).toEqual(null);
- expect(safeJsonParse(undefined)).toEqual(null);
-});
diff --git a/assets/js/util/update-value-at-index.js b/assets/js/util/update-value-at-index.js
deleted file mode 100644
index 7ac7dfd22..000000000
--- a/assets/js/util/update-value-at-index.js
+++ /dev/null
@@ -1,16 +0,0 @@
-/**
- * Given an array of objects, a key, and a value, returns a copy of the array
- * with the value for the key set at the given index.
- * @param {Array} values - An array of objects.
- * @param {string} key - The object key to update.
- * @param {*} value - The value to set for the key.
- * @param {number} index - The index to set the value on.
- * @returns {Array} A copy of the array with the value set for the key at the given index.
- */
-const updateValueAtIndex = (values, key, value, index) => {
- const valuesCopy = values.map((item) => ({ ...item }));
- valuesCopy[index][key] = value;
- return valuesCopy;
-};
-
-export default updateValueAtIndex;
diff --git a/assets/js/util/update-value-at-index.test.js b/assets/js/util/update-value-at-index.test.js
deleted file mode 100644
index 388d62773..000000000
--- a/assets/js/util/update-value-at-index.test.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import updateValueAtIndex from './update-value-at-index';
-
-test('updateValueAtIndex should properly update values at indices.', () => {
- const values = [
- { a: 'b', c: 'd' },
- { e: 'f', g: 'h' },
- { i: 'j', k: 'l' },
- ];
- expect(updateValueAtIndex(values, 'a', 'x', 0)).toEqual([
- { a: 'x', c: 'd' },
- { e: 'f', g: 'h' },
- { i: 'j', k: 'l' },
- ]);
- expect(updateValueAtIndex(values, 'c', 'x', 0)).toEqual([
- { a: 'b', c: 'x' },
- { e: 'f', g: 'h' },
- { i: 'j', k: 'l' },
- ]);
- expect(updateValueAtIndex(values, 'e', 'x', 1)).toEqual([
- { a: 'b', c: 'd' },
- { e: 'x', g: 'h' },
- { i: 'j', k: 'l' },
- ]);
- expect(updateValueAtIndex(values, 'g', 'x', 1)).toEqual([
- { a: 'b', c: 'd' },
- { e: 'f', g: 'x' },
- { i: 'j', k: 'l' },
- ]);
- expect(updateValueAtIndex(values, 'i', 'x', 2)).toEqual([
- { a: 'b', c: 'd' },
- { e: 'f', g: 'h' },
- { i: 'x', k: 'l' },
- ]);
- expect(updateValueAtIndex(values, 'k', 'x', 2)).toEqual([
- { a: 'b', c: 'd' },
- { e: 'f', g: 'h' },
- { i: 'j', k: 'x' },
- ]);
-});
diff --git a/bin/install-wp-tests.sh b/bin/install-wp-tests.sh
deleted file mode 100755
index 4f5335586..000000000
--- a/bin/install-wp-tests.sh
+++ /dev/null
@@ -1,118 +0,0 @@
-#!/usr/bin/env bash
-
-if [ $# -lt 3 ]; then
- echo "usage: $0 [db-host] [wp-version]"
- exit 1
-fi
-
-DB_NAME=$1
-DB_USER=$2
-DB_PASS=$3
-DB_HOST=${4-localhost}
-WP_VERSION=${5-latest}
-
-WP_TESTS_DIR=${WP_TESTS_DIR-/tmp/wordpress-tests-lib}
-WP_CORE_DIR=${WP_CORE_DIR-/tmp/wordpress/}
-
-download() {
- if [ `which curl` ]; then
- curl -s "$1" > "$2";
- elif [ `which wget` ]; then
- wget -nv -O "$2" "$1"
- fi
-}
-
-if [[ $WP_VERSION =~ [0-9]+\.[0-9]+(\.[0-9]+)? ]]; then
- WP_TESTS_TAG="tags/$WP_VERSION"
-elif [[ $WP_VERSION == 'nightly' || $WP_VERSION == 'trunk' ]]; then
- WP_TESTS_TAG="trunk"
-else
- # http serves a single offer, whereas https serves multiple. we only want one
- download http://api.wordpress.org/core/version-check/1.7/ /tmp/wp-latest.json
- grep '[0-9]+\.[0-9]+(\.[0-9]+)?' /tmp/wp-latest.json
- LATEST_VERSION=$(grep -o '"version":"[^"]*' /tmp/wp-latest.json | sed 's/"version":"//')
- if [[ -z "$LATEST_VERSION" ]]; then
- echo "Latest WordPress version could not be found"
- exit 1
- fi
- WP_TESTS_TAG="tags/$LATEST_VERSION"
-fi
-
-set -ex
-
-install_wp() {
-
- if [ -d $WP_CORE_DIR ]; then
- return;
- fi
-
- mkdir -p $WP_CORE_DIR
-
- if [[ $WP_VERSION == 'nightly' || $WP_VERSION == 'trunk' ]]; then
- mkdir -p /tmp/wordpress-nightly
- download https://wordpress.org/nightly-builds/wordpress-latest.zip /tmp/wordpress-nightly/wordpress-nightly.zip
- unzip -q /tmp/wordpress-nightly/wordpress-nightly.zip -d /tmp/wordpress-nightly/
- mv /tmp/wordpress-nightly/wordpress/* $WP_CORE_DIR
- else
- if [ $WP_VERSION == 'latest' ]; then
- local ARCHIVE_NAME='latest'
- else
- local ARCHIVE_NAME="wordpress-$WP_VERSION"
- fi
- download https://wordpress.org/${ARCHIVE_NAME}.tar.gz /tmp/wordpress.tar.gz
- tar --strip-components=1 -zxmf /tmp/wordpress.tar.gz -C $WP_CORE_DIR
- fi
-
- download https://raw.github.com/markoheijnen/wp-mysqli/master/db.php $WP_CORE_DIR/wp-content/db.php
-}
-
-install_test_suite() {
- # portable in-place argument for both GNU sed and Mac OSX sed
- if [[ $(uname -s) == 'Darwin' ]]; then
- local ioption='-i .bak'
- else
- local ioption='-i'
- fi
-
- # set up testing suite if it doesn't yet exist
- if [ ! -d $WP_TESTS_DIR ]; then
- # set up testing suite
- mkdir -p $WP_TESTS_DIR
- svn co --quiet https://develop.svn.wordpress.org/${WP_TESTS_TAG}/tests/phpunit/includes/ $WP_TESTS_DIR/includes
- fi
-
- if [ ! -f wp-tests-config.php ]; then
- download https://develop.svn.wordpress.org/${WP_TESTS_TAG}/wp-tests-config-sample.php "$WP_TESTS_DIR"/wp-tests-config.php
- sed $ioption "s:dirname( __FILE__ ) . '/src/':'$WP_CORE_DIR':" "$WP_TESTS_DIR"/wp-tests-config.php
- sed $ioption "s/youremptytestdbnamehere/$DB_NAME/" "$WP_TESTS_DIR"/wp-tests-config.php
- sed $ioption "s/yourusernamehere/$DB_USER/" "$WP_TESTS_DIR"/wp-tests-config.php
- sed $ioption "s/yourpasswordhere/$DB_PASS/" "$WP_TESTS_DIR"/wp-tests-config.php
- sed $ioption "s|localhost|${DB_HOST}|" "$WP_TESTS_DIR"/wp-tests-config.php
- fi
-
-}
-
-install_db() {
- # parse DB_HOST for port or socket references
- local PARTS=(${DB_HOST//\:/ })
- local DB_HOSTNAME=${PARTS[0]};
- local DB_SOCK_OR_PORT=${PARTS[1]};
- local EXTRA=""
-
- if ! [ -z $DB_HOSTNAME ] ; then
- if [ $(echo $DB_SOCK_OR_PORT | grep -e '^[0-9]\{1,\}$') ]; then
- EXTRA=" --host=$DB_HOSTNAME --port=$DB_SOCK_OR_PORT --protocol=tcp"
- elif ! [ -z $DB_SOCK_OR_PORT ] ; then
- EXTRA=" --socket=$DB_SOCK_OR_PORT"
- elif ! [ -z $DB_HOSTNAME ] ; then
- EXTRA=" --host=$DB_HOSTNAME --protocol=tcp"
- fi
- fi
-
- # create database
- mysqladmin create $DB_NAME --user="$DB_USER" --password="$DB_PASS"$EXTRA
-}
-
-install_wp
-install_test_suite
-install_db
diff --git a/build/pluginSidebar.asset.php b/build/pluginSidebar.asset.php
new file mode 100644
index 000000000..ac86546aa
--- /dev/null
+++ b/build/pluginSidebar.asset.php
@@ -0,0 +1 @@
+ array('react', 'wp-api-fetch', 'wp-block-editor', 'wp-components', 'wp-core-data', 'wp-data', 'wp-edit-post', 'wp-i18n', 'wp-plugins'), 'version' => '399a6e300bdaabf151f1faecd2cfb13e');
\ No newline at end of file
diff --git a/build/pluginSidebar.js b/build/pluginSidebar.js
new file mode 100644
index 000000000..e06394756
--- /dev/null
+++ b/build/pluginSidebar.js
@@ -0,0 +1,3 @@
+/*! For license information please see pluginSidebar.js.LICENSE.txt */
+!function(){var e={856:function(e){e.exports=function(){"use strict";var e=Object.hasOwnProperty,t=Object.setPrototypeOf,n=Object.isFrozen,a=Object.getPrototypeOf,i=Object.getOwnPropertyDescriptor,r=Object.freeze,o=Object.seal,l=Object.create,s="undefined"!=typeof Reflect&&Reflect,p=s.apply,c=s.construct;p||(p=function(e,t,n){return e.apply(t,n)}),r||(r=function(e){return e}),o||(o=function(e){return e}),c||(c=function(e,t){return new(Function.prototype.bind.apply(e,[null].concat(function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t1?n-1:0),i=1;i/gm),F=o(/^data-[\-\w.\u00B7-\uFFFF]/),z=o(/^aria-[\-\w]+$/),B=o(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),H=o(/^(?:\w+script|data):/i),j=o(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),W="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function G(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:V(),n=function(t){return e(t)};if(n.version="2.3.0",n.removed=[],!t||!t.document||9!==t.document.nodeType)return n.isSupported=!1,n;var a=t.document,i=t.document,o=t.DocumentFragment,l=t.HTMLTemplateElement,s=t.Node,p=t.Element,c=t.NodeFilter,u=t.NamedNodeMap,C=void 0===u?t.NamedNodeMap||t.MozNamedAttrMap:u,$=t.Text,J=t.Comment,Y=t.DOMParser,Q=t.trustedTypes,X=p.prototype,Z=S(X,"cloneNode"),ee=S(X,"nextSibling"),te=S(X,"childNodes"),ne=S(X,"parentNode");if("function"==typeof l){var ae=i.createElement("template");ae.content&&ae.content.ownerDocument&&(i=ae.content.ownerDocument)}var ie=K(Q,a),re=ie&&Le?ie.createHTML(""):"",oe=i,le=oe.implementation,se=oe.createNodeIterator,pe=oe.createDocumentFragment,ce=oe.getElementsByTagName,ue=a.importNode,de={};try{de=E(i).documentMode?i.documentMode:{}}catch(e){}var me={};n.isSupported="function"==typeof ne&&le&&void 0!==le.createHTMLDocument&&9!==de;var fe=L,ge=U,he=F,ye=z,_e=H,ve=j,be=B,we=null,Ce=A({},[].concat(G(T),G(R),G(k),G(P),G(I))),Ae=null,Ee=A({},[].concat(G(q),G(N),G(D),G(M))),Se=null,Te=null,Re=!0,ke=!0,xe=!1,Pe=!1,Oe=!1,Ie=!1,qe=!1,Ne=!1,De=!1,Me=!0,Le=!1,Ue=!0,Fe=!0,ze=!1,Be={},He=A({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),je=null,We=A({},["audio","video","img","source","image","track"]),Ge=null,Ve=A({},["alt","class","for","id","label","name","pattern","placeholder","summary","title","value","style","xmlns"]),Ke="http://www.w3.org/1998/Math/MathML",$e="http://www.w3.org/2000/svg",Je="http://www.w3.org/1999/xhtml",Ye=Je,Qe=!1,Xe=null,Ze=i.createElement("form"),et=function(e){Xe&&Xe===e||(e&&"object"===(void 0===e?"undefined":W(e))||(e={}),e=E(e),we="ALLOWED_TAGS"in e?A({},e.ALLOWED_TAGS):Ce,Ae="ALLOWED_ATTR"in e?A({},e.ALLOWED_ATTR):Ee,Ge="ADD_URI_SAFE_ATTR"in e?A(E(Ve),e.ADD_URI_SAFE_ATTR):Ve,je="ADD_DATA_URI_TAGS"in e?A(E(We),e.ADD_DATA_URI_TAGS):We,Se="FORBID_TAGS"in e?A({},e.FORBID_TAGS):{},Te="FORBID_ATTR"in e?A({},e.FORBID_ATTR):{},Be="USE_PROFILES"in e&&e.USE_PROFILES,Re=!1!==e.ALLOW_ARIA_ATTR,ke=!1!==e.ALLOW_DATA_ATTR,xe=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Pe=e.SAFE_FOR_TEMPLATES||!1,Oe=e.WHOLE_DOCUMENT||!1,Ne=e.RETURN_DOM||!1,De=e.RETURN_DOM_FRAGMENT||!1,Me=!1!==e.RETURN_DOM_IMPORT,Le=e.RETURN_TRUSTED_TYPE||!1,qe=e.FORCE_BODY||!1,Ue=!1!==e.SANITIZE_DOM,Fe=!1!==e.KEEP_CONTENT,ze=e.IN_PLACE||!1,be=e.ALLOWED_URI_REGEXP||be,Ye=e.NAMESPACE||Je,Pe&&(ke=!1),De&&(Ne=!0),Be&&(we=A({},[].concat(G(I))),Ae=[],!0===Be.html&&(A(we,T),A(Ae,q)),!0===Be.svg&&(A(we,R),A(Ae,N),A(Ae,M)),!0===Be.svgFilters&&(A(we,k),A(Ae,N),A(Ae,M)),!0===Be.mathMl&&(A(we,P),A(Ae,D),A(Ae,M))),e.ADD_TAGS&&(we===Ce&&(we=E(we)),A(we,e.ADD_TAGS)),e.ADD_ATTR&&(Ae===Ee&&(Ae=E(Ae)),A(Ae,e.ADD_ATTR)),e.ADD_URI_SAFE_ATTR&&A(Ge,e.ADD_URI_SAFE_ATTR),Fe&&(we["#text"]=!0),Oe&&A(we,["html","head","body"]),we.table&&(A(we,["tbody"]),delete Se.tbody),r&&r(e),Xe=e)},tt=A({},["mi","mo","mn","ms","mtext"]),nt=A({},["foreignobject","desc","title","annotation-xml"]),at=A({},R);A(at,k),A(at,x);var it=A({},P);A(it,O);var rt=function(e){var t=ne(e);t&&t.tagName||(t={namespaceURI:Je,tagName:"template"});var n=g(e.tagName),a=g(t.tagName);if(e.namespaceURI===$e)return t.namespaceURI===Je?"svg"===n:t.namespaceURI===Ke?"svg"===n&&("annotation-xml"===a||tt[a]):Boolean(at[n]);if(e.namespaceURI===Ke)return t.namespaceURI===Je?"math"===n:t.namespaceURI===$e?"math"===n&&nt[a]:Boolean(it[n]);if(e.namespaceURI===Je){if(t.namespaceURI===$e&&!nt[a])return!1;if(t.namespaceURI===Ke&&!tt[a])return!1;var i=A({},["title","style","font","a","script"]);return!it[n]&&(i[n]||!at[n])}return!1},ot=function(e){f(n.removed,{element:e});try{e.parentNode.removeChild(e)}catch(t){try{e.outerHTML=re}catch(t){e.remove()}}},lt=function(e,t){try{f(n.removed,{attribute:t.getAttributeNode(e),from:t})}catch(e){f(n.removed,{attribute:null,from:t})}if(t.removeAttribute(e),"is"===e&&!Ae[e])if(Ne||De)try{ot(t)}catch(e){}else try{t.setAttribute(e,"")}catch(e){}},st=function(e){var t=void 0,n=void 0;if(qe)e=" "+e;else{var a=h(e,/^[\r\n\t ]+/);n=a&&a[0]}var r=ie?ie.createHTML(e):e;if(Ye===Je)try{t=(new Y).parseFromString(r,"text/html")}catch(e){}if(!t||!t.documentElement){t=le.createDocument(Ye,"template",null);try{t.documentElement.innerHTML=Qe?"":r}catch(e){}}var o=t.body||t.documentElement;return e&&n&&o.insertBefore(i.createTextNode(n),o.childNodes[0]||null),Ye===Je?ce.call(t,Oe?"html":"body")[0]:Oe?t.documentElement:o},pt=function(e){return se.call(e.ownerDocument||e,e,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT,null,!1)},ct=function(e){return!(e instanceof $||e instanceof J||"string"==typeof e.nodeName&&"string"==typeof e.textContent&&"function"==typeof e.removeChild&&e.attributes instanceof C&&"function"==typeof e.removeAttribute&&"function"==typeof e.setAttribute&&"string"==typeof e.namespaceURI&&"function"==typeof e.insertBefore)},ut=function(e){return"object"===(void 0===s?"undefined":W(s))?e instanceof s:e&&"object"===(void 0===e?"undefined":W(e))&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName},dt=function(e,t,a){me[e]&&d(me[e],(function(e){e.call(n,t,a,Xe)}))},mt=function(e){var t=void 0;if(dt("beforeSanitizeElements",e,null),ct(e))return ot(e),!0;if(h(e.nodeName,/[\u0080-\uFFFF]/))return ot(e),!0;var a=g(e.nodeName);if(dt("uponSanitizeElement",e,{tagName:a,allowedTags:we}),!ut(e.firstElementChild)&&(!ut(e.content)||!ut(e.content.firstElementChild))&&b(/<[/\w]/g,e.innerHTML)&&b(/<[/\w]/g,e.textContent))return ot(e),!0;if(!we[a]||Se[a]){if(Fe&&!He[a]){var i=ne(e)||e.parentNode,r=te(e)||e.childNodes;if(r&&i)for(var o=r.length-1;o>=0;--o)i.insertBefore(Z(r[o],!0),ee(e))}return ot(e),!0}return e instanceof p&&!rt(e)?(ot(e),!0):"noscript"!==a&&"noembed"!==a||!b(/<\/no(script|embed)/i,e.innerHTML)?(Pe&&3===e.nodeType&&(t=e.textContent,t=y(t,fe," "),t=y(t,ge," "),e.textContent!==t&&(f(n.removed,{element:e.cloneNode()}),e.textContent=t)),dt("afterSanitizeElements",e,null),!1):(ot(e),!0)},ft=function(e,t,n){if(Ue&&("id"===t||"name"===t)&&(n in i||n in Ze))return!1;if(ke&&!Te[t]&&b(he,t));else if(Re&&b(ye,t));else{if(!Ae[t]||Te[t])return!1;if(Ge[t]);else if(b(be,y(n,ve,"")));else if("src"!==t&&"xlink:href"!==t&&"href"!==t||"script"===e||0!==_(n,"data:")||!je[e])if(xe&&!b(_e,y(n,ve,"")));else if(n)return!1}return!0},gt=function(e){var t=void 0,a=void 0,i=void 0,r=void 0;dt("beforeSanitizeAttributes",e,null);var o=e.attributes;if(o){var l={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Ae};for(r=o.length;r--;){var s=t=o[r],p=s.name,c=s.namespaceURI;if(a=v(t.value),i=g(p),l.attrName=i,l.attrValue=a,l.keepAttr=!0,l.forceKeepAttr=void 0,dt("uponSanitizeAttribute",e,l),a=l.attrValue,!l.forceKeepAttr&&(lt(p,e),l.keepAttr))if(b(/\/>/i,a))lt(p,e);else{Pe&&(a=y(a,fe," "),a=y(a,ge," "));var u=e.nodeName.toLowerCase();if(ft(u,i,a))try{c?e.setAttributeNS(c,p,a):e.setAttribute(p,a),m(n.removed)}catch(e){}}}dt("afterSanitizeAttributes",e,null)}},ht=function e(t){var n=void 0,a=pt(t);for(dt("beforeSanitizeShadowDOM",t,null);n=a.nextNode();)dt("uponSanitizeShadowNode",n,null),mt(n)||(n.content instanceof o&&e(n.content),gt(n));dt("afterSanitizeShadowDOM",t,null)};return n.sanitize=function(e,i){var r=void 0,l=void 0,p=void 0,c=void 0,u=void 0;if((Qe=!e)&&(e="\x3c!--\x3e"),"string"!=typeof e&&!ut(e)){if("function"!=typeof e.toString)throw w("toString is not a function");if("string"!=typeof(e=e.toString()))throw w("dirty is not a string, aborting")}if(!n.isSupported){if("object"===W(t.toStaticHTML)||"function"==typeof t.toStaticHTML){if("string"==typeof e)return t.toStaticHTML(e);if(ut(e))return t.toStaticHTML(e.outerHTML)}return e}if(Ie||et(i),n.removed=[],"string"==typeof e&&(ze=!1),ze);else if(e instanceof s)1===(l=(r=st("\x3c!----\x3e")).ownerDocument.importNode(e,!0)).nodeType&&"BODY"===l.nodeName||"HTML"===l.nodeName?r=l:r.appendChild(l);else{if(!Ne&&!Pe&&!Oe&&-1===e.indexOf("<"))return ie&&Le?ie.createHTML(e):e;if(!(r=st(e)))return Ne?null:re}r&&qe&&ot(r.firstChild);for(var d=pt(ze?e:r);p=d.nextNode();)3===p.nodeType&&p===c||mt(p)||(p.content instanceof o&&ht(p.content),gt(p),c=p);if(c=null,ze)return e;if(Ne){if(De)for(u=pe.call(r.ownerDocument);r.firstChild;)u.appendChild(r.firstChild);else u=r;return Me&&(u=ue.call(a,u,!0)),u}var m=Oe?r.outerHTML:r.innerHTML;return Pe&&(m=y(m,fe," "),m=y(m,ge," ")),ie&&Le?ie.createHTML(m):m},n.setConfig=function(e){et(e),Ie=!0},n.clearConfig=function(){Xe=null,Ie=!1},n.isValidAttribute=function(e,t,n){Xe||et({});var a=g(e),i=g(t);return ft(a,i,n)},n.addHook=function(e,t){"function"==typeof t&&(me[e]=me[e]||[],f(me[e],t))},n.removeHook=function(e){me[e]&&m(me[e])},n.removeHooks=function(e){me[e]&&(me[e]=[])},n.removeAllHooks=function(){me={}},n}()}()},703:function(e,t,n){"use strict";var a=n(414);function i(){}function r(){}r.resetWarningCache=i,e.exports=function(){function e(e,t,n,i,r,o){if(o!==a){var l=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw l.name="Invariant Violation",l}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:r,resetWarningCache:i};return n.PropTypes=n,n}},697:function(e,t,n){e.exports=n(703)()},414:function(e){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}},t={};function n(a){var i=t[a];if(void 0!==i)return i.exports;var r=t[a]={exports:{}};return e[a].call(r.exports,r,r.exports,n),r.exports}n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var a in t)n.o(t,a)&&!n.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},function(){"use strict";var e=window.wp.plugins,t=window.React,a=n.n(t),i=()=>a().createElement("svg",{enableBackground:"new 0 0 26.77438 26.77438",height:"26.77438px",version:"1.1",viewBox:"0 0 26.77438 26.77438",width:"26.77438px",x:"0px",xmlns:"http://www.w3.org/2000/svg",y:"0px"},a().createElement("g",null,a().createElement("g",null,a().createElement("g",null,a().createElement("path",{d:"M4.71813,13.5345v4.77055l0.00002,0.65257 c0,0.0568-0.00002,0.11365,0.00035,0.17044c0.00025,0.04783,0.00081,0.0957,0.00209,0.14355 c0.00283,0.10423,0.00899,0.20939,0.02751,0.31251c0.01879,0.10458,0.04945,0.20193,0.0978,0.29693 c0.04756,0.0934,0.10962,0.17891,0.1837,0.253c0.07406,0.07407,0.15948,0.13619,0.25284,0.18372 c0.09503,0.0484,0.19239,0.07911,0.29701,0.09791c0.10299,0.01855,0.20809,0.02465,0.31225,0.02748 c0.04783,0.0013,0.09566,0.00183,0.14351,0.00215c0.05676,0.00033,0.11354,0.00031,0.17035,0.00031l0.65231,0.00002h4.77141 c0.13713,0,0.1819-0.18436,0.05989-0.24694c-2.91487-1.49526-5.22884-3.80922-6.72409-6.72407 c-0.02514-0.04903-0.06995-0.07114-0.11456-0.07114C4.78411,13.40348,4.71813,13.45246,4.71813,13.5345 M6.20869,4.71816 c-0.05692,0-0.11382,0.00002-0.17074,0.00035C5.99004,4.71878,5.9421,4.71937,5.89418,4.72066 C5.78975,4.72349,5.68438,4.72962,5.58112,4.74818C5.47637,4.76705,5.37885,4.79772,5.28367,4.84613 C5.1901,4.89378,5.10448,4.95595,5.03024,5.03016C4.95604,5.10438,4.8938,5.18993,4.84622,5.28341 c-0.0485,0.09524-0.07925,0.19277-0.09809,0.29751C4.72958,5.68414,4.72344,5.78941,4.72059,5.89376 C4.71932,5.94165,4.71875,5.98955,4.7185,6.03746c-0.00035,0.048-0.00037,0.09602-0.00037,0.14401v0.02665v1.96427 c0,0.40087,0.07796,0.6084,0.37512,0.90561l10.99255,10.9925c0.30093,0.30094,0.50562,0.37513,0.90561,0.37513h1.96366 c0.05688,0,0.11384,0,0.17074-0.00036c0.04794-0.00028,0.09584-0.00084,0.14378-0.00216 c0.10446-0.00281,0.20978-0.00894,0.31304-0.02751c0.10479-0.01884,0.20229-0.04954,0.29747-0.09796 c0.09358-0.04766,0.17919-0.10981,0.25338-0.18402c0.07428-0.07423,0.13647-0.15976,0.18408-0.25323 c0.04852-0.09524,0.07924-0.19277,0.09809-0.29752c0.01855-0.10318,0.0247-0.20845,0.0275-0.31283 c0.0013-0.04788,0.00187-0.09577,0.00214-0.14376c0.00031-0.04819,0.00034-0.09648,0.00034-0.14476v-1.99007 c0-0.40094-0.07794-0.60844-0.37513-0.90564L9.07799,5.09329C8.77706,4.79237,8.57234,4.71818,8.17237,4.71816H6.20869 M13.53452,4.71816c-0.13717,0-0.18194,0.18436-0.05994,0.24694c2.9149,1.49524,5.22883,3.8092,6.72409,6.72407 c0.06261,0.12206,0.24697,0.07725,0.24697-0.05992V6.85873l-0.00005-0.65257c0-0.05679,0.00005-0.11363-0.00028-0.17043 c-0.00027-0.04786-0.00084-0.0957-0.00216-0.14353c-0.0028-0.10428-0.00891-0.20943-0.02746-0.31252 c-0.0188-0.1046-0.04947-0.20194-0.09784-0.29695c-0.0475-0.09343-0.10962-0.17888-0.18367-0.25297 c-0.0741-0.0741-0.15947-0.1362-0.25285-0.18375c-0.09504-0.04841-0.19239-0.0791-0.297-0.09789 c-0.10299-0.01854-0.2081-0.02468-0.31226-0.02751c-0.04781-0.00125-0.09565-0.00183-0.14348-0.00211 c-0.0568-0.00035-0.1136-0.00032-0.17037-0.00032l-0.65233-0.00002H13.53452"}))))),r=window.wp.apiFetch,o=n.n(r),l=window.wp.data,s=window.wp.editPost,p=window.wp.i18n,c=n(856),u=n.n(c),d=window.wp.coreData,m=window.wp.components,f=n(697),g=n.n(f),h=window.wp.blockEditor,y=(e,t="full")=>{const{media_details:{sizes:{[t]:{source_url:n=""}={},full:{source_url:a=""}={}}={}}={},sizes:{[t]:{url:i=""}={},full:{url:r=""}={}}={},source_url:o="",url:l=""}=e;return n||i||a||r||o||l||""};const _=({allowedTypes:e,className:t,value:n,imageSize:i,onReset:r,onUpdate:o})=>{const{media:s=null}=(0,l.useSelect)((e=>({media:e("core").getMedia(n)})),[n]);return 0!==n&&null===s?a().createElement(m.Spinner,null):a().createElement("div",{className:t,style:{backgroundColor:"#007CBA",display:"inline-block",position:"relative"}},a().createElement(h.MediaUploadCheck,null,a().createElement(h.MediaUpload,{title:(0,p.__)("Select/add File","apple-news"),onSelect:o,allowedTypes:e,value:n,render:({open:e})=>a().createElement(a().Fragment,null,0!==n&&null!==s?a().createElement("div",null,a().createElement("img",{alt:"",src:y(s,i)}),a().createElement("div",{style:{background:"white",left:"50%",padding:5,position:"absolute",top:"50%",transform:"translate(-50%, -50%)",zIndex:10}},a().createElement(m.Button,{isPrimary:!0,isLarge:!0,onClick:e,style:{marginBottom:0}},(0,p.__)("Replace File","apple-news")),a().createElement(m.Button,{isLink:!0,isDestructive:!0,onClick:r,style:{marginBottom:0}},(0,p.__)("Remove File","apple-news")))):null,0===n?a().createElement("div",{style:{background:"white",padding:5}},a().createElement(m.Button,{isPrimary:!0,onClick:e},(0,p.__)("Select/add File","apple-news"))):null)})))};_.defaultProps={allowedTypes:[],className:"",imageSize:"thumbnail"},_.propTypes={allowedTypes:g().arrayOf([g().string]),className:g().string,value:g().number.isRequired,imageSize:g().string,onReset:g().func.isRequired,onUpdate:g().func.isRequired};var v=_;const b=({className:e,imageSize:t,onReset:n,onUpdate:i,value:r})=>a().createElement(v,{className:e,allowedTypes:["image"],imageSize:t,onUpdate:i,onReset:n,value:r});b.defaultProps={className:"",imageSize:"thumbnail"},b.propTypes={className:g().string,imageSize:g().string,onReset:g().func.isRequired,onUpdate:g().func.isRequired,value:g().number.isRequired};var w=b;const C=({coverImageCaption:e,coverImageId:t,onChangeCoverImageCaption:n,onChangeCoverImageId:i})=>a().createElement(m.PanelBody,{initialOpen:!1,title:(0,p.__)("Cover Image","apple-news")},a().createElement(m.BaseControl,null,a().createElement(w,{onReset:()=>i(0),onUpdate:({id:e})=>i(e),value:t})),a().createElement(m.TextareaControl,{help:(0,p.__)("This is optional and can be left blank.","apple-news"),label:(0,p.__)("Caption","apple-news"),onChange:n,placeholder:(0,p.__)("Add an image caption here.","apple-news"),value:e}));C.propTypes={coverImageCaption:g().string.isRequired,coverImageId:g().number.isRequired,onChangeCoverImageCaption:g().func.isRequired,onChangeCoverImageId:g().func.isRequired};var A=C;const E=({maturityRating:e,onChangeMaturityRating:t})=>a().createElement(m.PanelBody,{initialOpen:!1,title:(0,p.__)("Maturity Rating","apple-news")},a().createElement(m.SelectControl,{help:(0,p.__)("Select the optional maturity rating for this post.","apple-news"),label:(0,p.__)("Select Maturity Rating","apple-news"),onChange:t,options:[{label:"",value:""},{label:(0,p.__)("Kids","apple-news"),value:"KIDS"},{label:(0,p.__)("Mature","apple-news"),value:"MATURE"},{label:(0,p.__)("General","apple-news"),value:"GENERAL"}],value:e}));E.propTypes={maturityRating:g().string.isRequired,onChangeMaturityRating:g().func.isRequired};var S=E;const T={key:g().string.isRequired,type:g().oneOf(["array","boolean","number","string"]),value:g().oneOfType([g().arrayOf(g().string),g().bool,g().number,g().string])},R={id:g().string.isRequired,name:g().string.isRequired};var k=(e,t,n,a)=>{const i=e.map((e=>({...e})));return i[a][t]=n,i};const x=({isHidden:e,isPaid:t,isPreview:n,isSponsored:i,metadata:r,onChangeIsHidden:o,onChangeIsPaid:l,onChangeIsPreview:s,onChangeIsSponsored:c,onChangeMetadata:u})=>a().createElement(m.PanelBody,{initialOpen:!1,title:(0,p.__)("Metadata","apple-news")},a().createElement(m.CheckboxControl,{checked:t,help:(0,p.__)("Check this to indicate that viewing the article requires a paid subscription. Note that Apple must approve your channel for paid content before using this feature.","apple-news"),label:(0,p.__)("Paid Article","apple-news"),onChange:l}),a().createElement(m.CheckboxControl,{checked:n,help:(0,p.__)("Check this to publish the article as a draft.","apple-news"),label:(0,p.__)("Preview Article","apple-news"),onChange:s}),a().createElement(m.CheckboxControl,{checked:e,help:(0,p.__)("Check this to publish the article as a hidden article. Hidden articles are visible to users who have a link to the article, but do not appear in feeds.","apple-news"),label:(0,p.__)("Hidden Article","apple-news"),onChange:o}),a().createElement(m.CheckboxControl,{checked:i,help:(0,p.__)("Check this to indicate this article is sponsored content.","apple-news"),label:(0,p.__)("Sponsored Article","apple-news"),onChange:c}),a().createElement("h3",null,(0,p.__)("Custom Metadata","apple-news")),r.map((({key:e,type:t,value:n},i)=>a().createElement("div",{key:i},a().createElement(m.TextControl,{label:(0,p.__)("Key","apple-news"),onChange:e=>u(k(r,"key",e,i)),value:e}),a().createElement(m.SelectControl,{label:(0,p.__)("Type","apple-news"),onChange:e=>u(k(r,"type",e,i)),options:[{label:(0,p.__)("string","apple-news"),value:"string"},{label:(0,p.__)("boolean","apple-news"),value:"boolean"},{label:(0,p.__)("number","apple-news"),value:"number"},{label:(0,p.__)("array","apple-news"),value:"array"}],value:t}),"boolean"===t?a().createElement(m.SelectControl,{label:(0,p.__)("Value","apple-news"),onChange:e=>u(k(r,"value","true"===e,i)),options:[{label:(0,p.__)("","apple-news"),value:""},{label:(0,p.__)("true","apple-news"),value:"true"},{label:(0,p.__)("false","apple-news"),value:"false"}],value:n}):a().createElement(m.TextControl,{label:(0,p.__)("Value","apple-news"),onChange:e=>u(k(r,"value","number"===t?parseFloat(e):e,i)),type:"number"===t?"number":"text",value:n}),a().createElement(m.Button,{isDestructive:!0,onClick:()=>u(((e,t)=>e.filter(((e,n)=>t!==n)))(r,i)),style:{marginBottom:"1em"}},(0,p.__)("Remove","apple-news"))))),a().createElement(m.Button,{isPrimary:!0,onClick:()=>u([...r,{key:"",type:"string",value:""}])},(0,p.__)("Add Metadata","apple-news")));x.propTypes={isHidden:g().bool.isRequired,isPaid:g().bool.isRequired,isPreview:g().bool.isRequired,isSponsored:g().bool.isRequired,metadata:g().arrayOf(g().shape(T)).isRequired,onChangeIsHidden:g().func.isRequired,onChangeIsPaid:g().func.isRequired,onChangeIsPreview:g().func.isRequired,onChangeIsSponsored:g().func.isRequired,onChangeMetadata:g().func.isRequired};var P=x;const O=({apiAutosync:e,apiAutosyncDelete:t,apiAutosyncUpdate:n,deletePost:i,loading:r,postIsDirty:o,postStatus:l,publishPost:s,publishState:c,updatePost:u,userCanPublish:d})=>"publish"===l&&d?r?a().createElement(m.Spinner,null):a().createElement(a().Fragment,null,o?a().createElement("div",{className:"components-notice is-warning"},a().createElement("strong",null,(0,p.__)("Please click the Update button above to ensure that all changes are saved before publishing to Apple News.","apple-news"))):null,"N/A"===c||n?null:a().createElement(m.Button,{isPrimary:!0,onClick:u,style:{margin:"1em"}},(0,p.__)("Update","apple-news")),"N/A"===c||t?null:a().createElement(m.Button,{isSecondary:!0,onClick:i,style:{margin:"1em"}},(0,p.__)("Delete","apple-news")),"N/A"!==c||e?null:a().createElement(m.Button,{isPrimary:!0,onClick:s,style:{margin:"1em"}},(0,p.__)("Publish","apple-news"))):null;O.propTypes={apiAutosync:g().bool.isRequired,apiAutosyncDelete:g().bool.isRequired,apiAutosyncUpdate:g().bool.isRequired,deletePost:g().func.isRequired,loading:g().bool.isRequired,postIsDirty:g().bool.isRequired,postStatus:g().string.isRequired,publishPost:g().func.isRequired,publishState:g().string.isRequired,updatePost:g().func.isRequired,userCanPublish:g().bool.isRequired};var I=O;const q=({apiId:e,dateCreated:t,dateModified:n,revision:i,shareUrl:r,publishState:o})=>o&&"N/A"!==o?a().createElement(m.PanelBody,{initialOpen:!1,title:(0,p.__)("Publish Information","apple-news")},a().createElement("h3",null,(0,p.__)("API Id","apple-news")),a().createElement("p",null,e),a().createElement("h3",null,(0,p.__)("Created On","apple-news")),a().createElement("p",null,t),a().createElement("h3",null,(0,p.__)("Last Updated On","apple-news")),a().createElement("p",null,n),a().createElement("h3",null,(0,p.__)("Share URL","apple-news")),a().createElement("p",null,r),a().createElement("h3",null,(0,p.__)("Revision","apple-news")),a().createElement("p",null,i),a().createElement("h3",null,(0,p.__)("Publish State","apple-news")),a().createElement("p",null,o)):null;q.propTypes={apiId:g().string.isRequired,dateCreated:g().string.isRequired,dateModified:g().string.isRequired,revision:g().string.isRequired,shareUrl:g().string.isRequired,publishState:g().string.isRequired};var N=q;const D=({onChangePullquotePosition:e,onChangePullquoteText:t,pullquotePosition:n,pullquoteText:i})=>a().createElement(m.PanelBody,{initialOpen:!1,title:(0,p.__)("Pull Quote","apple-news")},a().createElement(m.TextareaControl,{help:(0,p.__)("A pull quote is a key phrase, quotation, or excerpt that has been pulled from an article and used as a graphic element, serving to entice readers into the article or to highlight a key topic. This is optional and can be left blank.","apple-news"),label:(0,p.__)("Pull Quote Text","apple-news"),onChange:t,value:i}),a().createElement(m.SelectControl,{help:(0,p.__)("The position in the article where the pull quote will appear.","apple-news"),label:(0,p.__)("Pull Quote Position","apple-news"),onChange:e,options:[{label:(0,p.__)("top","apple-news"),value:"top"},{label:(0,p.__)("middle","apple-news"),value:"middle"},{label:(0,p.__)("bottom","apple-news"),value:"bottom"}],value:n||"middle"}));D.propTypes={onChangePullquotePosition:g().func.isRequired,onChangePullquoteText:g().func.isRequired,pullquotePosition:g().string.isRequired,pullquoteText:g().string.isRequired};var M=D;const L=({autoAssignCategories:e,automaticAssignment:t,onChangeAutoAssignCategories:n,onChangeSelectedSections:i,sections:r,selectedSections:o})=>a().createElement(m.PanelBody,{initialOpen:!1,title:(0,p.__)("Sections","apple-news")},Array.isArray(r)&&0!==r.length?a().createElement(a().Fragment,null,t?a().createElement(m.CheckboxControl,{checked:e,label:(0,p.__)("Assign sections by category","apple-news"),onChange:n}):null,t&&!e?a().createElement("hr",null):null,t&&e?null:a().createElement(m.BaseControl,{help:(0,p.__)("Select the sections in which to publish this article. If none are selected, it will be published to the default section.","apple-news")},r.map((({id:e,name:t})=>a().createElement(m.CheckboxControl,{checked:o.includes(e),key:e,label:t,onChange:()=>i(e)}))))):a().createElement(m.Spinner,null));L.propTypes={autoAssignCategories:g().bool.isRequired,automaticAssignment:g().bool.isRequired,onChangeAutoAssignCategories:g().func.isRequired,onChangeSelectedSections:g().func.isRequired,sections:g().arrayOf(g().shape(R)).isRequired,selectedSections:g().arrayOf(g().string).isRequired};var U=L;const F=({onChangeSlug:e,slug:t})=>a().createElement(m.PanelBody,{initialOpen:!1,title:(0,p.__)("Slug","apple-news")},a().createElement(m.TextControl,{help:(0,p.__)("A word or phrase that will appear near the title, if the Slug component is enabled in theme settings. This is optional and can be left blank.","apple-news"),label:(0,p.__)("Slug Text","apple-news"),onChange:e,value:t}));F.propTypes={onChangeSlug:g().func.isRequired,slug:g().string.isRequired};var z=F,B=e=>{const t=(e=>{try{return JSON.parse(e)}catch(e){return null}})(e);return Array.isArray(t)?t:[]};(0,e.registerPlugin)("publish-to-apple-news",{icon:a().createElement(i,null),render:()=>{const[e,n]=(0,t.useState)({autoAssignCategories:!1,loading:!1,publishState:"N/A",sections:[],settings:{apiAutosync:!1,apiAutosyncDelete:!1,apiAutosyncUpdate:!1,automaticAssignment:!1},userCanPublish:!1}),{autoAssignCategories:i,loading:r,publishState:c,sections:m,settings:{apiAutosync:f,apiAutosyncDelete:g,apiAutosyncUpdate:h,automaticAssignment:y},userCanPublish:_}=e,v=(0,l.useDispatch)("core/notices"),{notices:b,postId:w,postIsDirty:C,postStatus:E}=(0,l.useSelect)((e=>{const t=e("core/editor");return{notices:t.getEditedPostAttribute("apple_news_notices"),postId:t.getCurrentPostId(),postIsDirty:t.isEditedPostDirty(),postStatus:t.getEditedPostAttribute("status")}})),[{apple_news_api_created_at:T="",apple_news_api_id:R="",apple_news_api_modified_at:k="",apple_news_api_revision:x="",apple_news_api_share_url:O="",apple_news_coverimage:q=0,apple_news_coverimage_caption:D="",apple_news_is_hidden:L=!1,apple_news_is_paid:F=!1,apple_news_is_preview:H=!1,apple_news_is_sponsored:j=!1,apple_news_maturity_rating:W="",apple_news_metadata:G="",apple_news_pullquote:V="",apple_news_pullquote_position:K="",apple_news_sections:$="",apple_news_slug:J=""},Y]=((e=null,t=null)=>{const n=(0,l.useSelect)((t=>e||t("core/editor").getCurrentPostType()),[]),[a,i]=(0,d.useEntityProp)("postType",n,"meta",t);return[a,(e,t)=>i({...a,[e]:t})]})(),Q=B(G),X=B($),Z=(0,t.useCallback)(((e,t="success")=>"success"===t?v.createInfoNotice(u().sanitize(e),{type:"snackbar"}):v.createErrorNotice(u().sanitize(e))),[v]),ee=async t=>{n({...e,loading:!0});try{const{notifications:a=[],publishState:i=""}=await o()({data:{id:w},method:"POST",path:`/apple-news/v1/${t}`});a.forEach((e=>Z(e.message,e.type))),n({...e,loading:!1,publishState:i})}catch(t){Z(t.message,"error"),n({...e,loading:!1})}};return(0,t.useEffect)((()=>{(async()=>{const t=[await o()({path:`/apple-news/v1/get-published-state/${w}`}),await o()({path:"/apple-news/v1/sections"}),await o()({path:"/apple-news/v1/get-settings"}),await o()({path:`/apple-news/v1/user-can-publish/${w}`})];try{const a=await Promise.all(t);n({...e,autoAssignCategories:(null===X||0===X.length)&&!0===a[2].automaticAssignment,...a[0],sections:a[1],settings:a[2],...a[3]})}catch(e){Z(e.message,"error")}})()}),[]),(0,t.useEffect)((()=>{b.forEach((e=>Z(e.message,e.type)))}),[Z,b]),a().createElement(a().Fragment,null,a().createElement(s.PluginSidebarMoreMenuItem,{target:"publish-to-apple-news"},(0,p.__)("Apple News Options","apple-news")),a().createElement(s.PluginSidebar,{name:"publish-to-apple-news",title:(0,p.__)("Publish to Apple News Options","apple-news")},a().createElement(U,{autoAssignCategories:i,automaticAssignment:y,onChangeAutoAssignCategories:t=>{n({...e,autoAssignCategories:t}),Y("apple_news_sections","")},onChangeSelectedSections:e=>Y("apple_news_sections",X.includes(e)?JSON.stringify(X.filter((t=>t!==e))):JSON.stringify([...X,e])),sections:m,selectedSections:X}),a().createElement(P,{isHidden:L,isPaid:F,isPreview:H,isSponsored:j,metadata:Q,onChangeIsHidden:e=>Y("apple_news_is_hidden",e),onChangeIsPaid:e=>Y("apple_news_is_paid",e),onChangeIsPreview:e=>Y("apple_news_is_preview",e),onChangeIsSponsored:e=>Y("apple_news_is_sponsored",e),onChangeMetadata:e=>Y("apple_news_metadata",JSON.stringify(e))}),a().createElement(S,{maturityRating:W,onChangeMaturityRating:e=>Y("apple_news_maturity_rating",e)}),a().createElement(z,{onChangeSlug:e=>Y("apple_news_slug",e),slug:J}),a().createElement(M,{onChangePullquotePosition:e=>Y("apple_news_pullquote_position",e),onChangePullquoteText:e=>Y("apple_news_pullquote",e),pullquotePosition:K,pullquoteText:V}),a().createElement(A,{coverImageCaption:D,coverImageId:q,onChangeCoverImageCaption:e=>Y("apple_news_coverimage_caption",e),onChangeCoverImageId:e=>Y("apple_news_coverimage",e)}),"N/A"!==c?a().createElement(N,{apiId:R,dateCreated:T,dateModified:k,publishState:c,revision:x,shareUrl:O}):null,a().createElement(I,{apiAutosync:f,apiAutosyncDelete:g,apiAutosyncUpdate:h,deletePost:()=>ee("delete"),loading:r,postIsDirty:C,postStatus:E,publishPost:()=>ee("publish"),publishState:c,updatePost:()=>ee("update"),userCanPublish:_})))}})}()}();
+//# sourceMappingURL=pluginSidebar.js.map
\ No newline at end of file
diff --git a/build/pluginSidebar.js.LICENSE.txt b/build/pluginSidebar.js.LICENSE.txt
new file mode 100644
index 000000000..f0abe65ef
--- /dev/null
+++ b/build/pluginSidebar.js.LICENSE.txt
@@ -0,0 +1 @@
+/*! @license DOMPurify 2.3.0 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.3.0/LICENSE */
diff --git a/build/pluginSidebar.js.map b/build/pluginSidebar.js.map
new file mode 100644
index 000000000..d612fc5aa
--- /dev/null
+++ b/build/pluginSidebar.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack://publish-to-apple-news/./node_modules/dompurify/dist/purify.js","webpack://publish-to-apple-news/./node_modules/prop-types/factoryWithThrowingShims.js","webpack://publish-to-apple-news/./node_modules/prop-types/index.js","webpack://publish-to-apple-news/./node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack://publish-to-apple-news/webpack/bootstrap","webpack://publish-to-apple-news/webpack/runtime/compat get default export","webpack://publish-to-apple-news/webpack/runtime/define property getters","webpack://publish-to-apple-news/webpack/runtime/hasOwnProperty shorthand","webpack://publish-to-apple-news/external [\"wp\",\"plugins\"]","webpack://publish-to-apple-news/external \"React\"","webpack://publish-to-apple-news/./assets/js/components/icon/index.jsx","webpack://publish-to-apple-news/external [\"wp\",\"apiFetch\"]","webpack://publish-to-apple-news/external [\"wp\",\"data\"]","webpack://publish-to-apple-news/external [\"wp\",\"editPost\"]","webpack://publish-to-apple-news/external [\"wp\",\"i18n\"]","webpack://publish-to-apple-news/external [\"wp\",\"coreData\"]","webpack://publish-to-apple-news/external [\"wp\",\"components\"]","webpack://publish-to-apple-news/external [\"wp\",\"blockEditor\"]","webpack://publish-to-apple-news/./assets/js/services/media/get-media-url.js","webpack://publish-to-apple-news/./assets/js/components/media-picker/index.jsx","webpack://publish-to-apple-news/./assets/js/components/image-picker/index.jsx","webpack://publish-to-apple-news/./assets/js/pluginsidebar/panels/cover-image.jsx","webpack://publish-to-apple-news/./assets/js/pluginsidebar/panels/maturity-rating.jsx","webpack://publish-to-apple-news/./assets/js/config/prop-types.js","webpack://publish-to-apple-news/./assets/js/util/delete-at-index.js","webpack://publish-to-apple-news/./assets/js/util/update-value-at-index.js","webpack://publish-to-apple-news/./assets/js/pluginsidebar/panels/metadata.jsx","webpack://publish-to-apple-news/./assets/js/pluginsidebar/panels/publish-controls.jsx","webpack://publish-to-apple-news/./assets/js/pluginsidebar/panels/publish-info.jsx","webpack://publish-to-apple-news/./assets/js/pluginsidebar/panels/pull-quote.jsx","webpack://publish-to-apple-news/./assets/js/pluginsidebar/panels/sections.jsx","webpack://publish-to-apple-news/./assets/js/pluginsidebar/panels/slug.jsx","webpack://publish-to-apple-news/./assets/js/util/safe-json-parse-array.js","webpack://publish-to-apple-news/./assets/js/util/safe-json-parse.js","webpack://publish-to-apple-news/./assets/js/pluginsidebar/index.jsx","webpack://publish-to-apple-news/./assets/js/pluginsidebar/sidebar.jsx","webpack://publish-to-apple-news/./assets/js/services/hooks/use-post-meta/index.js"],"names":["module","exports","hasOwnProperty","Object","setPrototypeOf","isFrozen","getPrototypeOf","getOwnPropertyDescriptor","freeze","seal","create","_ref","Reflect","apply","construct","fun","thisValue","args","x","Func","Function","prototype","bind","concat","arr","Array","isArray","i","arr2","length","from","_toConsumableArray","func","arrayForEach","unapply","forEach","arrayPop","pop","arrayPush","push","stringToLowerCase","String","toLowerCase","stringMatch","match","stringReplace","replace","stringIndexOf","indexOf","stringTrim","trim","regExpTest","RegExp","test","typeErrorCreate","TypeError","_len2","arguments","_key2","thisArg","_len","_key","addToSet","set","array","l","element","lcElement","clone","object","newObject","property","lookupGetter","prop","desc","get","value","console","warn","html","svg","svgFilters","svgDisallowed","mathMl","mathMlDisallowed","text","html$1","svg$1","mathMl$1","xml","MUSTACHE_EXPR","ERB_EXPR","DATA_ATTR","ARIA_ATTR","IS_ALLOWED_URI","IS_SCRIPT_OR_DATA","ATTR_WHITESPACE","_typeof","Symbol","iterator","obj","constructor","_toConsumableArray$1","getGlobal","window","_createTrustedTypesPolicy","trustedTypes","document","createPolicy","suffix","ATTR_NAME","currentScript","hasAttribute","getAttribute","policyName","createHTML","html$$1","_","createDOMPurify","undefined","DOMPurify","root","version","removed","nodeType","isSupported","originalDocument","DocumentFragment","HTMLTemplateElement","Node","Element","NodeFilter","_window$NamedNodeMap","NamedNodeMap","MozNamedAttrMap","Text","Comment","DOMParser","ElementPrototype","cloneNode","getNextSibling","getChildNodes","getParentNode","template","createElement","content","ownerDocument","trustedTypesPolicy","emptyHTML","RETURN_TRUSTED_TYPE","_document","implementation","createNodeIterator","createDocumentFragment","getElementsByTagName","importNode","documentMode","hooks","createHTMLDocument","MUSTACHE_EXPR$$1","ERB_EXPR$$1","DATA_ATTR$$1","ARIA_ATTR$$1","IS_SCRIPT_OR_DATA$$1","ATTR_WHITESPACE$$1","IS_ALLOWED_URI$$1","ALLOWED_TAGS","DEFAULT_ALLOWED_TAGS","ALLOWED_ATTR","DEFAULT_ALLOWED_ATTR","FORBID_TAGS","FORBID_ATTR","ALLOW_ARIA_ATTR","ALLOW_DATA_ATTR","ALLOW_UNKNOWN_PROTOCOLS","SAFE_FOR_TEMPLATES","WHOLE_DOCUMENT","SET_CONFIG","FORCE_BODY","RETURN_DOM","RETURN_DOM_FRAGMENT","RETURN_DOM_IMPORT","SANITIZE_DOM","KEEP_CONTENT","IN_PLACE","USE_PROFILES","FORBID_CONTENTS","DATA_URI_TAGS","DEFAULT_DATA_URI_TAGS","URI_SAFE_ATTRIBUTES","DEFAULT_URI_SAFE_ATTRIBUTES","MATHML_NAMESPACE","SVG_NAMESPACE","HTML_NAMESPACE","NAMESPACE","IS_EMPTY_INPUT","CONFIG","formElement","_parseConfig","cfg","ADD_URI_SAFE_ATTR","ADD_DATA_URI_TAGS","ALLOWED_URI_REGEXP","ADD_TAGS","ADD_ATTR","table","tbody","MATHML_TEXT_INTEGRATION_POINTS","HTML_INTEGRATION_POINTS","ALL_SVG_TAGS","ALL_MATHML_TAGS","_checkValidNamespace","parent","tagName","namespaceURI","parentTagName","Boolean","commonSvgAndHTMLElements","_forceRemove","node","parentNode","removeChild","outerHTML","remove","_removeAttribute","name","attribute","getAttributeNode","removeAttribute","setAttribute","_initDocument","dirty","doc","leadingWhitespace","matches","dirtyPayload","parseFromString","documentElement","createDocument","innerHTML","body","insertBefore","createTextNode","childNodes","call","_createIterator","SHOW_ELEMENT","SHOW_COMMENT","SHOW_TEXT","_isClobbered","elm","nodeName","textContent","attributes","_isNode","_executeHook","entryPoint","currentNode","data","hook","_sanitizeElements","allowedTags","firstElementChild","_isValidAttribute","lcTag","lcName","_sanitizeAttributes","attr","hookEvent","attrName","attrValue","keepAttr","allowedAttributes","_attr","forceKeepAttr","setAttributeNS","_sanitizeShadowDOM","fragment","shadowNode","shadowIterator","nextNode","sanitize","importedNode","oldNode","returnNode","toString","toStaticHTML","appendChild","firstChild","nodeIterator","serializedHTML","setConfig","clearConfig","isValidAttribute","tag","addHook","hookFunction","removeHook","removeHooks","removeAllHooks","factory","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","props","propName","componentName","location","propFullName","secret","err","Error","getShim","isRequired","ReactPropTypes","bool","number","string","symbol","any","arrayOf","elementType","instanceOf","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","n","getter","__esModule","d","a","definition","key","o","defineProperty","enumerable","enableBackground","height","viewBox","width","xmlns","y","media","size","media_details","sizes","source_url","firstChoice","full","thirdChoice","url","secondChoice","fourthChoice","fifthChoice","sixthChoice","MediaPicker","allowedTypes","className","imageSize","onReset","onUpdate","useSelect","select","getMedia","Spinner","style","backgroundColor","display","position","MediaUploadCheck","MediaUpload","title","__","onSelect","render","open","alt","src","getMediaUrl","background","left","padding","top","transform","zIndex","Button","isPrimary","isLarge","onClick","marginBottom","isLink","isDestructive","defaultProps","propTypes","ImagePicker","CoverImage","coverImageCaption","coverImageId","onChangeCoverImageCaption","onChangeCoverImageId","PanelBody","initialOpen","BaseControl","id","TextareaControl","help","label","onChange","placeholder","MaturityRating","maturityRating","onChangeMaturityRating","SelectControl","options","METADATA_SHAPE","type","SECTION_SHAPE","values","index","valuesCopy","map","item","Metadata","isHidden","isPaid","isPreview","isSponsored","metadata","onChangeIsHidden","onChangeIsPaid","onChangeIsPreview","onChangeIsSponsored","onChangeMetadata","CheckboxControl","checked","TextControl","next","updateValueAtIndex","parseFloat","filter","idx","deleteAtIndex","PublishControls","apiAutosync","apiAutosyncDelete","apiAutosyncUpdate","deletePost","loading","postIsDirty","postStatus","publishPost","publishState","updatePost","userCanPublish","margin","isSecondary","PublishInfo","apiId","dateCreated","dateModified","revision","shareUrl","PullQuote","onChangePullquotePosition","onChangePullquoteText","pullquotePosition","pullquoteText","Sections","autoAssignCategories","automaticAssignment","onChangeAutoAssignCategories","onChangeSelectedSections","sections","selectedSections","includes","Slug","onChangeSlug","slug","parsedValue","JSON","parse","e","safeJsonParse","registerPlugin","icon","state","setState","useState","settings","dispatchNotice","useDispatch","notices","postId","editor","getEditedPostAttribute","getCurrentPostId","isEditedPostDirty","apple_news_api_created_at","apple_news_api_id","apple_news_api_modified_at","apple_news_api_revision","apple_news_api_share_url","apple_news_coverimage","apple_news_coverimage_caption","apple_news_is_hidden","apple_news_is_paid","apple_news_is_preview","apple_news_is_sponsored","apple_news_maturity_rating","apple_news_metadata","metadataRaw","apple_news_pullquote","apple_news_pullquote_position","apple_news_sections","selectedSectionsRaw","apple_news_slug","setMeta","postType","getCurrentPostType","meta","useEntityProp","usePostMeta","safeJsonParseArray","displayNotification","useCallback","message","createInfoNotice","createErrorNotice","modifyPost","async","notifications","nextPublishState","apiFetch","method","path","operation","notification","error","useEffect","fetches","Promise","all","notice","PluginSidebarMoreMenuItem","target","PluginSidebar","stringify","section"],"mappings":";mCAGiEA,EAAOC,QAGhE,WAAc,aAIpB,IAAIC,EAAiBC,OAAOD,eACxBE,EAAiBD,OAAOC,eACxBC,EAAWF,OAAOE,SAClBC,EAAiBH,OAAOG,eACxBC,EAA2BJ,OAAOI,yBAClCC,EAASL,OAAOK,OAChBC,EAAON,OAAOM,KACdC,EAASP,OAAOO,OAEhBC,EAA0B,oBAAZC,SAA2BA,QACzCC,EAAQF,EAAKE,MACbC,EAAYH,EAAKG,UAEhBD,IACHA,EAAQ,SAAeE,EAAKC,EAAWC,GACrC,OAAOF,EAAIF,MAAMG,EAAWC,KAI3BT,IACHA,EAAS,SAAgBU,GACvB,OAAOA,IAINT,IACHA,EAAO,SAAcS,GACnB,OAAOA,IAINJ,IACHA,EAAY,SAAmBK,EAAMF,GACnC,OAAO,IAAKG,SAASC,UAAUC,KAAKT,MAAMM,EAAM,CAAC,MAAMI,OAnC3D,SAA4BC,GAAO,GAAIC,MAAMC,QAAQF,GAAM,CAAE,IAAK,IAAIG,EAAI,EAAGC,EAAOH,MAAMD,EAAIK,QAASF,EAAIH,EAAIK,OAAQF,IAAOC,EAAKD,GAAKH,EAAIG,GAAM,OAAOC,EAAe,OAAOH,MAAMK,KAAKN,GAmCxHO,CAAmBd,QAIrF,IAwBqBe,EAxBjBC,EAAeC,EAAQT,MAAMJ,UAAUc,SACvCC,EAAWF,EAAQT,MAAMJ,UAAUgB,KACnCC,EAAYJ,EAAQT,MAAMJ,UAAUkB,MAEpCC,EAAoBN,EAAQO,OAAOpB,UAAUqB,aAC7CC,EAAcT,EAAQO,OAAOpB,UAAUuB,OACvCC,EAAgBX,EAAQO,OAAOpB,UAAUyB,SACzCC,EAAgBb,EAAQO,OAAOpB,UAAU2B,SACzCC,EAAaf,EAAQO,OAAOpB,UAAU6B,MAEtCC,EAAajB,EAAQkB,OAAO/B,UAAUgC,MAEtCC,GAYiBtB,EAZauB,UAazB,WACL,IAAK,IAAIC,EAAQC,UAAU5B,OAAQZ,EAAOQ,MAAM+B,GAAQE,EAAQ,EAAGA,EAAQF,EAAOE,IAChFzC,EAAKyC,GAASD,UAAUC,GAG1B,OAAO5C,EAAUkB,EAAMf,KAhB3B,SAASiB,EAAQF,GACf,OAAO,SAAU2B,GACf,IAAK,IAAIC,EAAOH,UAAU5B,OAAQZ,EAAOQ,MAAMmC,EAAO,EAAIA,EAAO,EAAI,GAAIC,EAAO,EAAGA,EAAOD,EAAMC,IAC9F5C,EAAK4C,EAAO,GAAKJ,UAAUI,GAG7B,OAAOhD,EAAMmB,EAAM2B,EAAS1C,IAehC,SAAS6C,EAASC,EAAKC,GACjB5D,GAIFA,EAAe2D,EAAK,MAItB,IADA,IAAIE,EAAID,EAAMnC,OACPoC,KAAK,CACV,IAAIC,EAAUF,EAAMC,GACpB,GAAuB,iBAAZC,EAAsB,CAC/B,IAAIC,EAAY3B,EAAkB0B,GAC9BC,IAAcD,IAEX7D,EAAS2D,KACZA,EAAMC,GAAKE,GAGbD,EAAUC,GAIdJ,EAAIG,IAAW,EAGjB,OAAOH,EAIT,SAASK,EAAMC,GACb,IAAIC,EAAY5D,EAAO,MAEnB6D,OAAW,EACf,IAAKA,KAAYF,EACXxD,EAAMX,EAAgBmE,EAAQ,CAACE,MACjCD,EAAUC,GAAYF,EAAOE,IAIjC,OAAOD,EAOT,SAASE,EAAaH,EAAQI,GAC5B,KAAkB,OAAXJ,GAAiB,CACtB,IAAIK,EAAOnE,EAAyB8D,EAAQI,GAC5C,GAAIC,EAAM,CACR,GAAIA,EAAKC,IACP,OAAOzC,EAAQwC,EAAKC,KAGtB,GAA0B,mBAAfD,EAAKE,MACd,OAAO1C,EAAQwC,EAAKE,OAIxBP,EAAS/D,EAAe+D,GAQ1B,OALA,SAAuBH,GAErB,OADAW,QAAQC,KAAK,qBAAsBZ,GAC5B,MAMX,IAAIa,EAAOvE,EAAO,CAAC,IAAK,OAAQ,UAAW,UAAW,OAAQ,UAAW,QAAS,QAAS,IAAK,MAAO,MAAO,MAAO,QAAS,aAAc,OAAQ,KAAM,SAAU,SAAU,UAAW,SAAU,OAAQ,OAAQ,MAAO,WAAY,UAAW,OAAQ,WAAY,KAAM,YAAa,MAAO,UAAW,MAAO,SAAU,MAAO,MAAO,KAAM,KAAM,UAAW,KAAM,WAAY,aAAc,SAAU,OAAQ,SAAU,OAAQ,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAAQ,SAAU,SAAU,KAAM,OAAQ,IAAK,MAAO,QAAS,MAAO,MAAO,QAAS,SAAU,KAAM,OAAQ,MAAO,OAAQ,UAAW,OAAQ,WAAY,QAAS,MAAO,OAAQ,KAAM,WAAY,SAAU,SAAU,IAAK,UAAW,MAAO,WAAY,IAAK,KAAM,KAAM,OAAQ,IAAK,OAAQ,UAAW,SAAU,SAAU,QAAS,SAAU,SAAU,OAAQ,SAAU,SAAU,QAAS,MAAO,UAAW,MAAO,QAAS,QAAS,KAAM,WAAY,WAAY,QAAS,KAAM,QAAS,OAAQ,KAAM,QAAS,KAAM,IAAK,KAAM,MAAO,QAAS,QAGj+BwE,EAAMxE,EAAO,CAAC,MAAO,IAAK,WAAY,cAAe,eAAgB,eAAgB,gBAAiB,mBAAoB,SAAU,WAAY,OAAQ,OAAQ,UAAW,SAAU,OAAQ,IAAK,QAAS,WAAY,QAAS,QAAS,OAAQ,iBAAkB,SAAU,OAAQ,WAAY,QAAS,OAAQ,UAAW,UAAW,WAAY,iBAAkB,OAAQ,OAAQ,QAAS,SAAU,SAAU,OAAQ,WAAY,QAAS,OAAQ,QAAS,OAAQ,UAEzcyE,EAAazE,EAAO,CAAC,UAAW,gBAAiB,sBAAuB,cAAe,mBAAoB,oBAAqB,oBAAqB,iBAAkB,UAAW,UAAW,UAAW,UAAW,UAAW,iBAAkB,UAAW,cAAe,eAAgB,WAAY,eAAgB,qBAAsB,cAAe,SAAU,iBAMrW0E,EAAgB1E,EAAO,CAAC,UAAW,gBAAiB,SAAU,UAAW,eAAgB,UAAW,YAAa,mBAAoB,iBAAkB,gBAAiB,gBAAiB,gBAAiB,QAAS,YAAa,OAAQ,eAAgB,YAAa,UAAW,gBAAiB,SAAU,MAAO,aAAc,UAAW,QAE3U2E,EAAS3E,EAAO,CAAC,OAAQ,WAAY,SAAU,UAAW,QAAS,SAAU,KAAM,aAAc,gBAAiB,KAAM,KAAM,QAAS,UAAW,WAAY,QAAS,OAAQ,KAAM,SAAU,QAAS,SAAU,OAAQ,OAAQ,UAAW,SAAU,MAAO,QAAS,MAAO,SAAU,eAIxR4E,EAAmB5E,EAAO,CAAC,UAAW,cAAe,aAAc,WAAY,YAAa,UAAW,UAAW,SAAU,SAAU,QAAS,YAAa,aAAc,iBAAkB,cAAe,SAE3M6E,EAAO7E,EAAO,CAAC,UAEf8E,EAAS9E,EAAO,CAAC,SAAU,SAAU,QAAS,MAAO,iBAAkB,eAAgB,uBAAwB,WAAY,aAAc,UAAW,SAAU,UAAW,cAAe,cAAe,UAAW,OAAQ,QAAS,QAAS,QAAS,OAAQ,UAAW,WAAY,eAAgB,SAAU,cAAe,WAAY,WAAY,UAAW,MAAO,WAAY,0BAA2B,wBAAyB,WAAY,YAAa,UAAW,eAAgB,OAAQ,MAAO,UAAW,SAAU,SAAU,OAAQ,OAAQ,WAAY,KAAM,YAAa,YAAa,QAAS,OAAQ,QAAS,OAAQ,OAAQ,UAAW,OAAQ,MAAO,MAAO,YAAa,QAAS,SAAU,MAAO,YAAa,WAAY,QAAS,OAAQ,UAAW,aAAc,SAAU,OAAQ,UAAW,UAAW,cAAe,cAAe,SAAU,UAAW,UAAW,aAAc,WAAY,MAAO,WAAY,MAAO,WAAY,OAAQ,OAAQ,UAAW,aAAc,QAAS,WAAY,QAAS,OAAQ,QAAS,OAAQ,UAAW,QAAS,MAAO,SAAU,OAAQ,QAAS,UAAW,WAAY,QAAS,YAAa,OAAQ,SAAU,SAAU,QAAS,QAAS,QAAS,SAE1pC+E,EAAQ/E,EAAO,CAAC,gBAAiB,aAAc,WAAY,qBAAsB,SAAU,gBAAiB,gBAAiB,UAAW,gBAAiB,iBAAkB,QAAS,OAAQ,KAAM,QAAS,OAAQ,gBAAiB,YAAa,YAAa,QAAS,sBAAuB,8BAA+B,gBAAiB,kBAAmB,KAAM,KAAM,IAAK,KAAM,KAAM,kBAAmB,YAAa,UAAW,UAAW,MAAO,WAAY,YAAa,MAAO,OAAQ,eAAgB,YAAa,SAAU,cAAe,cAAe,gBAAiB,cAAe,YAAa,mBAAoB,eAAgB,aAAc,eAAgB,cAAe,KAAM,KAAM,KAAM,KAAM,aAAc,WAAY,gBAAiB,oBAAqB,SAAU,OAAQ,KAAM,kBAAmB,KAAM,MAAO,IAAK,KAAM,KAAM,KAAM,KAAM,UAAW,YAAa,aAAc,WAAY,OAAQ,eAAgB,iBAAkB,eAAgB,mBAAoB,iBAAkB,QAAS,aAAc,aAAc,eAAgB,eAAgB,cAAe,cAAe,mBAAoB,YAAa,MAAO,OAAQ,QAAS,SAAU,OAAQ,MAAO,OAAQ,aAAc,SAAU,WAAY,UAAW,QAAS,SAAU,cAAe,SAAU,WAAY,cAAe,OAAQ,aAAc,sBAAuB,mBAAoB,eAAgB,SAAU,gBAAiB,sBAAuB,iBAAkB,IAAK,KAAM,KAAM,SAAU,OAAQ,OAAQ,cAAe,YAAa,UAAW,SAAU,SAAU,QAAS,OAAQ,kBAAmB,mBAAoB,mBAAoB,eAAgB,cAAe,eAAgB,cAAe,aAAc,eAAgB,mBAAoB,oBAAqB,iBAAkB,kBAAmB,oBAAqB,iBAAkB,SAAU,eAAgB,QAAS,eAAgB,iBAAkB,WAAY,UAAW,UAAW,YAAa,cAAe,kBAAmB,iBAAkB,aAAc,OAAQ,KAAM,KAAM,UAAW,SAAU,UAAW,aAAc,UAAW,aAAc,gBAAiB,gBAAiB,QAAS,eAAgB,OAAQ,eAAgB,mBAAoB,mBAAoB,IAAK,KAAM,KAAM,QAAS,IAAK,KAAM,KAAM,IAAK,eAE5uEgF,EAAWhF,EAAO,CAAC,SAAU,cAAe,QAAS,WAAY,QAAS,eAAgB,cAAe,aAAc,aAAc,QAAS,MAAO,UAAW,eAAgB,WAAY,QAAS,QAAS,SAAU,OAAQ,KAAM,UAAW,SAAU,gBAAiB,SAAU,SAAU,iBAAkB,YAAa,WAAY,cAAe,UAAW,UAAW,gBAAiB,WAAY,WAAY,OAAQ,WAAY,WAAY,aAAc,UAAW,SAAU,SAAU,cAAe,gBAAiB,uBAAwB,YAAa,YAAa,aAAc,WAAY,iBAAkB,iBAAkB,YAAa,UAAW,QAAS,UAEvpBiF,EAAMjF,EAAO,CAAC,aAAc,SAAU,cAAe,YAAa,gBAGlEkF,EAAgBjF,EAAK,6BACrBkF,EAAWlF,EAAK,yBAChBmF,EAAYnF,EAAK,8BACjBoF,EAAYpF,EAAK,kBACjBqF,EAAiBrF,EAAK,yFAEtBsF,EAAoBtF,EAAK,yBACzBuF,EAAkBvF,EAAK,+DAGvBwF,EAA4B,mBAAXC,QAAoD,iBAApBA,OAAOC,SAAwB,SAAUC,GAAO,cAAcA,GAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXF,QAAyBE,EAAIC,cAAgBH,QAAUE,IAAQF,OAAO7E,UAAY,gBAAkB+E,GAEtQ,SAASE,EAAqB9E,GAAO,GAAIC,MAAMC,QAAQF,GAAM,CAAE,IAAK,IAAIG,EAAI,EAAGC,EAAOH,MAAMD,EAAIK,QAASF,EAAIH,EAAIK,OAAQF,IAAOC,EAAKD,GAAKH,EAAIG,GAAM,OAAOC,EAAe,OAAOH,MAAMK,KAAKN,GAE5L,IAAI+E,EAAY,WACd,MAAyB,oBAAXC,OAAyB,KAAOA,QAW5CC,EAA4B,SAAmCC,EAAcC,GAC/E,GAAoF,iBAAvD,IAAjBD,EAA+B,YAAcT,EAAQS,KAAoE,mBAA9BA,EAAaE,aAClH,OAAO,KAMT,IAAIC,EAAS,KACTC,EAAY,wBACZH,EAASI,eAAiBJ,EAASI,cAAcC,aAAaF,KAChED,EAASF,EAASI,cAAcE,aAAaH,IAG/C,IAAII,EAAa,aAAeL,EAAS,IAAMA,EAAS,IAExD,IACE,OAAOH,EAAaE,aAAaM,EAAY,CAC3CC,WAAY,SAAoBC,GAC9B,OAAOA,KAGX,MAAOC,GAKP,OADAxC,QAAQC,KAAK,uBAAyBoC,EAAa,0BAC5C,OAimCX,OA7lCA,SAASI,IACP,IAAId,EAAS/C,UAAU5B,OAAS,QAAsB0F,IAAjB9D,UAAU,GAAmBA,UAAU,GAAK8C,IAE7EiB,EAAY,SAAmBC,GACjC,OAAOH,EAAgBG,IAezB,GARAD,EAAUE,QAAU,QAMpBF,EAAUG,QAAU,IAEfnB,IAAWA,EAAOG,UAAyC,IAA7BH,EAAOG,SAASiB,SAKjD,OAFAJ,EAAUK,aAAc,EAEjBL,EAGT,IAAIM,EAAmBtB,EAAOG,SAE1BA,EAAWH,EAAOG,SAClBoB,EAAmBvB,EAAOuB,iBAC1BC,EAAsBxB,EAAOwB,oBAC7BC,EAAOzB,EAAOyB,KACdC,EAAU1B,EAAO0B,QACjBC,EAAa3B,EAAO2B,WACpBC,EAAuB5B,EAAO6B,aAC9BA,OAAwCd,IAAzBa,EAAqC5B,EAAO6B,cAAgB7B,EAAO8B,gBAAkBF,EACpGG,EAAO/B,EAAO+B,KACdC,EAAUhC,EAAOgC,QACjBC,EAAYjC,EAAOiC,UACnB/B,EAAeF,EAAOE,aAGtBgC,EAAmBR,EAAQ7G,UAE3BsH,EAAYnE,EAAakE,EAAkB,aAC3CE,GAAiBpE,EAAakE,EAAkB,eAChDG,GAAgBrE,EAAakE,EAAkB,cAC/CI,GAAgBtE,EAAakE,EAAkB,cAQnD,GAAmC,mBAAxBV,EAAoC,CAC7C,IAAIe,GAAWpC,EAASqC,cAAc,YAClCD,GAASE,SAAWF,GAASE,QAAQC,gBACvCvC,EAAWoC,GAASE,QAAQC,eAIhC,IAAIC,GAAqB1C,EAA0BC,EAAcoB,GAC7DsB,GAAYD,IAAsBE,GAAsBF,GAAmBhC,WAAW,IAAM,GAE5FmC,GAAY3C,EACZ4C,GAAiBD,GAAUC,eAC3BC,GAAqBF,GAAUE,mBAC/BC,GAAyBH,GAAUG,uBACnCC,GAAuBJ,GAAUI,qBACjCC,GAAa7B,EAAiB6B,WAG9BC,GAAe,GACnB,IACEA,GAAexF,EAAMuC,GAAUiD,aAAejD,EAASiD,aAAe,GACtE,MAAOvC,IAET,IAAIwC,GAAQ,GAKZrC,EAAUK,YAAuC,mBAAlBiB,IAAgCS,SAA+D,IAAtCA,GAAeO,oBAAuD,IAAjBF,GAE7I,IAAIG,GAAmBrE,EACnBsE,GAAcrE,EACdsE,GAAerE,EACfsE,GAAerE,EACfsE,GAAuBpE,EACvBqE,GAAqBpE,EACrBqE,GAAoBvE,EASpBwE,GAAe,KACfC,GAAuBzG,EAAS,GAAI,GAAGvC,OAAO+E,EAAqBvB,GAAOuB,EAAqBtB,GAAMsB,EAAqBrB,GAAaqB,EAAqBnB,GAASmB,EAAqBjB,KAG1LmF,GAAe,KACfC,GAAuB3G,EAAS,GAAI,GAAGvC,OAAO+E,EAAqBhB,GAASgB,EAAqBf,GAAQe,EAAqBd,GAAWc,EAAqBb,KAG9JiF,GAAc,KAGdC,GAAc,KAGdC,IAAkB,EAGlBC,IAAkB,EAGlBC,IAA0B,EAK1BC,IAAqB,EAGrBC,IAAiB,EAGjBC,IAAa,EAIbC,IAAa,EAMbC,IAAa,EAIbC,IAAsB,EAWtBC,IAAoB,EAIpBhC,IAAsB,EAGtBiC,IAAe,EAGfC,IAAe,EAIfC,IAAW,EAGXC,GAAe,GAGfC,GAAkB5H,EAAS,GAAI,CAAC,iBAAkB,QAAS,WAAY,OAAQ,gBAAiB,OAAQ,SAAU,OAAQ,KAAM,KAAM,KAAM,KAAM,QAAS,UAAW,WAAY,WAAY,YAAa,SAAU,QAAS,MAAO,WAAY,QAAS,QAAS,QAAS,QAG5Q6H,GAAgB,KAChBC,GAAwB9H,EAAS,GAAI,CAAC,QAAS,QAAS,MAAO,SAAU,QAAS,UAGlF+H,GAAsB,KACtBC,GAA8BhI,EAAS,GAAI,CAAC,MAAO,QAAS,MAAO,KAAM,QAAS,OAAQ,UAAW,cAAe,UAAW,QAAS,QAAS,QAAS,UAE1JiI,GAAmB,qCACnBC,GAAgB,6BAChBC,GAAiB,+BAEjBC,GAAYD,GACZE,IAAiB,EAGjBC,GAAS,KAKTC,GAAc1F,EAASqC,cAAc,QAQrCsD,GAAe,SAAsBC,GACnCH,IAAUA,KAAWG,IAKpBA,GAAqE,iBAA9C,IAARA,EAAsB,YAActG,EAAQsG,MAC9DA,EAAM,IAIRA,EAAMnI,EAAMmI,GAGZjC,GAAe,iBAAkBiC,EAAMzI,EAAS,GAAIyI,EAAIjC,cAAgBC,GACxEC,GAAe,iBAAkB+B,EAAMzI,EAAS,GAAIyI,EAAI/B,cAAgBC,GACxEoB,GAAsB,sBAAuBU,EAAMzI,EAASM,EAAM0H,IAA8BS,EAAIC,mBAAqBV,GACzHH,GAAgB,sBAAuBY,EAAMzI,EAASM,EAAMwH,IAAwBW,EAAIE,mBAAqBb,GAC7GlB,GAAc,gBAAiB6B,EAAMzI,EAAS,GAAIyI,EAAI7B,aAAe,GACrEC,GAAc,gBAAiB4B,EAAMzI,EAAS,GAAIyI,EAAI5B,aAAe,GACrEc,GAAe,iBAAkBc,GAAMA,EAAId,aAC3Cb,IAA0C,IAAxB2B,EAAI3B,gBACtBC,IAA0C,IAAxB0B,EAAI1B,gBACtBC,GAA0ByB,EAAIzB,0BAA2B,EACzDC,GAAqBwB,EAAIxB,qBAAsB,EAC/CC,GAAiBuB,EAAIvB,iBAAkB,EACvCG,GAAaoB,EAAIpB,aAAc,EAC/BC,GAAsBmB,EAAInB,sBAAuB,EACjDC,IAA8C,IAA1BkB,EAAIlB,kBACxBhC,GAAsBkD,EAAIlD,sBAAuB,EACjD6B,GAAaqB,EAAIrB,aAAc,EAC/BI,IAAoC,IAArBiB,EAAIjB,aACnBC,IAAoC,IAArBgB,EAAIhB,aACnBC,GAAWe,EAAIf,WAAY,EAC3BnB,GAAoBkC,EAAIG,oBAAsBrC,GAC9C6B,GAAYK,EAAIL,WAAaD,GACzBlB,KACFF,IAAkB,GAGhBO,KACFD,IAAa,GAIXM,KACFnB,GAAexG,EAAS,GAAI,GAAGvC,OAAO+E,EAAqBjB,KAC3DmF,GAAe,IACW,IAAtBiB,GAAa1G,OACfjB,EAASwG,GAAcvF,GACvBjB,EAAS0G,GAAclF,KAGA,IAArBmG,GAAazG,MACflB,EAASwG,GAActF,GACvBlB,EAAS0G,GAAcjF,GACvBzB,EAAS0G,GAAc/E,KAGO,IAA5BgG,GAAaxG,aACfnB,EAASwG,GAAcrF,GACvBnB,EAAS0G,GAAcjF,GACvBzB,EAAS0G,GAAc/E,KAGG,IAAxBgG,GAAatG,SACfrB,EAASwG,GAAcnF,GACvBrB,EAAS0G,GAAchF,GACvB1B,EAAS0G,GAAc/E,KAKvB8G,EAAII,WACFrC,KAAiBC,KACnBD,GAAelG,EAAMkG,KAGvBxG,EAASwG,GAAciC,EAAII,WAGzBJ,EAAIK,WACFpC,KAAiBC,KACnBD,GAAepG,EAAMoG,KAGvB1G,EAAS0G,GAAc+B,EAAIK,WAGzBL,EAAIC,mBACN1I,EAAS+H,GAAqBU,EAAIC,mBAIhCjB,KACFjB,GAAa,UAAW,GAItBU,IACFlH,EAASwG,GAAc,CAAC,OAAQ,OAAQ,SAItCA,GAAauC,QACf/I,EAASwG,GAAc,CAAC,iBACjBI,GAAYoC,OAKjBtM,GACFA,EAAO+L,GAGTH,GAASG,IAGPQ,GAAiCjJ,EAAS,GAAI,CAAC,KAAM,KAAM,KAAM,KAAM,UAEvEkJ,GAA0BlJ,EAAS,GAAI,CAAC,gBAAiB,OAAQ,QAAS,mBAK1EmJ,GAAenJ,EAAS,GAAIkB,GAChClB,EAASmJ,GAAchI,GACvBnB,EAASmJ,GAAc/H,GAEvB,IAAIgI,GAAkBpJ,EAAS,GAAIqB,GACnCrB,EAASoJ,GAAiB9H,GAU1B,IAAI+H,GAAuB,SAA8BjJ,GACvD,IAAIkJ,EAAStE,GAAc5E,GAItBkJ,GAAWA,EAAOC,UACrBD,EAAS,CACPE,aAAcrB,GACdoB,QAAS,aAIb,IAAIA,EAAU7K,EAAkB0B,EAAQmJ,SACpCE,EAAgB/K,EAAkB4K,EAAOC,SAE7C,GAAInJ,EAAQoJ,eAAiBtB,GAI3B,OAAIoB,EAAOE,eAAiBrB,GACP,QAAZoB,EAMLD,EAAOE,eAAiBvB,GACP,QAAZsB,IAAwC,mBAAlBE,GAAsCR,GAA+BQ,IAK7FC,QAAQP,GAAaI,IAG9B,GAAInJ,EAAQoJ,eAAiBvB,GAI3B,OAAIqB,EAAOE,eAAiBrB,GACP,SAAZoB,EAKLD,EAAOE,eAAiBtB,GACP,SAAZqB,GAAsBL,GAAwBO,GAKhDC,QAAQN,GAAgBG,IAGjC,GAAInJ,EAAQoJ,eAAiBrB,GAAgB,CAI3C,GAAImB,EAAOE,eAAiBtB,KAAkBgB,GAAwBO,GACpE,OAAO,EAGT,GAAIH,EAAOE,eAAiBvB,KAAqBgB,GAA+BQ,GAC9E,OAAO,EAOT,IAAIE,EAA2B3J,EAAS,GAAI,CAAC,QAAS,QAAS,OAAQ,IAAK,WAI5E,OAAQoJ,GAAgBG,KAAaI,EAAyBJ,KAAaJ,GAAaI,IAM1F,OAAO,GAQLK,GAAe,SAAsBC,GACvCrL,EAAUkF,EAAUG,QAAS,CAAEzD,QAASyJ,IACxC,IAEEA,EAAKC,WAAWC,YAAYF,GAC5B,MAAOtG,GACP,IACEsG,EAAKG,UAAY1E,GACjB,MAAO/B,GACPsG,EAAKI,YAWPC,GAAmB,SAA0BC,EAAMN,GACrD,IACErL,EAAUkF,EAAUG,QAAS,CAC3BuG,UAAWP,EAAKQ,iBAAiBF,GACjCnM,KAAM6L,IAER,MAAOtG,GACP/E,EAAUkF,EAAUG,QAAS,CAC3BuG,UAAW,KACXpM,KAAM6L,IAOV,GAHAA,EAAKS,gBAAgBH,GAGR,OAATA,IAAkBzD,GAAayD,GACjC,GAAI9C,IAAcC,GAChB,IACEsC,GAAaC,GACb,MAAOtG,SAET,IACEsG,EAAKU,aAAaJ,EAAM,IACxB,MAAO5G,MAWXiH,GAAgB,SAAuBC,GAEzC,IAAIC,OAAM,EACNC,OAAoB,EAExB,GAAIvD,GACFqD,EAAQ,oBAAsBA,MACzB,CAEL,IAAIG,EAAU/L,EAAY4L,EAAO,eACjCE,EAAoBC,GAAWA,EAAQ,GAGzC,IAAIC,EAAexF,GAAqBA,GAAmBhC,WAAWoH,GAASA,EAK/E,GAAIrC,KAAcD,GAChB,IACEuC,GAAM,IAAI/F,GAAYmG,gBAAgBD,EAAc,aACpD,MAAOtH,IAIX,IAAKmH,IAAQA,EAAIK,gBAAiB,CAChCL,EAAMjF,GAAeuF,eAAe5C,GAAW,WAAY,MAC3D,IACEsC,EAAIK,gBAAgBE,UAAY5C,GAAiB,GAAKwC,EACtD,MAAOtH,KAKX,IAAI2H,EAAOR,EAAIQ,MAAQR,EAAIK,gBAO3B,OALIN,GAASE,GACXO,EAAKC,aAAatI,EAASuI,eAAeT,GAAoBO,EAAKG,WAAW,IAAM,MAIlFjD,KAAcD,GACTvC,GAAqB0F,KAAKZ,EAAKxD,GAAiB,OAAS,QAAQ,GAGnEA,GAAiBwD,EAAIK,gBAAkBG,GAS5CK,GAAkB,SAAyB5H,GAC7C,OAAO+B,GAAmB4F,KAAK3H,EAAKyB,eAAiBzB,EAAMA,EAAMU,EAAWmH,aAAenH,EAAWoH,aAAepH,EAAWqH,UAAW,MAAM,IAS/IC,GAAe,SAAsBC,GACvC,QAAIA,aAAenH,GAAQmH,aAAelH,GAId,iBAAjBkH,EAAIC,UAAoD,iBAApBD,EAAIE,aAAuD,mBAApBF,EAAI7B,aAAgC6B,EAAIG,sBAAsBxH,GAAgD,mBAAxBqH,EAAItB,iBAA8D,mBAArBsB,EAAIrB,cAA2D,iBAArBqB,EAAIpC,cAAyD,mBAArBoC,EAAIT,eAa7Sa,GAAU,SAAiBzL,GAC7B,MAAuE,iBAA/C,IAAT4D,EAAuB,YAAchC,EAAQgC,IAAsB5D,aAAkB4D,EAAO5D,GAA8E,iBAAjD,IAAXA,EAAyB,YAAc4B,EAAQ5B,KAAoD,iBAApBA,EAAOuD,UAAoD,iBAApBvD,EAAOsL,UAWxPI,GAAe,SAAsBC,EAAYC,EAAaC,GAC3DrG,GAAMmG,IAIX/N,EAAa4H,GAAMmG,IAAa,SAAUG,GACxCA,EAAKf,KAAK5H,EAAWyI,EAAaC,EAAM9D,QAcxCgE,GAAoB,SAA2BH,GACjD,IAAIhH,OAAU,EAMd,GAHA8G,GAAa,yBAA0BE,EAAa,MAGhDR,GAAaQ,GAEf,OADAvC,GAAauC,IACN,EAIT,GAAItN,EAAYsN,EAAYN,SAAU,mBAEpC,OADAjC,GAAauC,IACN,EAIT,IAAI5C,EAAU7K,EAAkByN,EAAYN,UAS5C,GANAI,GAAa,sBAAuBE,EAAa,CAC/C5C,QAASA,EACTgD,YAAa/F,MAIVwF,GAAQG,EAAYK,sBAAwBR,GAAQG,EAAYhH,WAAa6G,GAAQG,EAAYhH,QAAQqH,qBAAuBnN,EAAW,UAAW8M,EAAYlB,YAAc5L,EAAW,UAAW8M,EAAYL,aAErN,OADAlC,GAAauC,IACN,EAIT,IAAK3F,GAAa+C,IAAY3C,GAAY2C,GAAU,CAElD,GAAI9B,KAAiBG,GAAgB2B,GAAU,CAC7C,IAAIO,EAAa9E,GAAcmH,IAAgBA,EAAYrC,WACvDuB,EAAatG,GAAcoH,IAAgBA,EAAYd,WAE3D,GAAIA,GAAcvB,EAGhB,IAFA,IAESjM,EAFQwN,EAAWtN,OAEF,EAAGF,GAAK,IAAKA,EACrCiM,EAAWqB,aAAatG,EAAUwG,EAAWxN,IAAI,GAAOiH,GAAeqH,IAM7E,OADAvC,GAAauC,IACN,EAIT,OAAIA,aAAuB/H,IAAYiF,GAAqB8C,IAC1DvC,GAAauC,IACN,GAGQ,aAAZ5C,GAAsC,YAAZA,IAA0BlK,EAAW,uBAAwB8M,EAAYlB,YAMpGhE,IAA+C,IAAzBkF,EAAYrI,WAEpCqB,EAAUgH,EAAYL,YACtB3G,EAAUpG,EAAcoG,EAASc,GAAkB,KACnDd,EAAUpG,EAAcoG,EAASe,GAAa,KAC1CiG,EAAYL,cAAgB3G,IAC9B3G,EAAUkF,EAAUG,QAAS,CAAEzD,QAAS+L,EAAYtH,cACpDsH,EAAYL,YAAc3G,IAK9B8G,GAAa,wBAAyBE,EAAa,OAE5C,IAnBLvC,GAAauC,IACN,IA8BPM,GAAoB,SAA2BC,EAAOC,EAAQ7L,GAEhE,GAAI0G,KAA4B,OAAXmF,GAA8B,SAAXA,KAAuB7L,KAAS+B,GAAY/B,KAASyH,IAC3F,OAAO,EAOT,GAAIxB,KAAoBF,GAAY8F,IAAWtN,EAAW8G,GAAcwG,SAAgB,GAAI7F,IAAmBzH,EAAW+G,GAAcuG,QAAgB,KAAKjG,GAAaiG,IAAW9F,GAAY8F,GAC/L,OAAO,EAGF,GAAI5E,GAAoB4E,SAAgB,GAAItN,EAAWkH,GAAmBxH,EAAc+B,EAAOwF,GAAoB,WAAa,GAAgB,QAAXqG,GAA+B,eAAXA,GAAsC,SAAXA,GAAgC,WAAVD,GAAwD,IAAlCzN,EAAc6B,EAAO,WAAkB+G,GAAc6E,GAAe,GAAI1F,KAA4B3H,EAAWgH,GAAsBtH,EAAc+B,EAAOwF,GAAoB,WAAa,GAAKxF,EACra,OAAO,EAGT,OAAO,GAaL8L,GAAsB,SAA6BT,GACrD,IAAIU,OAAO,EACP/L,OAAQ,EACR6L,OAAS,EACTxM,OAAI,EAER8L,GAAa,2BAA4BE,EAAa,MAEtD,IAAIJ,EAAaI,EAAYJ,WAI7B,GAAKA,EAAL,CAIA,IAAIe,EAAY,CACdC,SAAU,GACVC,UAAW,GACXC,UAAU,EACVC,kBAAmBxG,IAKrB,IAHAvG,EAAI4L,EAAWhO,OAGRoC,KAAK,CAEV,IAAIgN,EADJN,EAAOd,EAAW5L,GAEdgK,EAAOgD,EAAMhD,KACbX,EAAe2D,EAAM3D,aAazB,GAXA1I,EAAQ3B,EAAW0N,EAAK/L,OACxB6L,EAASjO,EAAkByL,GAG3B2C,EAAUC,SAAWJ,EACrBG,EAAUE,UAAYlM,EACtBgM,EAAUG,UAAW,EACrBH,EAAUM,mBAAgB3J,EAC1BwI,GAAa,wBAAyBE,EAAaW,GACnDhM,EAAQgM,EAAUE,WAEdF,EAAUM,gBAKdlD,GAAiBC,EAAMgC,GAGlBW,EAAUG,UAKf,GAAI5N,EAAW,OAAQyB,GACrBoJ,GAAiBC,EAAMgC,OADzB,CAMIlF,KACFnG,EAAQ/B,EAAc+B,EAAOmF,GAAkB,KAC/CnF,EAAQ/B,EAAc+B,EAAOoF,GAAa,MAI5C,IAAIwG,EAAQP,EAAYN,SAASjN,cACjC,GAAK6N,GAAkBC,EAAOC,EAAQ7L,GAKtC,IACM0I,EACF2C,EAAYkB,eAAe7D,EAAcW,EAAMrJ,GAG/CqL,EAAY5B,aAAaJ,EAAMrJ,GAGjCxC,EAASoF,EAAUG,SACnB,MAAON,MAIX0I,GAAa,0BAA2BE,EAAa,QAQnDmB,GAAqB,SAASA,EAAmBC,GACnD,IAAIC,OAAa,EACbC,EAAiBlC,GAAgBgC,GAKrC,IAFAtB,GAAa,0BAA2BsB,EAAU,MAE3CC,EAAaC,EAAeC,YAEjCzB,GAAa,yBAA0BuB,EAAY,MAG/ClB,GAAkBkB,KAKlBA,EAAWrI,mBAAmBlB,GAChCqJ,EAAmBE,EAAWrI,SAIhCyH,GAAoBY,IAItBvB,GAAa,yBAA0BsB,EAAU,OAyQnD,OA9PA7J,EAAUiK,SAAW,SAAUlD,EAAOhC,GACpC,IAAIyC,OAAO,EACP0C,OAAe,EACfzB,OAAc,EACd0B,OAAU,EACVC,OAAa,EAUjB,IANAzF,IAAkBoC,KAEhBA,EAAQ,eAIW,iBAAVA,IAAuBuB,GAAQvB,GAAQ,CAEhD,GAA8B,mBAAnBA,EAAMsD,SACf,MAAMvO,EAAgB,8BAGtB,GAAqB,iBADrBiL,EAAQA,EAAMsD,YAEZ,MAAMvO,EAAgB,mCAM5B,IAAKkE,EAAUK,YAAa,CAC1B,GAAqC,WAAjC5B,EAAQO,EAAOsL,eAA6D,mBAAxBtL,EAAOsL,aAA6B,CAC1F,GAAqB,iBAAVvD,EACT,OAAO/H,EAAOsL,aAAavD,GAG7B,GAAIuB,GAAQvB,GACV,OAAO/H,EAAOsL,aAAavD,EAAMT,WAIrC,OAAOS,EAgBT,GAZKtD,IACHqB,GAAaC,GAIf/E,EAAUG,QAAU,GAGC,iBAAV4G,IACT/C,IAAW,GAGTA,SAAiB,GAAI+C,aAAiBtG,EAKV,KAD9ByJ,GADA1C,EAAOV,GAAc,kBACDpF,cAAcS,WAAW4E,GAAO,IACnC3G,UAA4C,SAA1B8J,EAAa/B,UAGX,SAA1B+B,EAAa/B,SADtBX,EAAO0C,EAKP1C,EAAK+C,YAAYL,OAEd,CAEL,IAAKvG,KAAeJ,KAAuBC,KAEnB,IAAxBuD,EAAMvL,QAAQ,KACZ,OAAOmG,IAAsBE,GAAsBF,GAAmBhC,WAAWoH,GAASA,EAO5F,KAHAS,EAAOV,GAAcC,IAInB,OAAOpD,GAAa,KAAO/B,GAK3B4F,GAAQ9D,IACVwC,GAAasB,EAAKgD,YAOpB,IAHA,IAAIC,EAAe5C,GAAgB7D,GAAW+C,EAAQS,GAG/CiB,EAAcgC,EAAaT,YAEH,IAAzBvB,EAAYrI,UAAkBqI,IAAgB0B,GAK9CvB,GAAkBH,KAKlBA,EAAYhH,mBAAmBlB,GACjCqJ,GAAmBnB,EAAYhH,SAIjCyH,GAAoBT,GAEpB0B,EAAU1B,GAMZ,GAHA0B,EAAU,KAGNnG,GACF,OAAO+C,EAIT,GAAIpD,GAAY,CACd,GAAIC,GAGF,IAFAwG,EAAanI,GAAuB2F,KAAKJ,EAAK9F,eAEvC8F,EAAKgD,YAEVJ,EAAWG,YAAY/C,EAAKgD,iBAG9BJ,EAAa5C,EAcf,OAXI3D,KAQFuG,EAAajI,GAAWyF,KAAKtH,EAAkB8J,GAAY,IAGtDA,EAGT,IAAIM,EAAiBlH,GAAiBgE,EAAKlB,UAAYkB,EAAKD,UAQ5D,OALIhE,KACFmH,EAAiBrP,EAAcqP,EAAgBnI,GAAkB,KACjEmI,EAAiBrP,EAAcqP,EAAgBlI,GAAa,MAGvDb,IAAsBE,GAAsBF,GAAmBhC,WAAW+K,GAAkBA,GASrG1K,EAAU2K,UAAY,SAAU5F,GAC9BD,GAAaC,GACbtB,IAAa,GAQfzD,EAAU4K,YAAc,WACtBhG,GAAS,KACTnB,IAAa,GAafzD,EAAU6K,iBAAmB,SAAUC,EAAK3B,EAAM/L,GAE3CwH,IACHE,GAAa,IAGf,IAAIkE,EAAQhO,EAAkB8P,GAC1B7B,EAASjO,EAAkBmO,GAC/B,OAAOJ,GAAkBC,EAAOC,EAAQ7L,IAU1C4C,EAAU+K,QAAU,SAAUvC,EAAYwC,GACZ,mBAAjBA,IAIX3I,GAAMmG,GAAcnG,GAAMmG,IAAe,GACzC1N,EAAUuH,GAAMmG,GAAawC,KAU/BhL,EAAUiL,WAAa,SAAUzC,GAC3BnG,GAAMmG,IACR5N,EAASyH,GAAMmG,KAUnBxI,EAAUkL,YAAc,SAAU1C,GAC5BnG,GAAMmG,KACRnG,GAAMmG,GAAc,KASxBxI,EAAUmL,eAAiB,WACzB9I,GAAQ,IAGHrC,EAGIF,GAx0CmEsL,I,iCCMlF,IAAIC,EAAuB,EAAQ,KAEnC,SAASC,KACT,SAASC,KACTA,EAAuBC,kBAAoBF,EAE3C9S,EAAOC,QAAU,WACf,SAASgT,EAAKC,EAAOC,EAAUC,EAAeC,EAAUC,EAAcC,GACpE,GAAIA,IAAWV,EAAf,CAIA,IAAIW,EAAM,IAAIC,MACZ,mLAKF,MADAD,EAAIvF,KAAO,sBACLuF,GAGR,SAASE,IACP,OAAOT,EAFTA,EAAKU,WAAaV,EAMlB,IAAIW,EAAiB,CACnB5P,MAAOiP,EACPY,KAAMZ,EACNjR,KAAMiR,EACNa,OAAQb,EACR5O,OAAQ4O,EACRc,OAAQd,EACRe,OAAQf,EAERgB,IAAKhB,EACLiB,QAASR,EACTxP,QAAS+O,EACTkB,YAAalB,EACbmB,WAAYV,EACZ/F,KAAMsF,EACNoB,SAAUX,EACVY,MAAOZ,EACPa,UAAWb,EACXc,MAAOd,EACPe,MAAOf,EAEPgB,eAAgB3B,EAChBC,kBAAmBF,GAKrB,OAFAc,EAAee,UAAYf,EAEpBA,I,oBC7CP5T,EAAOC,QAAU,EAAQ,IAAR,I,6BCNnBD,EAAOC,QAFoB,iDCRvB2U,EAA2B,GAG/B,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBvN,IAAjBwN,EACH,OAAOA,EAAa9U,QAGrB,IAAID,EAAS4U,EAAyBE,GAAY,CAGjD7U,QAAS,IAOV,OAHA+U,EAAoBF,GAAU1F,KAAKpP,EAAOC,QAASD,EAAQA,EAAOC,QAAS4U,GAGpE7U,EAAOC,QCpBf4U,EAAoBI,EAAI,SAASjV,GAChC,IAAIkV,EAASlV,GAAUA,EAAOmV,WAC7B,WAAa,OAAOnV,EAAgB,SACpC,WAAa,OAAOA,GAErB,OADA6U,EAAoBO,EAAEF,EAAQ,CAAEG,EAAGH,IAC5BA,GCLRL,EAAoBO,EAAI,SAASnV,EAASqV,GACzC,IAAI,IAAIC,KAAOD,EACXT,EAAoBW,EAAEF,EAAYC,KAASV,EAAoBW,EAAEvV,EAASsV,IAC5EpV,OAAOsV,eAAexV,EAASsV,EAAK,CAAEG,YAAY,EAAM/Q,IAAK2Q,EAAWC,MCJ3EV,EAAoBW,EAAI,SAASpP,EAAK3B,GAAQ,OAAOtE,OAAOkB,UAAUnB,eAAekP,KAAKhJ,EAAK3B,I,wBCA/F,IAAI,EAA+B+B,OAAW,GAAW,QCArD,EAA+BA,OAAc,M,SCmDjD,EAjDa,IACX,yBACEmP,iBAAiB,4BACjBC,OAAO,aACPlO,QAAQ,MACRmO,QAAQ,wBACRC,MAAM,aACN5U,EAAE,MACF6U,MAAM,6BACNC,EAAE,OAEF,2BACE,2BACE,2BACE,0BACEZ,EAAE,wkFCjBV,EAA+B5O,OAAW,GAAY,S,SCAtD,EAA+BA,OAAW,GAAQ,KCAlD,EAA+BA,OAAW,GAAY,SCAtD,EAA+BA,OAAW,GAAQ,K,kBCAlD,EAA+BA,OAAW,GAAY,SCAtD,EAA+BA,OAAW,GAAc,W,kBCAxD,EAA+BA,OAAW,GAAe,YCyC7D,EAjCoB,CAACyP,EAAOC,EAAO,UACjC,MACEC,eACEC,OACE,CAACF,IACCG,WAAYC,EAAc,IACxB,GACJC,MACEF,WAAYG,EAAc,IACxB,IACF,IACF,GACJJ,OACE,CAACF,IACCO,IAAKC,EAAe,IAClB,GACJH,MACEE,IAAKE,EAAe,IAClB,IACF,GACJN,WAAYO,EAAc,GAC1BH,IAAKI,EAAc,IACjBZ,EAEJ,OAAOK,GACFI,GACAF,GACAG,GACAC,GACAC,GACA,IC5BP,MAAMC,EAAc,EAClBC,eACAC,YACApS,QACAqS,YACAC,UACAC,eAGA,MAAM,MACJlB,EAAQ,OACNmB,gBAAWC,IAAD,CACZpB,MAAOoB,EAAO,QAAQC,SAAS1S,MAC7B,CAACA,IAGL,OAAc,IAAVA,GAAyB,OAAVqR,EAEf,kBAAC,EAAAsB,QAAD,MAKF,yBACEP,UAAWA,EACXQ,MAAO,CACLC,gBAAiB,UACjBC,QAAS,eACTC,SAAU,aAGZ,kBAAC,EAAAC,iBAAD,KACE,kBAAC,EAAAC,YAAD,CACEC,OAAOC,QAAG,kBAAmB,cAC7BC,SAAUb,EACVJ,aAAcA,EACdnS,MAAOA,EACPqT,OAAQ,EAAGC,UACT,oCACa,IAAVtT,GAAyB,OAAVqR,EACd,6BACE,yBACEkC,IAAI,GACJC,IAAKC,EAAYpC,EAAOgB,KAE1B,yBACEO,MAAO,CACLc,WAAY,QACZC,KAAM,MACNC,QAAS,EACTb,SAAU,WACVc,IAAK,MACLC,UAAW,wBACXC,OAAQ,KAGV,kBAAC,EAAAC,OAAD,CACEC,WAAS,EACTC,SAAO,EACPC,QAASb,EACTV,MAAO,CAAEwB,aAAc,KAErBjB,QAAG,eAAgB,eAEvB,kBAAC,EAAAa,OAAD,CACEK,QAAM,EACNC,eAAa,EACbH,QAAS7B,EACTM,MAAO,CAAEwB,aAAc,KAErBjB,QAAG,cAAe,iBAIxB,KACO,IAAVnT,EACC,yBACE4S,MAAO,CACLc,WAAY,QACZE,QAAS,IAGX,kBAAC,EAAAI,OAAD,CACEC,WAAS,EACTE,QAASb,IAEPH,QAAG,kBAAmB,gBAG1B,WASlBjB,EAAYqC,aAAe,CACzBpC,aAAc,GACdC,UAAW,GACXC,UAAW,aAGbH,EAAYsC,UAAY,CACtBrC,aAAcpC,YAAkB,CAACA,aACjCqC,UAAWrC,WACX/P,MAAO+P,sBACPsC,UAAWtC,WACXuC,QAASvC,oBACTwC,SAAUxC,qBAGZ,QCrHA,MAAM0E,EAAc,EAClBrC,YACAC,YACAC,UACAC,WACAvS,WAEA,kBAAC,EAAD,CACEoS,UAAWA,EACXD,aAAc,CAAC,SACfE,UAAWA,EACXE,SAAUA,EACVD,QAASA,EACTtS,MAAOA,IAIXyU,EAAYF,aAAe,CACzBnC,UAAW,GACXC,UAAW,aAGboC,EAAYD,UAAY,CACtBpC,UAAWrC,WACXsC,UAAWtC,WACXuC,QAASvC,oBACTwC,SAAUxC,oBACV/P,MAAO+P,uBAGT,QC5BA,MAAM2E,EAAa,EACjBC,oBACAC,eACAC,4BACAC,0BAEA,kBAAC,EAAAC,UAAD,CACEC,aAAa,EACb9B,OAAOC,QAAG,cAAe,eAEzB,kBAAC,EAAA8B,YAAD,KACE,kBAAC,EAAD,CACE3C,QAAS,IAAMwC,EAAqB,GACpCvC,SAAU,EAAG2C,QAASJ,EAAqBI,GAC3ClV,MAAO4U,KAGX,kBAAC,EAAAO,gBAAD,CACEC,MAAMjC,QAAG,0CAA2C,cACpDkC,OAAOlC,QAAG,UAAW,cACrBmC,SAAUT,EACVU,aAAapC,QAAG,6BAA8B,cAC9CnT,MAAO2U,KAKbD,EAAWF,UAAY,CACrBG,kBAAmB5E,sBACnB6E,aAAc7E,sBACd8E,0BAA2B9E,oBAC3B+E,qBAAsB/E,qBAGxB,QCrCA,MAAMyF,EAAiB,EACrBC,iBACAC,4BAEA,kBAAC,EAAAX,UAAD,CACEC,aAAa,EACb9B,OAAOC,QAAG,kBAAmB,eAE7B,kBAAC,EAAAwC,cAAD,CACEP,MAAMjC,QAAG,qDAAsD,cAC/DkC,OAAOlC,QAAG,yBAA0B,cACpCmC,SAAUI,EACVE,QAAS,CACP,CAAEP,MAAO,GAAIrV,MAAO,IACpB,CAAEqV,OAAOlC,QAAG,OAAQ,cAAenT,MAAO,QAC1C,CAAEqV,OAAOlC,QAAG,SAAU,cAAenT,MAAO,UAC5C,CAAEqV,OAAOlC,QAAG,UAAW,cAAenT,MAAO,YAE/CA,MAAOyV,KAKbD,EAAehB,UAAY,CACzBiB,eAAgB1F,sBAChB2F,uBAAwB3F,qBAG1B,QC7BO,MAAM8F,EAAiB,CAC5BlF,IAAKZ,sBACL+F,KAAM/F,UAAgB,CACpB,QACA,UACA,SACA,WAEF/P,MAAO+P,cAAoB,CACzBA,YAAkBA,YAClBA,SACAA,WACAA,cAISgG,EAAgB,CAC3Bb,GAAInF,sBACJ1G,KAAM0G,uBCbR,ICMA,EAN2B,CAACiG,EAAQrF,EAAK3Q,EAAOiW,KAC9C,MAAMC,EAAaF,EAAOG,KAAKC,IAAD,IAAgBA,MAE9C,OADAF,EAAWD,GAAOtF,GAAO3Q,EAClBkW,GCMT,MAAMG,EAAW,EACfC,WACAC,SACAC,YACAC,cACAC,WACAC,mBACAC,iBACAC,oBACAC,sBACAC,sBAEA,kBAAC,EAAAhC,UAAD,CACEC,aAAa,EACb9B,OAAOC,QAAG,WAAY,eAEtB,kBAAC,EAAA6D,gBAAD,CACEC,QAASV,EACTnB,MAAMjC,QAAG,sKAAuK,cAChLkC,OAAOlC,QAAG,eAAgB,cAC1BmC,SAAUsB,IAEZ,kBAAC,EAAAI,gBAAD,CACEC,QAAST,EACTpB,MAAMjC,QAAG,gDAAiD,cAC1DkC,OAAOlC,QAAG,kBAAmB,cAC7BmC,SAAUuB,IAEZ,kBAAC,EAAAG,gBAAD,CACEC,QAASX,EACTlB,MAAMjC,QAAG,0JAA2J,cACpKkC,OAAOlC,QAAG,iBAAkB,cAC5BmC,SAAUqB,IAEZ,kBAAC,EAAAK,gBAAD,CACEC,QAASR,EACTrB,MAAMjC,QAAG,4DAA6D,cACtEkC,OAAOlC,QAAG,oBAAqB,cAC/BmC,SAAUwB,IAEZ,6BAAK3D,QAAG,kBAAmB,eAC1BuD,EAASP,KAAI,EAAGxF,MAAKmF,OAAM9V,SAASiW,IAEnC,yBAAKtF,IAAKsF,GACR,kBAAC,EAAAiB,YAAD,CACE7B,OAAOlC,QAAG,MAAO,cACjBmC,SAAW6B,GAASJ,EAAiBK,EAAmBV,EAAU,MAAOS,EAAMlB,IAC/EjW,MAAO2Q,IAET,kBAAC,EAAAgF,cAAD,CACEN,OAAOlC,QAAG,OAAQ,cAClBmC,SAAW6B,GAASJ,EAAiBK,EAAmBV,EAAU,OAAQS,EAAMlB,IAChFL,QAAS,CACP,CAAEP,OAAOlC,QAAG,SAAU,cAAenT,MAAO,UAC5C,CAAEqV,OAAOlC,QAAG,UAAW,cAAenT,MAAO,WAC7C,CAAEqV,OAAOlC,QAAG,SAAU,cAAenT,MAAO,UAC5C,CAAEqV,OAAOlC,QAAG,QAAS,cAAenT,MAAO,UAE7CA,MAAO8V,IAEC,YAATA,EACC,kBAAC,EAAAH,cAAD,CACEN,OAAOlC,QAAG,QAAS,cACnBmC,SAAW6B,GAASJ,EAAiBK,EAAmBV,EAAU,QAAkB,SAATS,EAAiBlB,IAC5FL,QAAS,CACP,CAAEP,OAAOlC,QAAG,GAAI,cAAenT,MAAO,IACtC,CAAEqV,OAAOlC,QAAG,OAAQ,cAAenT,MAAO,QAC1C,CAAEqV,OAAOlC,QAAG,QAAS,cAAenT,MAAO,UAE7CA,MAAOA,IAGT,kBAAC,EAAAkX,YAAD,CACE7B,OAAOlC,QAAG,QAAS,cACnBmC,SAAW6B,GAASJ,EAAiBK,EAAmBV,EAAU,QAAkB,WAATZ,EAAoBuB,WAAWF,GAAQA,EAAMlB,IACxHH,KAAe,WAATA,EAAoB,SAAW,OACrC9V,MAAOA,IAGX,kBAAC,EAAAgU,OAAD,CACEM,eAAa,EACbH,QAAS,IAAM4C,EF5FH,EAACf,EAAQC,IAAUD,EAAOsB,QAAO,CAACtX,EAAOuX,IAAQtB,IAAUsB,IE4FvCC,CAAcd,EAAUT,IACxDrD,MAAO,CAAEwB,aAAc,SAEtBjB,QAAG,SAAU,kBAIpB,kBAAC,EAAAa,OAAD,CACEC,WAAS,EACTE,QAAS,IAAM4C,EAAiB,IAAIL,EAAU,CAAE/F,IAAK,GAAImF,KAAM,SAAU9V,MAAO,QAE/EmT,QAAG,eAAgB,gBAK1BkD,EAAS7B,UAAY,CACnB8B,SAAUvG,oBACVwG,OAAQxG,oBACRyG,UAAWzG,oBACX0G,YAAa1G,oBACb2G,SAAU3G,YAAkBA,UAAgB8F,IAAiB9G,WAC7D4H,iBAAkB5G,oBAClB6G,eAAgB7G,oBAChB8G,kBAAmB9G,oBACnB+G,oBAAqB/G,oBACrBgH,iBAAkBhH,qBAGpB,QC3HA,MAAM0H,EAAkB,EACtBC,cACAC,oBACAC,oBACAC,aACAC,UACAC,cACAC,aACAC,cACAC,eACAC,aACAC,oBAGmB,YAAfJ,GAA6BI,EAK7BN,EACK,kBAAC,EAAAnF,QAAD,MAIP,oCACGoF,EACC,yBAAK3F,UAAU,gCACb,iCACGe,QAAG,6GAA8G,gBAGpH,KACc,QAAjB+E,GAA2BN,EAQxB,KAPF,kBAAC,EAAA5D,OAAD,CACEC,WAAS,EACTE,QAASgE,EACTvF,MAAO,CAAEyF,OAAQ,SAEhBlF,QAAG,SAAU,eAGA,QAAjB+E,GAA2BP,EAQxB,KAPF,kBAAC,EAAA3D,OAAD,CACEsE,aAAW,EACXnE,QAAS0D,EACTjF,MAAO,CAAEyF,OAAQ,SAEhBlF,QAAG,SAAU,eAGA,QAAjB+E,GAA2BR,EAQxB,KAPF,kBAAC,EAAA1D,OAAD,CACEC,WAAS,EACTE,QAAS8D,EACTrF,MAAO,CAAEyF,OAAQ,SAEhBlF,QAAG,UAAW,gBAzCd,KAgDXsE,EAAgBjD,UAAY,CAC1BkD,YAAa3H,oBACb4H,kBAAmB5H,oBACnB6H,kBAAmB7H,oBACnB8H,WAAY9H,oBACZ+H,QAAS/H,oBACTgI,YAAahI,oBACbiI,WAAYjI,sBACZkI,YAAalI,oBACbmI,aAAcnI,sBACdoI,WAAYpI,oBACZqI,eAAgBrI,qBAGlB,QC7EA,MAAMwI,EAAc,EAClBC,QACAC,cACAC,eACAC,WACAC,WACAV,kBAEKA,GAAiC,QAAjBA,EAKnB,kBAAC,EAAAnD,UAAD,CACEC,aAAa,EACb9B,OAAOC,QAAG,sBAAuB,eAEjC,6BAAKA,QAAG,SAAU,eAClB,2BAAIqF,GACJ,6BAAKrF,QAAG,aAAc,eACtB,2BAAIsF,GACJ,6BAAKtF,QAAG,kBAAmB,eAC3B,2BAAIuF,GACJ,6BAAKvF,QAAG,YAAa,eACrB,2BAAIyF,GACJ,6BAAKzF,QAAG,WAAY,eACpB,2BAAIwF,GACJ,6BAAKxF,QAAG,gBAAiB,eACzB,2BAAI+E,IAnBC,KAwBXK,EAAY/D,UAAY,CACtBgE,MAAOzI,sBACP0I,YAAa1I,sBACb2I,aAAc3I,sBACd4I,SAAU5I,sBACV6I,SAAU7I,sBACVmI,aAAcnI,uBAGhB,QCtCA,MAAM8I,EAAY,EAChBC,4BACAC,wBACAC,oBACAC,mBAEA,kBAAC,EAAAlE,UAAD,CACEC,aAAa,EACb9B,OAAOC,QAAG,aAAc,eAExB,kBAAC,EAAAgC,gBAAD,CACEC,MAAMjC,QAAG,0OAA2O,cACpPkC,OAAOlC,QAAG,kBAAmB,cAC7BmC,SAAUyD,EACV/Y,MAAOiZ,IAET,kBAAC,EAAAtD,cAAD,CACEP,MAAMjC,QAAG,gEAAiE,cAC1EkC,OAAOlC,QAAG,sBAAuB,cACjCmC,SAAUwD,EACVlD,QAAS,CACP,CAAEP,OAAOlC,QAAG,MAAO,cAAenT,MAAO,OACzC,CAAEqV,OAAOlC,QAAG,SAAU,cAAenT,MAAO,UAC5C,CAAEqV,OAAOlC,QAAG,SAAU,cAAenT,MAAO,WAE9CA,MAAOgZ,GAAqB,YAKlCH,EAAUrE,UAAY,CACpBsE,0BAA2B/I,oBAC3BgJ,sBAAuBhJ,oBACvBiJ,kBAAmBjJ,sBACnBkJ,cAAelJ,uBAGjB,QCjCA,MAAMmJ,EAAW,EACfC,uBACAC,sBACAC,+BACAC,2BACAC,WACAC,sBAEA,kBAAC,EAAAzE,UAAD,CACEC,aAAa,EACb9B,OAAOC,QAAG,WAAY,eAEpBtW,MAAMC,QAAQyc,IAAiC,IAApBA,EAAStc,OAGpC,oCACGmc,EACC,kBAAC,EAAApC,gBAAD,CACEC,QAASkC,EACT9D,OAAOlC,QAAG,8BAA+B,cACzCmC,SAAU+D,IAEV,KACHD,IAAwBD,EAAuB,6BAAS,KACtDC,GAAwBD,EAavB,KAZF,kBAAC,EAAAlE,YAAD,CACEG,MAAMjC,QAAG,2HAA4H,eAEpIoG,EAASpD,KAAI,EAAGjB,KAAI7L,UACnB,kBAAC,EAAA2N,gBAAD,CACEC,QAASuC,EAAiBC,SAASvE,GACnCvE,IAAKuE,EACLG,MAAOhM,EACPiM,SAAU,IAAMgE,EAAyBpE,SApBnD,kBAAC,EAAAvC,QAAD,OA8BNuG,EAAS1E,UAAY,CACnB2E,qBAAsBpJ,oBACtBqJ,oBAAqBrJ,oBACrBsJ,6BAA8BtJ,oBAC9BuJ,yBAA0BvJ,oBAC1BwJ,SAAUxJ,YAAkBA,UAAgBgG,IAAgBhH,WAC5DyK,iBAAkBzJ,YAAkBA,YAAkBhB,YAGxD,QCzDA,MAAM2K,EAAO,EACXC,eACAC,UAEA,kBAAC,EAAA7E,UAAD,CACEC,aAAa,EACb9B,OAAOC,QAAG,OAAQ,eAElB,kBAAC,EAAA+D,YAAD,CACE9B,MAAMjC,QAAG,gJAAiJ,cAC1JkC,OAAOlC,QAAG,YAAa,cACvBmC,SAAUqE,EACV3Z,MAAO4Z,KAKbF,EAAKlF,UAAY,CACfmF,aAAc5J,oBACd6J,KAAM7J,uBAGR,QCVA,EAX4B/P,IAC1B,MAAM6Z,ECJe7Z,KACrB,IACE,OAAO8Z,KAAKC,MAAM/Z,GAClB,MAAOga,GACP,OAAO,ODAWC,CAAcja,GAGlC,OAAKnD,MAAMC,QAAQ+c,GAIZA,EAHE,KEPXK,oBAAe,wBAAyB,CACtCC,KAAM,kBAAC,EAAD,MACN9G,OCiBc,KACd,MAAO+G,EAAOC,IAAYC,cAAS,CACjCnB,sBAAsB,EACtBrB,SAAS,EACTI,aAAc,MACdqB,SAAU,GACVgB,SAAU,CACR7C,aAAa,EACbC,mBAAmB,EACnBC,mBAAmB,EACnBwB,qBAAqB,GAEvBhB,gBAAgB,KAIZ,qBACJe,EADI,QAEJrB,EAFI,aAGJI,EAHI,SAIJqB,EACAgB,UAAU,YACR7C,EADQ,kBAERC,EAFQ,kBAGRC,EAHQ,oBAIRwB,GATE,eAWJhB,GACEgC,EAGEI,GAAiBC,iBAAY,iBAG7B,QACJC,EADI,OAEJC,EAFI,YAGJ5C,EAHI,WAIJC,IACExF,gBAAWC,IACb,MAAMmI,EAASnI,EAAO,eACtB,MAAO,CACLiI,QAASE,EAAOC,uBAAuB,sBACvCF,OAAQC,EAAOE,mBACf/C,YAAa6C,EAAOG,oBACpB/C,WAAY4C,EAAOC,uBAAuB,gBAM5CG,0BAA2BvC,EAAc,GACzCwC,kBAAmBzC,EAAQ,GAC3B0C,2BAA4BxC,EAAe,GAC3CyC,wBAAyBxC,EAAW,GACpCyC,yBAA0BxC,EAAW,GACrCyC,sBAAuBzG,EAAe,EACtC0G,8BAA+B3G,EAAoB,GACnD4G,qBAAsBjF,GAAW,EACjCkF,mBAAoBjF,GAAS,EAC7BkF,sBAAuBjF,GAAY,EACnCkF,wBAAyBjF,GAAc,EACvCkF,2BAA4BlG,EAAiB,GAC7CmG,oBAAqBC,EAAc,GACnCC,qBAAsB7C,EAAgB,GACtC8C,8BAA+B/C,EAAoB,GACnDgD,oBAAqBC,EAAsB,GAC3CC,gBAAiBtC,EAAO,IACvBuC,GC7Ee,EAACC,EAAW,KAAMzB,EAAS,QAE7C,MAAM7E,GAAOtD,gBAAWC,GAAW2J,GAAY3J,EAAO,eAAe4J,sBAAsB,KAGpFC,EAAMH,IAAWI,mBAAc,WAAYzG,EAAM,OAAQ6E,GAahE,MAAO,CAAC2B,EALY,CAAC3L,EAAK3Q,IAAUmc,EAAQ,IACvCG,EACH,CAAC3L,GAAM3Q,MD8DKwc,GAGR9F,EAAW+F,EAAmBZ,GAC9BrC,EAAmBiD,EAAmBR,GAOtCS,GAAsBC,kBAAY,CAACC,EAAS9G,EAAO,YAAwB,YAATA,EACpE0E,EAAeqC,iBAAiBja,aAAmBga,GAAU,CAAE9G,KAAM,aACrE0E,EAAesC,kBAAkBla,aAAmBga,KACrD,CAACpC,IAMEuC,GAAaC,UACjB3C,EAAS,IACJD,EACHtC,SAAS,IAGX,IACE,MAAM,cACJmF,EAAgB,GAChB/E,aAAcgF,EAAmB,UACzBC,IAAS,CACjB7R,KAAM,CACJ4J,GAAIyF,GAENyC,OAAQ,OACRC,KAAO,kBAAiBC,MAE1BL,EAAc1f,SAASggB,GAAiBb,EACtCa,EAAaX,QACbW,EAAazH,QAEfuE,EAAS,IACJD,EACHtC,SAAS,EACTI,aAAcgF,IAEhB,MAAOM,GACPd,EAAoBc,EAAMZ,QAAS,SACnCvC,EAAS,IACJD,EACHtC,SAAS,MA+Cf,OAhCA2F,gBAAU,KACR,WACE,MAAMC,EAAU,OACRP,IAAS,CAAEE,KAAO,sCAAqC1C,YACvDwC,IAAS,CAAEE,KAAM,kCACjBF,IAAS,CAAEE,KAAM,sCACjBF,IAAS,CAAEE,KAAO,mCAAkC1C,OAI5D,IACE,MAAMrP,QAAaqS,QAAQC,IAAIF,GAC/BrD,EAAS,IACJD,EACHjB,sBAA4C,OAArBK,GAAyD,IAA5BA,EAAiBvc,UAChC,IAAhCqO,EAAK,GAAG8N,uBACV9N,EAAK,GACRiO,SAAUjO,EAAK,GACfiP,SAAUjP,EAAK,MACZA,EAAK,KAEV,MAAOkS,GACPd,EAAoBc,EAAMZ,QAAS,WArBvC,KAwBC,KAGHa,gBAAU,KACR/C,EAAQnd,SAASsgB,GAAWnB,EAAoBmB,EAAOjB,QAASiB,EAAO/H,UACtE,CAAC4G,EAAqBhC,IAGvB,oCACE,kBAAC,EAAAoD,0BAAD,CAA2BC,OAAO,0BAC/B5K,QAAG,qBAAsB,eAE5B,kBAAC,EAAA6K,cAAD,CACE3U,KAAK,wBACL6J,OAAOC,QAAG,gCAAiC,eAE3C,kBAAC,EAAD,CACEgG,qBAAsBA,EACtBC,oBAAqBA,EACrBC,6BAA+BlC,IAC7BkD,EAAS,IACJD,EACHjB,qBAAsBhC,IAExBgF,EAAQ,sBAAuB,KAEjC7C,yBAzDuBpE,GAAOiH,EAAQ,sBAC5C3C,EAAiBC,SAASvE,GACtB4E,KAAKmE,UAAUzE,EAAiBlC,QAAQ4G,GAAYA,IAAYhJ,KAChE4E,KAAKmE,UAAU,IAAIzE,EAAkBtE,KAuDnCqE,SAAUA,EACVC,iBAAkBA,IAEpB,kBAAC,EAAD,CACElD,SAAUA,EACVC,OAAQA,EACRC,UAAWA,EACXC,YAAaA,EACbC,SAAUA,EACVC,iBAAmBQ,GAASgF,EAAQ,uBAAwBhF,GAC5DP,eAAiBO,GAASgF,EAAQ,qBAAsBhF,GACxDN,kBAAoBM,GAASgF,EAAQ,wBAAyBhF,GAC9DL,oBAAsBK,GAASgF,EAAQ,0BAA2BhF,GAClEJ,iBAAmBI,GAASgF,EAAQ,sBAAuBrC,KAAKmE,UAAU9G,MAE5E,kBAAC,EAAD,CACE1B,eAAgBA,EAChBC,uBAAyByB,GAASgF,EAAQ,6BAA8BhF,KAE1E,kBAAC,EAAD,CACEwC,aAAexC,GAASgF,EAAQ,kBAAmBhF,GACnDyC,KAAMA,IAER,kBAAC,EAAD,CACEd,0BAA4B3B,GAASgF,EAAQ,gCAAiChF,GAC9E4B,sBAAwB5B,GAASgF,EAAQ,uBAAwBhF,GACjE6B,kBAAmBA,EACnBC,cAAeA,IAEjB,kBAAC,EAAD,CACEtE,kBAAmBA,EACnBC,aAAcA,EACdC,0BAA4BsC,GAASgF,EAAQ,gCAAiChF,GAC9ErC,qBAAuBqC,GAASgF,EAAQ,wBAAyBhF,KAEjD,QAAjBe,EACC,kBAAC,EAAD,CACEM,MAAOA,EACPC,YAAaA,EACbC,aAAcA,EACdR,aAAcA,EACdS,SAAUA,EACVC,SAAUA,IAEV,KACJ,kBAAC,EAAD,CACElB,YAAaA,EACbC,kBAAmBA,EACnBC,kBAAmBA,EACnBC,WAAY,IAAMkF,GAAW,UAC7BjF,QAASA,EACTC,YAAaA,EACbC,WAAYA,EACZC,YAAa,IAAM8E,GAAW,WAC9B7E,aAAcA,EACdC,WAAY,IAAM4E,GAAW,UAC7B3E,eAAgBA,S","file":"pluginSidebar.js","sourcesContent":["/*! @license DOMPurify 2.3.0 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.3.0/LICENSE */\n\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global = global || self, global.DOMPurify = factory());\n}(this, function () { 'use strict';\n\n function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n var hasOwnProperty = Object.hasOwnProperty,\n setPrototypeOf = Object.setPrototypeOf,\n isFrozen = Object.isFrozen,\n getPrototypeOf = Object.getPrototypeOf,\n getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n var freeze = Object.freeze,\n seal = Object.seal,\n create = Object.create; // eslint-disable-line import/no-mutable-exports\n\n var _ref = typeof Reflect !== 'undefined' && Reflect,\n apply = _ref.apply,\n construct = _ref.construct;\n\n if (!apply) {\n apply = function apply(fun, thisValue, args) {\n return fun.apply(thisValue, args);\n };\n }\n\n if (!freeze) {\n freeze = function freeze(x) {\n return x;\n };\n }\n\n if (!seal) {\n seal = function seal(x) {\n return x;\n };\n }\n\n if (!construct) {\n construct = function construct(Func, args) {\n return new (Function.prototype.bind.apply(Func, [null].concat(_toConsumableArray(args))))();\n };\n }\n\n var arrayForEach = unapply(Array.prototype.forEach);\n var arrayPop = unapply(Array.prototype.pop);\n var arrayPush = unapply(Array.prototype.push);\n\n var stringToLowerCase = unapply(String.prototype.toLowerCase);\n var stringMatch = unapply(String.prototype.match);\n var stringReplace = unapply(String.prototype.replace);\n var stringIndexOf = unapply(String.prototype.indexOf);\n var stringTrim = unapply(String.prototype.trim);\n\n var regExpTest = unapply(RegExp.prototype.test);\n\n var typeErrorCreate = unconstruct(TypeError);\n\n function unapply(func) {\n return function (thisArg) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return apply(func, thisArg, args);\n };\n }\n\n function unconstruct(func) {\n return function () {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return construct(func, args);\n };\n }\n\n /* Add properties to a lookup table */\n function addToSet(set, array) {\n if (setPrototypeOf) {\n // Make 'in' and truthy checks like Boolean(set.constructor)\n // independent of any properties defined on Object.prototype.\n // Prevent prototype setters from intercepting set as a this value.\n setPrototypeOf(set, null);\n }\n\n var l = array.length;\n while (l--) {\n var element = array[l];\n if (typeof element === 'string') {\n var lcElement = stringToLowerCase(element);\n if (lcElement !== element) {\n // Config presets (e.g. tags.js, attrs.js) are immutable.\n if (!isFrozen(array)) {\n array[l] = lcElement;\n }\n\n element = lcElement;\n }\n }\n\n set[element] = true;\n }\n\n return set;\n }\n\n /* Shallow clone an object */\n function clone(object) {\n var newObject = create(null);\n\n var property = void 0;\n for (property in object) {\n if (apply(hasOwnProperty, object, [property])) {\n newObject[property] = object[property];\n }\n }\n\n return newObject;\n }\n\n /* IE10 doesn't support __lookupGetter__ so lets'\n * simulate it. It also automatically checks\n * if the prop is function or getter and behaves\n * accordingly. */\n function lookupGetter(object, prop) {\n while (object !== null) {\n var desc = getOwnPropertyDescriptor(object, prop);\n if (desc) {\n if (desc.get) {\n return unapply(desc.get);\n }\n\n if (typeof desc.value === 'function') {\n return unapply(desc.value);\n }\n }\n\n object = getPrototypeOf(object);\n }\n\n function fallbackValue(element) {\n console.warn('fallback value for', element);\n return null;\n }\n\n return fallbackValue;\n }\n\n var html = freeze(['a', 'abbr', 'acronym', 'address', 'area', 'article', 'aside', 'audio', 'b', 'bdi', 'bdo', 'big', 'blink', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'center', 'cite', 'code', 'col', 'colgroup', 'content', 'data', 'datalist', 'dd', 'decorator', 'del', 'details', 'dfn', 'dialog', 'dir', 'div', 'dl', 'dt', 'element', 'em', 'fieldset', 'figcaption', 'figure', 'font', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'img', 'input', 'ins', 'kbd', 'label', 'legend', 'li', 'main', 'map', 'mark', 'marquee', 'menu', 'menuitem', 'meter', 'nav', 'nobr', 'ol', 'optgroup', 'option', 'output', 'p', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'section', 'select', 'shadow', 'small', 'source', 'spacer', 'span', 'strike', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'template', 'textarea', 'tfoot', 'th', 'thead', 'time', 'tr', 'track', 'tt', 'u', 'ul', 'var', 'video', 'wbr']);\n\n // SVG\n var svg = freeze(['svg', 'a', 'altglyph', 'altglyphdef', 'altglyphitem', 'animatecolor', 'animatemotion', 'animatetransform', 'circle', 'clippath', 'defs', 'desc', 'ellipse', 'filter', 'font', 'g', 'glyph', 'glyphref', 'hkern', 'image', 'line', 'lineargradient', 'marker', 'mask', 'metadata', 'mpath', 'path', 'pattern', 'polygon', 'polyline', 'radialgradient', 'rect', 'stop', 'style', 'switch', 'symbol', 'text', 'textpath', 'title', 'tref', 'tspan', 'view', 'vkern']);\n\n var svgFilters = freeze(['feBlend', 'feColorMatrix', 'feComponentTransfer', 'feComposite', 'feConvolveMatrix', 'feDiffuseLighting', 'feDisplacementMap', 'feDistantLight', 'feFlood', 'feFuncA', 'feFuncB', 'feFuncG', 'feFuncR', 'feGaussianBlur', 'feMerge', 'feMergeNode', 'feMorphology', 'feOffset', 'fePointLight', 'feSpecularLighting', 'feSpotLight', 'feTile', 'feTurbulence']);\n\n // List of SVG elements that are disallowed by default.\n // We still need to know them so that we can do namespace\n // checks properly in case one wants to add them to\n // allow-list.\n var svgDisallowed = freeze(['animate', 'color-profile', 'cursor', 'discard', 'fedropshadow', 'feimage', 'font-face', 'font-face-format', 'font-face-name', 'font-face-src', 'font-face-uri', 'foreignobject', 'hatch', 'hatchpath', 'mesh', 'meshgradient', 'meshpatch', 'meshrow', 'missing-glyph', 'script', 'set', 'solidcolor', 'unknown', 'use']);\n\n var mathMl = freeze(['math', 'menclose', 'merror', 'mfenced', 'mfrac', 'mglyph', 'mi', 'mlabeledtr', 'mmultiscripts', 'mn', 'mo', 'mover', 'mpadded', 'mphantom', 'mroot', 'mrow', 'ms', 'mspace', 'msqrt', 'mstyle', 'msub', 'msup', 'msubsup', 'mtable', 'mtd', 'mtext', 'mtr', 'munder', 'munderover']);\n\n // Similarly to SVG, we want to know all MathML elements,\n // even those that we disallow by default.\n var mathMlDisallowed = freeze(['maction', 'maligngroup', 'malignmark', 'mlongdiv', 'mscarries', 'mscarry', 'msgroup', 'mstack', 'msline', 'msrow', 'semantics', 'annotation', 'annotation-xml', 'mprescripts', 'none']);\n\n var text = freeze(['#text']);\n\n var html$1 = freeze(['accept', 'action', 'align', 'alt', 'autocapitalize', 'autocomplete', 'autopictureinpicture', 'autoplay', 'background', 'bgcolor', 'border', 'capture', 'cellpadding', 'cellspacing', 'checked', 'cite', 'class', 'clear', 'color', 'cols', 'colspan', 'controls', 'controlslist', 'coords', 'crossorigin', 'datetime', 'decoding', 'default', 'dir', 'disabled', 'disablepictureinpicture', 'disableremoteplayback', 'download', 'draggable', 'enctype', 'enterkeyhint', 'face', 'for', 'headers', 'height', 'hidden', 'high', 'href', 'hreflang', 'id', 'inputmode', 'integrity', 'ismap', 'kind', 'label', 'lang', 'list', 'loading', 'loop', 'low', 'max', 'maxlength', 'media', 'method', 'min', 'minlength', 'multiple', 'muted', 'name', 'noshade', 'novalidate', 'nowrap', 'open', 'optimum', 'pattern', 'placeholder', 'playsinline', 'poster', 'preload', 'pubdate', 'radiogroup', 'readonly', 'rel', 'required', 'rev', 'reversed', 'role', 'rows', 'rowspan', 'spellcheck', 'scope', 'selected', 'shape', 'size', 'sizes', 'span', 'srclang', 'start', 'src', 'srcset', 'step', 'style', 'summary', 'tabindex', 'title', 'translate', 'type', 'usemap', 'valign', 'value', 'width', 'xmlns', 'slot']);\n\n var svg$1 = freeze(['accent-height', 'accumulate', 'additive', 'alignment-baseline', 'ascent', 'attributename', 'attributetype', 'azimuth', 'basefrequency', 'baseline-shift', 'begin', 'bias', 'by', 'class', 'clip', 'clippathunits', 'clip-path', 'clip-rule', 'color', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'cx', 'cy', 'd', 'dx', 'dy', 'diffuseconstant', 'direction', 'display', 'divisor', 'dur', 'edgemode', 'elevation', 'end', 'fill', 'fill-opacity', 'fill-rule', 'filter', 'filterunits', 'flood-color', 'flood-opacity', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'fx', 'fy', 'g1', 'g2', 'glyph-name', 'glyphref', 'gradientunits', 'gradienttransform', 'height', 'href', 'id', 'image-rendering', 'in', 'in2', 'k', 'k1', 'k2', 'k3', 'k4', 'kerning', 'keypoints', 'keysplines', 'keytimes', 'lang', 'lengthadjust', 'letter-spacing', 'kernelmatrix', 'kernelunitlength', 'lighting-color', 'local', 'marker-end', 'marker-mid', 'marker-start', 'markerheight', 'markerunits', 'markerwidth', 'maskcontentunits', 'maskunits', 'max', 'mask', 'media', 'method', 'mode', 'min', 'name', 'numoctaves', 'offset', 'operator', 'opacity', 'order', 'orient', 'orientation', 'origin', 'overflow', 'paint-order', 'path', 'pathlength', 'patterncontentunits', 'patterntransform', 'patternunits', 'points', 'preservealpha', 'preserveaspectratio', 'primitiveunits', 'r', 'rx', 'ry', 'radius', 'refx', 'refy', 'repeatcount', 'repeatdur', 'restart', 'result', 'rotate', 'scale', 'seed', 'shape-rendering', 'specularconstant', 'specularexponent', 'spreadmethod', 'startoffset', 'stddeviation', 'stitchtiles', 'stop-color', 'stop-opacity', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke', 'stroke-width', 'style', 'surfacescale', 'systemlanguage', 'tabindex', 'targetx', 'targety', 'transform', 'text-anchor', 'text-decoration', 'text-rendering', 'textlength', 'type', 'u1', 'u2', 'unicode', 'values', 'viewbox', 'visibility', 'version', 'vert-adv-y', 'vert-origin-x', 'vert-origin-y', 'width', 'word-spacing', 'wrap', 'writing-mode', 'xchannelselector', 'ychannelselector', 'x', 'x1', 'x2', 'xmlns', 'y', 'y1', 'y2', 'z', 'zoomandpan']);\n\n var mathMl$1 = freeze(['accent', 'accentunder', 'align', 'bevelled', 'close', 'columnsalign', 'columnlines', 'columnspan', 'denomalign', 'depth', 'dir', 'display', 'displaystyle', 'encoding', 'fence', 'frame', 'height', 'href', 'id', 'largeop', 'length', 'linethickness', 'lspace', 'lquote', 'mathbackground', 'mathcolor', 'mathsize', 'mathvariant', 'maxsize', 'minsize', 'movablelimits', 'notation', 'numalign', 'open', 'rowalign', 'rowlines', 'rowspacing', 'rowspan', 'rspace', 'rquote', 'scriptlevel', 'scriptminsize', 'scriptsizemultiplier', 'selection', 'separator', 'separators', 'stretchy', 'subscriptshift', 'supscriptshift', 'symmetric', 'voffset', 'width', 'xmlns']);\n\n var xml = freeze(['xlink:href', 'xml:id', 'xlink:title', 'xml:space', 'xmlns:xlink']);\n\n // eslint-disable-next-line unicorn/better-regex\n var MUSTACHE_EXPR = seal(/\\{\\{[\\s\\S]*|[\\s\\S]*\\}\\}/gm); // Specify template detection regex for SAFE_FOR_TEMPLATES mode\n var ERB_EXPR = seal(/<%[\\s\\S]*|[\\s\\S]*%>/gm);\n var DATA_ATTR = seal(/^data-[\\-\\w.\\u00B7-\\uFFFF]/); // eslint-disable-line no-useless-escape\n var ARIA_ATTR = seal(/^aria-[\\-\\w]+$/); // eslint-disable-line no-useless-escape\n var IS_ALLOWED_URI = seal(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\\-]+(?:[^a-z+.\\-:]|$))/i // eslint-disable-line no-useless-escape\n );\n var IS_SCRIPT_OR_DATA = seal(/^(?:\\w+script|data):/i);\n var ATTR_WHITESPACE = seal(/[\\u0000-\\u0020\\u00A0\\u1680\\u180E\\u2000-\\u2029\\u205F\\u3000]/g // eslint-disable-line no-control-regex\n );\n\n var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n function _toConsumableArray$1(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n var getGlobal = function getGlobal() {\n return typeof window === 'undefined' ? null : window;\n };\n\n /**\n * Creates a no-op policy for internal use only.\n * Don't export this function outside this module!\n * @param {?TrustedTypePolicyFactory} trustedTypes The policy factory.\n * @param {Document} document The document object (to determine policy name suffix)\n * @return {?TrustedTypePolicy} The policy created (or null, if Trusted Types\n * are not supported).\n */\n var _createTrustedTypesPolicy = function _createTrustedTypesPolicy(trustedTypes, document) {\n if ((typeof trustedTypes === 'undefined' ? 'undefined' : _typeof(trustedTypes)) !== 'object' || typeof trustedTypes.createPolicy !== 'function') {\n return null;\n }\n\n // Allow the callers to control the unique policy name\n // by adding a data-tt-policy-suffix to the script element with the DOMPurify.\n // Policy creation with duplicate names throws in Trusted Types.\n var suffix = null;\n var ATTR_NAME = 'data-tt-policy-suffix';\n if (document.currentScript && document.currentScript.hasAttribute(ATTR_NAME)) {\n suffix = document.currentScript.getAttribute(ATTR_NAME);\n }\n\n var policyName = 'dompurify' + (suffix ? '#' + suffix : '');\n\n try {\n return trustedTypes.createPolicy(policyName, {\n createHTML: function createHTML(html$$1) {\n return html$$1;\n }\n });\n } catch (_) {\n // Policy creation failed (most likely another DOMPurify script has\n // already run). Skip creating the policy, as this will only cause errors\n // if TT are enforced.\n console.warn('TrustedTypes policy ' + policyName + ' could not be created.');\n return null;\n }\n };\n\n function createDOMPurify() {\n var window = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getGlobal();\n\n var DOMPurify = function DOMPurify(root) {\n return createDOMPurify(root);\n };\n\n /**\n * Version label, exposed for easier checks\n * if DOMPurify is up to date or not\n */\n DOMPurify.version = '2.3.0';\n\n /**\n * Array of elements that DOMPurify removed during sanitation.\n * Empty if nothing was removed.\n */\n DOMPurify.removed = [];\n\n if (!window || !window.document || window.document.nodeType !== 9) {\n // Not running in a browser, provide a factory function\n // so that you can pass your own Window\n DOMPurify.isSupported = false;\n\n return DOMPurify;\n }\n\n var originalDocument = window.document;\n\n var document = window.document;\n var DocumentFragment = window.DocumentFragment,\n HTMLTemplateElement = window.HTMLTemplateElement,\n Node = window.Node,\n Element = window.Element,\n NodeFilter = window.NodeFilter,\n _window$NamedNodeMap = window.NamedNodeMap,\n NamedNodeMap = _window$NamedNodeMap === undefined ? window.NamedNodeMap || window.MozNamedAttrMap : _window$NamedNodeMap,\n Text = window.Text,\n Comment = window.Comment,\n DOMParser = window.DOMParser,\n trustedTypes = window.trustedTypes;\n\n\n var ElementPrototype = Element.prototype;\n\n var cloneNode = lookupGetter(ElementPrototype, 'cloneNode');\n var getNextSibling = lookupGetter(ElementPrototype, 'nextSibling');\n var getChildNodes = lookupGetter(ElementPrototype, 'childNodes');\n var getParentNode = lookupGetter(ElementPrototype, 'parentNode');\n\n // As per issue #47, the web-components registry is inherited by a\n // new document created via createHTMLDocument. As per the spec\n // (http://w3c.github.io/webcomponents/spec/custom/#creating-and-passing-registries)\n // a new empty registry is used when creating a template contents owner\n // document, so we use that as our parent document to ensure nothing\n // is inherited.\n if (typeof HTMLTemplateElement === 'function') {\n var template = document.createElement('template');\n if (template.content && template.content.ownerDocument) {\n document = template.content.ownerDocument;\n }\n }\n\n var trustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, originalDocument);\n var emptyHTML = trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML('') : '';\n\n var _document = document,\n implementation = _document.implementation,\n createNodeIterator = _document.createNodeIterator,\n createDocumentFragment = _document.createDocumentFragment,\n getElementsByTagName = _document.getElementsByTagName;\n var importNode = originalDocument.importNode;\n\n\n var documentMode = {};\n try {\n documentMode = clone(document).documentMode ? document.documentMode : {};\n } catch (_) {}\n\n var hooks = {};\n\n /**\n * Expose whether this browser supports running the full DOMPurify.\n */\n DOMPurify.isSupported = typeof getParentNode === 'function' && implementation && typeof implementation.createHTMLDocument !== 'undefined' && documentMode !== 9;\n\n var MUSTACHE_EXPR$$1 = MUSTACHE_EXPR,\n ERB_EXPR$$1 = ERB_EXPR,\n DATA_ATTR$$1 = DATA_ATTR,\n ARIA_ATTR$$1 = ARIA_ATTR,\n IS_SCRIPT_OR_DATA$$1 = IS_SCRIPT_OR_DATA,\n ATTR_WHITESPACE$$1 = ATTR_WHITESPACE;\n var IS_ALLOWED_URI$$1 = IS_ALLOWED_URI;\n\n /**\n * We consider the elements and attributes below to be safe. Ideally\n * don't add any new ones but feel free to remove unwanted ones.\n */\n\n /* allowed element names */\n\n var ALLOWED_TAGS = null;\n var DEFAULT_ALLOWED_TAGS = addToSet({}, [].concat(_toConsumableArray$1(html), _toConsumableArray$1(svg), _toConsumableArray$1(svgFilters), _toConsumableArray$1(mathMl), _toConsumableArray$1(text)));\n\n /* Allowed attribute names */\n var ALLOWED_ATTR = null;\n var DEFAULT_ALLOWED_ATTR = addToSet({}, [].concat(_toConsumableArray$1(html$1), _toConsumableArray$1(svg$1), _toConsumableArray$1(mathMl$1), _toConsumableArray$1(xml)));\n\n /* Explicitly forbidden tags (overrides ALLOWED_TAGS/ADD_TAGS) */\n var FORBID_TAGS = null;\n\n /* Explicitly forbidden attributes (overrides ALLOWED_ATTR/ADD_ATTR) */\n var FORBID_ATTR = null;\n\n /* Decide if ARIA attributes are okay */\n var ALLOW_ARIA_ATTR = true;\n\n /* Decide if custom data attributes are okay */\n var ALLOW_DATA_ATTR = true;\n\n /* Decide if unknown protocols are okay */\n var ALLOW_UNKNOWN_PROTOCOLS = false;\n\n /* Output should be safe for common template engines.\n * This means, DOMPurify removes data attributes, mustaches and ERB\n */\n var SAFE_FOR_TEMPLATES = false;\n\n /* Decide if document with ... should be returned */\n var WHOLE_DOCUMENT = false;\n\n /* Track whether config is already set on this instance of DOMPurify. */\n var SET_CONFIG = false;\n\n /* Decide if all elements (e.g. style, script) must be children of\n * document.body. By default, browsers might move them to document.head */\n var FORCE_BODY = false;\n\n /* Decide if a DOM `HTMLBodyElement` should be returned, instead of a html\n * string (or a TrustedHTML object if Trusted Types are supported).\n * If `WHOLE_DOCUMENT` is enabled a `HTMLHtmlElement` will be returned instead\n */\n var RETURN_DOM = false;\n\n /* Decide if a DOM `DocumentFragment` should be returned, instead of a html\n * string (or a TrustedHTML object if Trusted Types are supported) */\n var RETURN_DOM_FRAGMENT = false;\n\n /* If `RETURN_DOM` or `RETURN_DOM_FRAGMENT` is enabled, decide if the returned DOM\n * `Node` is imported into the current `Document`. If this flag is not enabled the\n * `Node` will belong (its ownerDocument) to a fresh `HTMLDocument`, created by\n * DOMPurify.\n *\n * This defaults to `true` starting DOMPurify 2.2.0. Note that setting it to `false`\n * might cause XSS from attacks hidden in closed shadowroots in case the browser\n * supports Declarative Shadow: DOM https://web.dev/declarative-shadow-dom/\n */\n var RETURN_DOM_IMPORT = true;\n\n /* Try to return a Trusted Type object instead of a string, return a string in\n * case Trusted Types are not supported */\n var RETURN_TRUSTED_TYPE = false;\n\n /* Output should be free from DOM clobbering attacks? */\n var SANITIZE_DOM = true;\n\n /* Keep element content when removing element? */\n var KEEP_CONTENT = true;\n\n /* If a `Node` is passed to sanitize(), then performs sanitization in-place instead\n * of importing it into a new Document and returning a sanitized copy */\n var IN_PLACE = false;\n\n /* Allow usage of profiles like html, svg and mathMl */\n var USE_PROFILES = {};\n\n /* Tags to ignore content of when KEEP_CONTENT is true */\n var FORBID_CONTENTS = addToSet({}, ['annotation-xml', 'audio', 'colgroup', 'desc', 'foreignobject', 'head', 'iframe', 'math', 'mi', 'mn', 'mo', 'ms', 'mtext', 'noembed', 'noframes', 'noscript', 'plaintext', 'script', 'style', 'svg', 'template', 'thead', 'title', 'video', 'xmp']);\n\n /* Tags that are safe for data: URIs */\n var DATA_URI_TAGS = null;\n var DEFAULT_DATA_URI_TAGS = addToSet({}, ['audio', 'video', 'img', 'source', 'image', 'track']);\n\n /* Attributes safe for values like \"javascript:\" */\n var URI_SAFE_ATTRIBUTES = null;\n var DEFAULT_URI_SAFE_ATTRIBUTES = addToSet({}, ['alt', 'class', 'for', 'id', 'label', 'name', 'pattern', 'placeholder', 'summary', 'title', 'value', 'style', 'xmlns']);\n\n var MATHML_NAMESPACE = 'http://www.w3.org/1998/Math/MathML';\n var SVG_NAMESPACE = 'http://www.w3.org/2000/svg';\n var HTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';\n /* Document namespace */\n var NAMESPACE = HTML_NAMESPACE;\n var IS_EMPTY_INPUT = false;\n\n /* Keep a reference to config to pass to hooks */\n var CONFIG = null;\n\n /* Ideally, do not touch anything below this line */\n /* ______________________________________________ */\n\n var formElement = document.createElement('form');\n\n /**\n * _parseConfig\n *\n * @param {Object} cfg optional config literal\n */\n // eslint-disable-next-line complexity\n var _parseConfig = function _parseConfig(cfg) {\n if (CONFIG && CONFIG === cfg) {\n return;\n }\n\n /* Shield configuration object from tampering */\n if (!cfg || (typeof cfg === 'undefined' ? 'undefined' : _typeof(cfg)) !== 'object') {\n cfg = {};\n }\n\n /* Shield configuration object from prototype pollution */\n cfg = clone(cfg);\n\n /* Set configuration parameters */\n ALLOWED_TAGS = 'ALLOWED_TAGS' in cfg ? addToSet({}, cfg.ALLOWED_TAGS) : DEFAULT_ALLOWED_TAGS;\n ALLOWED_ATTR = 'ALLOWED_ATTR' in cfg ? addToSet({}, cfg.ALLOWED_ATTR) : DEFAULT_ALLOWED_ATTR;\n URI_SAFE_ATTRIBUTES = 'ADD_URI_SAFE_ATTR' in cfg ? addToSet(clone(DEFAULT_URI_SAFE_ATTRIBUTES), cfg.ADD_URI_SAFE_ATTR) : DEFAULT_URI_SAFE_ATTRIBUTES;\n DATA_URI_TAGS = 'ADD_DATA_URI_TAGS' in cfg ? addToSet(clone(DEFAULT_DATA_URI_TAGS), cfg.ADD_DATA_URI_TAGS) : DEFAULT_DATA_URI_TAGS;\n FORBID_TAGS = 'FORBID_TAGS' in cfg ? addToSet({}, cfg.FORBID_TAGS) : {};\n FORBID_ATTR = 'FORBID_ATTR' in cfg ? addToSet({}, cfg.FORBID_ATTR) : {};\n USE_PROFILES = 'USE_PROFILES' in cfg ? cfg.USE_PROFILES : false;\n ALLOW_ARIA_ATTR = cfg.ALLOW_ARIA_ATTR !== false; // Default true\n ALLOW_DATA_ATTR = cfg.ALLOW_DATA_ATTR !== false; // Default true\n ALLOW_UNKNOWN_PROTOCOLS = cfg.ALLOW_UNKNOWN_PROTOCOLS || false; // Default false\n SAFE_FOR_TEMPLATES = cfg.SAFE_FOR_TEMPLATES || false; // Default false\n WHOLE_DOCUMENT = cfg.WHOLE_DOCUMENT || false; // Default false\n RETURN_DOM = cfg.RETURN_DOM || false; // Default false\n RETURN_DOM_FRAGMENT = cfg.RETURN_DOM_FRAGMENT || false; // Default false\n RETURN_DOM_IMPORT = cfg.RETURN_DOM_IMPORT !== false; // Default true\n RETURN_TRUSTED_TYPE = cfg.RETURN_TRUSTED_TYPE || false; // Default false\n FORCE_BODY = cfg.FORCE_BODY || false; // Default false\n SANITIZE_DOM = cfg.SANITIZE_DOM !== false; // Default true\n KEEP_CONTENT = cfg.KEEP_CONTENT !== false; // Default true\n IN_PLACE = cfg.IN_PLACE || false; // Default false\n IS_ALLOWED_URI$$1 = cfg.ALLOWED_URI_REGEXP || IS_ALLOWED_URI$$1;\n NAMESPACE = cfg.NAMESPACE || HTML_NAMESPACE;\n if (SAFE_FOR_TEMPLATES) {\n ALLOW_DATA_ATTR = false;\n }\n\n if (RETURN_DOM_FRAGMENT) {\n RETURN_DOM = true;\n }\n\n /* Parse profile info */\n if (USE_PROFILES) {\n ALLOWED_TAGS = addToSet({}, [].concat(_toConsumableArray$1(text)));\n ALLOWED_ATTR = [];\n if (USE_PROFILES.html === true) {\n addToSet(ALLOWED_TAGS, html);\n addToSet(ALLOWED_ATTR, html$1);\n }\n\n if (USE_PROFILES.svg === true) {\n addToSet(ALLOWED_TAGS, svg);\n addToSet(ALLOWED_ATTR, svg$1);\n addToSet(ALLOWED_ATTR, xml);\n }\n\n if (USE_PROFILES.svgFilters === true) {\n addToSet(ALLOWED_TAGS, svgFilters);\n addToSet(ALLOWED_ATTR, svg$1);\n addToSet(ALLOWED_ATTR, xml);\n }\n\n if (USE_PROFILES.mathMl === true) {\n addToSet(ALLOWED_TAGS, mathMl);\n addToSet(ALLOWED_ATTR, mathMl$1);\n addToSet(ALLOWED_ATTR, xml);\n }\n }\n\n /* Merge configuration parameters */\n if (cfg.ADD_TAGS) {\n if (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) {\n ALLOWED_TAGS = clone(ALLOWED_TAGS);\n }\n\n addToSet(ALLOWED_TAGS, cfg.ADD_TAGS);\n }\n\n if (cfg.ADD_ATTR) {\n if (ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) {\n ALLOWED_ATTR = clone(ALLOWED_ATTR);\n }\n\n addToSet(ALLOWED_ATTR, cfg.ADD_ATTR);\n }\n\n if (cfg.ADD_URI_SAFE_ATTR) {\n addToSet(URI_SAFE_ATTRIBUTES, cfg.ADD_URI_SAFE_ATTR);\n }\n\n /* Add #text in case KEEP_CONTENT is set to true */\n if (KEEP_CONTENT) {\n ALLOWED_TAGS['#text'] = true;\n }\n\n /* Add html, head and body to ALLOWED_TAGS in case WHOLE_DOCUMENT is true */\n if (WHOLE_DOCUMENT) {\n addToSet(ALLOWED_TAGS, ['html', 'head', 'body']);\n }\n\n /* Add tbody to ALLOWED_TAGS in case tables are permitted, see #286, #365 */\n if (ALLOWED_TAGS.table) {\n addToSet(ALLOWED_TAGS, ['tbody']);\n delete FORBID_TAGS.tbody;\n }\n\n // Prevent further manipulation of configuration.\n // Not available in IE8, Safari 5, etc.\n if (freeze) {\n freeze(cfg);\n }\n\n CONFIG = cfg;\n };\n\n var MATHML_TEXT_INTEGRATION_POINTS = addToSet({}, ['mi', 'mo', 'mn', 'ms', 'mtext']);\n\n var HTML_INTEGRATION_POINTS = addToSet({}, ['foreignobject', 'desc', 'title', 'annotation-xml']);\n\n /* Keep track of all possible SVG and MathML tags\n * so that we can perform the namespace checks\n * correctly. */\n var ALL_SVG_TAGS = addToSet({}, svg);\n addToSet(ALL_SVG_TAGS, svgFilters);\n addToSet(ALL_SVG_TAGS, svgDisallowed);\n\n var ALL_MATHML_TAGS = addToSet({}, mathMl);\n addToSet(ALL_MATHML_TAGS, mathMlDisallowed);\n\n /**\n *\n *\n * @param {Element} element a DOM element whose namespace is being checked\n * @returns {boolean} Return false if the element has a\n * namespace that a spec-compliant parser would never\n * return. Return true otherwise.\n */\n var _checkValidNamespace = function _checkValidNamespace(element) {\n var parent = getParentNode(element);\n\n // In JSDOM, if we're inside shadow DOM, then parentNode\n // can be null. We just simulate parent in this case.\n if (!parent || !parent.tagName) {\n parent = {\n namespaceURI: HTML_NAMESPACE,\n tagName: 'template'\n };\n }\n\n var tagName = stringToLowerCase(element.tagName);\n var parentTagName = stringToLowerCase(parent.tagName);\n\n if (element.namespaceURI === SVG_NAMESPACE) {\n // The only way to switch from HTML namespace to SVG\n // is via . If it happens via any other tag, then\n // it should be killed.\n if (parent.namespaceURI === HTML_NAMESPACE) {\n return tagName === 'svg';\n }\n\n // The only way to switch from MathML to SVG is via\n // svg if parent is either or MathML\n // text integration points.\n if (parent.namespaceURI === MATHML_NAMESPACE) {\n return tagName === 'svg' && (parentTagName === 'annotation-xml' || MATHML_TEXT_INTEGRATION_POINTS[parentTagName]);\n }\n\n // We only allow elements that are defined in SVG\n // spec. All others are disallowed in SVG namespace.\n return Boolean(ALL_SVG_TAGS[tagName]);\n }\n\n if (element.namespaceURI === MATHML_NAMESPACE) {\n // The only way to switch from HTML namespace to MathML\n // is via . If it happens via any other tag, then\n // it should be killed.\n if (parent.namespaceURI === HTML_NAMESPACE) {\n return tagName === 'math';\n }\n\n // The only way to switch from SVG to MathML is via\n // and HTML integration points\n if (parent.namespaceURI === SVG_NAMESPACE) {\n return tagName === 'math' && HTML_INTEGRATION_POINTS[parentTagName];\n }\n\n // We only allow elements that are defined in MathML\n // spec. All others are disallowed in MathML namespace.\n return Boolean(ALL_MATHML_TAGS[tagName]);\n }\n\n if (element.namespaceURI === HTML_NAMESPACE) {\n // The only way to switch from SVG to HTML is via\n // HTML integration points, and from MathML to HTML\n // is via MathML text integration points\n if (parent.namespaceURI === SVG_NAMESPACE && !HTML_INTEGRATION_POINTS[parentTagName]) {\n return false;\n }\n\n if (parent.namespaceURI === MATHML_NAMESPACE && !MATHML_TEXT_INTEGRATION_POINTS[parentTagName]) {\n return false;\n }\n\n // Certain elements are allowed in both SVG and HTML\n // namespace. We need to specify them explicitly\n // so that they don't get erronously deleted from\n // HTML namespace.\n var commonSvgAndHTMLElements = addToSet({}, ['title', 'style', 'font', 'a', 'script']);\n\n // We disallow tags that are specific for MathML\n // or SVG and should never appear in HTML namespace\n return !ALL_MATHML_TAGS[tagName] && (commonSvgAndHTMLElements[tagName] || !ALL_SVG_TAGS[tagName]);\n }\n\n // The code should never reach this place (this means\n // that the element somehow got namespace that is not\n // HTML, SVG or MathML). Return false just in case.\n return false;\n };\n\n /**\n * _forceRemove\n *\n * @param {Node} node a DOM node\n */\n var _forceRemove = function _forceRemove(node) {\n arrayPush(DOMPurify.removed, { element: node });\n try {\n // eslint-disable-next-line unicorn/prefer-dom-node-remove\n node.parentNode.removeChild(node);\n } catch (_) {\n try {\n node.outerHTML = emptyHTML;\n } catch (_) {\n node.remove();\n }\n }\n };\n\n /**\n * _removeAttribute\n *\n * @param {String} name an Attribute name\n * @param {Node} node a DOM node\n */\n var _removeAttribute = function _removeAttribute(name, node) {\n try {\n arrayPush(DOMPurify.removed, {\n attribute: node.getAttributeNode(name),\n from: node\n });\n } catch (_) {\n arrayPush(DOMPurify.removed, {\n attribute: null,\n from: node\n });\n }\n\n node.removeAttribute(name);\n\n // We void attribute values for unremovable \"is\"\" attributes\n if (name === 'is' && !ALLOWED_ATTR[name]) {\n if (RETURN_DOM || RETURN_DOM_FRAGMENT) {\n try {\n _forceRemove(node);\n } catch (_) {}\n } else {\n try {\n node.setAttribute(name, '');\n } catch (_) {}\n }\n }\n };\n\n /**\n * _initDocument\n *\n * @param {String} dirty a string of dirty markup\n * @return {Document} a DOM, filled with the dirty markup\n */\n var _initDocument = function _initDocument(dirty) {\n /* Create a HTML document */\n var doc = void 0;\n var leadingWhitespace = void 0;\n\n if (FORCE_BODY) {\n dirty = ' ' + dirty;\n } else {\n /* If FORCE_BODY isn't used, leading whitespace needs to be preserved manually */\n var matches = stringMatch(dirty, /^[\\r\\n\\t ]+/);\n leadingWhitespace = matches && matches[0];\n }\n\n var dirtyPayload = trustedTypesPolicy ? trustedTypesPolicy.createHTML(dirty) : dirty;\n /*\n * Use the DOMParser API by default, fallback later if needs be\n * DOMParser not work for svg when has multiple root element.\n */\n if (NAMESPACE === HTML_NAMESPACE) {\n try {\n doc = new DOMParser().parseFromString(dirtyPayload, 'text/html');\n } catch (_) {}\n }\n\n /* Use createHTMLDocument in case DOMParser is not available */\n if (!doc || !doc.documentElement) {\n doc = implementation.createDocument(NAMESPACE, 'template', null);\n try {\n doc.documentElement.innerHTML = IS_EMPTY_INPUT ? '' : dirtyPayload;\n } catch (_) {\n // Syntax error if dirtyPayload is invalid xml\n }\n }\n\n var body = doc.body || doc.documentElement;\n\n if (dirty && leadingWhitespace) {\n body.insertBefore(document.createTextNode(leadingWhitespace), body.childNodes[0] || null);\n }\n\n /* Work on whole document or just its body */\n if (NAMESPACE === HTML_NAMESPACE) {\n return getElementsByTagName.call(doc, WHOLE_DOCUMENT ? 'html' : 'body')[0];\n }\n\n return WHOLE_DOCUMENT ? doc.documentElement : body;\n };\n\n /**\n * _createIterator\n *\n * @param {Document} root document/fragment to create iterator for\n * @return {Iterator} iterator instance\n */\n var _createIterator = function _createIterator(root) {\n return createNodeIterator.call(root.ownerDocument || root, root, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT, null, false);\n };\n\n /**\n * _isClobbered\n *\n * @param {Node} elm element to check for clobbering attacks\n * @return {Boolean} true if clobbered, false if safe\n */\n var _isClobbered = function _isClobbered(elm) {\n if (elm instanceof Text || elm instanceof Comment) {\n return false;\n }\n\n if (typeof elm.nodeName !== 'string' || typeof elm.textContent !== 'string' || typeof elm.removeChild !== 'function' || !(elm.attributes instanceof NamedNodeMap) || typeof elm.removeAttribute !== 'function' || typeof elm.setAttribute !== 'function' || typeof elm.namespaceURI !== 'string' || typeof elm.insertBefore !== 'function') {\n return true;\n }\n\n return false;\n };\n\n /**\n * _isNode\n *\n * @param {Node} obj object to check whether it's a DOM node\n * @return {Boolean} true is object is a DOM node\n */\n var _isNode = function _isNode(object) {\n return (typeof Node === 'undefined' ? 'undefined' : _typeof(Node)) === 'object' ? object instanceof Node : object && (typeof object === 'undefined' ? 'undefined' : _typeof(object)) === 'object' && typeof object.nodeType === 'number' && typeof object.nodeName === 'string';\n };\n\n /**\n * _executeHook\n * Execute user configurable hooks\n *\n * @param {String} entryPoint Name of the hook's entry point\n * @param {Node} currentNode node to work on with the hook\n * @param {Object} data additional hook parameters\n */\n var _executeHook = function _executeHook(entryPoint, currentNode, data) {\n if (!hooks[entryPoint]) {\n return;\n }\n\n arrayForEach(hooks[entryPoint], function (hook) {\n hook.call(DOMPurify, currentNode, data, CONFIG);\n });\n };\n\n /**\n * _sanitizeElements\n *\n * @protect nodeName\n * @protect textContent\n * @protect removeChild\n *\n * @param {Node} currentNode to check for permission to exist\n * @return {Boolean} true if node was killed, false if left alive\n */\n var _sanitizeElements = function _sanitizeElements(currentNode) {\n var content = void 0;\n\n /* Execute a hook if present */\n _executeHook('beforeSanitizeElements', currentNode, null);\n\n /* Check if element is clobbered or can clobber */\n if (_isClobbered(currentNode)) {\n _forceRemove(currentNode);\n return true;\n }\n\n /* Check if tagname contains Unicode */\n if (stringMatch(currentNode.nodeName, /[\\u0080-\\uFFFF]/)) {\n _forceRemove(currentNode);\n return true;\n }\n\n /* Now let's check the element's type and name */\n var tagName = stringToLowerCase(currentNode.nodeName);\n\n /* Execute a hook if present */\n _executeHook('uponSanitizeElement', currentNode, {\n tagName: tagName,\n allowedTags: ALLOWED_TAGS\n });\n\n /* Detect mXSS attempts abusing namespace confusion */\n if (!_isNode(currentNode.firstElementChild) && (!_isNode(currentNode.content) || !_isNode(currentNode.content.firstElementChild)) && regExpTest(/<[/\\w]/g, currentNode.innerHTML) && regExpTest(/<[/\\w]/g, currentNode.textContent)) {\n _forceRemove(currentNode);\n return true;\n }\n\n /* Remove element if anything forbids its presence */\n if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) {\n /* Keep content except for bad-listed elements */\n if (KEEP_CONTENT && !FORBID_CONTENTS[tagName]) {\n var parentNode = getParentNode(currentNode) || currentNode.parentNode;\n var childNodes = getChildNodes(currentNode) || currentNode.childNodes;\n\n if (childNodes && parentNode) {\n var childCount = childNodes.length;\n\n for (var i = childCount - 1; i >= 0; --i) {\n parentNode.insertBefore(cloneNode(childNodes[i], true), getNextSibling(currentNode));\n }\n }\n }\n\n _forceRemove(currentNode);\n return true;\n }\n\n /* Check whether element has a valid namespace */\n if (currentNode instanceof Element && !_checkValidNamespace(currentNode)) {\n _forceRemove(currentNode);\n return true;\n }\n\n if ((tagName === 'noscript' || tagName === 'noembed') && regExpTest(/<\\/no(script|embed)/i, currentNode.innerHTML)) {\n _forceRemove(currentNode);\n return true;\n }\n\n /* Sanitize element content to be template-safe */\n if (SAFE_FOR_TEMPLATES && currentNode.nodeType === 3) {\n /* Get the element's text content */\n content = currentNode.textContent;\n content = stringReplace(content, MUSTACHE_EXPR$$1, ' ');\n content = stringReplace(content, ERB_EXPR$$1, ' ');\n if (currentNode.textContent !== content) {\n arrayPush(DOMPurify.removed, { element: currentNode.cloneNode() });\n currentNode.textContent = content;\n }\n }\n\n /* Execute a hook if present */\n _executeHook('afterSanitizeElements', currentNode, null);\n\n return false;\n };\n\n /**\n * _isValidAttribute\n *\n * @param {string} lcTag Lowercase tag name of containing element.\n * @param {string} lcName Lowercase attribute name.\n * @param {string} value Attribute value.\n * @return {Boolean} Returns true if `value` is valid, otherwise false.\n */\n // eslint-disable-next-line complexity\n var _isValidAttribute = function _isValidAttribute(lcTag, lcName, value) {\n /* Make sure attribute cannot clobber */\n if (SANITIZE_DOM && (lcName === 'id' || lcName === 'name') && (value in document || value in formElement)) {\n return false;\n }\n\n /* Allow valid data-* attributes: At least one character after \"-\"\n (https://html.spec.whatwg.org/multipage/dom.html#embedding-custom-non-visible-data-with-the-data-*-attributes)\n XML-compatible (https://html.spec.whatwg.org/multipage/infrastructure.html#xml-compatible and http://www.w3.org/TR/xml/#d0e804)\n We don't need to check the value; it's always URI safe. */\n if (ALLOW_DATA_ATTR && !FORBID_ATTR[lcName] && regExpTest(DATA_ATTR$$1, lcName)) ; else if (ALLOW_ARIA_ATTR && regExpTest(ARIA_ATTR$$1, lcName)) ; else if (!ALLOWED_ATTR[lcName] || FORBID_ATTR[lcName]) {\n return false;\n\n /* Check value is safe. First, is attr inert? If so, is safe */\n } else if (URI_SAFE_ATTRIBUTES[lcName]) ; else if (regExpTest(IS_ALLOWED_URI$$1, stringReplace(value, ATTR_WHITESPACE$$1, ''))) ; else if ((lcName === 'src' || lcName === 'xlink:href' || lcName === 'href') && lcTag !== 'script' && stringIndexOf(value, 'data:') === 0 && DATA_URI_TAGS[lcTag]) ; else if (ALLOW_UNKNOWN_PROTOCOLS && !regExpTest(IS_SCRIPT_OR_DATA$$1, stringReplace(value, ATTR_WHITESPACE$$1, ''))) ; else if (!value) ; else {\n return false;\n }\n\n return true;\n };\n\n /**\n * _sanitizeAttributes\n *\n * @protect attributes\n * @protect nodeName\n * @protect removeAttribute\n * @protect setAttribute\n *\n * @param {Node} currentNode to sanitize\n */\n var _sanitizeAttributes = function _sanitizeAttributes(currentNode) {\n var attr = void 0;\n var value = void 0;\n var lcName = void 0;\n var l = void 0;\n /* Execute a hook if present */\n _executeHook('beforeSanitizeAttributes', currentNode, null);\n\n var attributes = currentNode.attributes;\n\n /* Check if we have attributes; if not we might have a text node */\n\n if (!attributes) {\n return;\n }\n\n var hookEvent = {\n attrName: '',\n attrValue: '',\n keepAttr: true,\n allowedAttributes: ALLOWED_ATTR\n };\n l = attributes.length;\n\n /* Go backwards over all attributes; safely remove bad ones */\n while (l--) {\n attr = attributes[l];\n var _attr = attr,\n name = _attr.name,\n namespaceURI = _attr.namespaceURI;\n\n value = stringTrim(attr.value);\n lcName = stringToLowerCase(name);\n\n /* Execute a hook if present */\n hookEvent.attrName = lcName;\n hookEvent.attrValue = value;\n hookEvent.keepAttr = true;\n hookEvent.forceKeepAttr = undefined; // Allows developers to see this is a property they can set\n _executeHook('uponSanitizeAttribute', currentNode, hookEvent);\n value = hookEvent.attrValue;\n /* Did the hooks approve of the attribute? */\n if (hookEvent.forceKeepAttr) {\n continue;\n }\n\n /* Remove attribute */\n _removeAttribute(name, currentNode);\n\n /* Did the hooks approve of the attribute? */\n if (!hookEvent.keepAttr) {\n continue;\n }\n\n /* Work around a security issue in jQuery 3.0 */\n if (regExpTest(/\\/>/i, value)) {\n _removeAttribute(name, currentNode);\n continue;\n }\n\n /* Sanitize attribute content to be template-safe */\n if (SAFE_FOR_TEMPLATES) {\n value = stringReplace(value, MUSTACHE_EXPR$$1, ' ');\n value = stringReplace(value, ERB_EXPR$$1, ' ');\n }\n\n /* Is `value` valid for this attribute? */\n var lcTag = currentNode.nodeName.toLowerCase();\n if (!_isValidAttribute(lcTag, lcName, value)) {\n continue;\n }\n\n /* Handle invalid data-* attribute set by try-catching it */\n try {\n if (namespaceURI) {\n currentNode.setAttributeNS(namespaceURI, name, value);\n } else {\n /* Fallback to setAttribute() for browser-unrecognized namespaces e.g. \"x-schema\". */\n currentNode.setAttribute(name, value);\n }\n\n arrayPop(DOMPurify.removed);\n } catch (_) {}\n }\n\n /* Execute a hook if present */\n _executeHook('afterSanitizeAttributes', currentNode, null);\n };\n\n /**\n * _sanitizeShadowDOM\n *\n * @param {DocumentFragment} fragment to iterate over recursively\n */\n var _sanitizeShadowDOM = function _sanitizeShadowDOM(fragment) {\n var shadowNode = void 0;\n var shadowIterator = _createIterator(fragment);\n\n /* Execute a hook if present */\n _executeHook('beforeSanitizeShadowDOM', fragment, null);\n\n while (shadowNode = shadowIterator.nextNode()) {\n /* Execute a hook if present */\n _executeHook('uponSanitizeShadowNode', shadowNode, null);\n\n /* Sanitize tags and elements */\n if (_sanitizeElements(shadowNode)) {\n continue;\n }\n\n /* Deep shadow DOM detected */\n if (shadowNode.content instanceof DocumentFragment) {\n _sanitizeShadowDOM(shadowNode.content);\n }\n\n /* Check attributes, sanitize if necessary */\n _sanitizeAttributes(shadowNode);\n }\n\n /* Execute a hook if present */\n _executeHook('afterSanitizeShadowDOM', fragment, null);\n };\n\n /**\n * Sanitize\n * Public method providing core sanitation functionality\n *\n * @param {String|Node} dirty string or DOM node\n * @param {Object} configuration object\n */\n // eslint-disable-next-line complexity\n DOMPurify.sanitize = function (dirty, cfg) {\n var body = void 0;\n var importedNode = void 0;\n var currentNode = void 0;\n var oldNode = void 0;\n var returnNode = void 0;\n /* Make sure we have a string to sanitize.\n DO NOT return early, as this will return the wrong type if\n the user has requested a DOM object rather than a string */\n IS_EMPTY_INPUT = !dirty;\n if (IS_EMPTY_INPUT) {\n dirty = '';\n }\n\n /* Stringify, in case dirty is an object */\n if (typeof dirty !== 'string' && !_isNode(dirty)) {\n // eslint-disable-next-line no-negated-condition\n if (typeof dirty.toString !== 'function') {\n throw typeErrorCreate('toString is not a function');\n } else {\n dirty = dirty.toString();\n if (typeof dirty !== 'string') {\n throw typeErrorCreate('dirty is not a string, aborting');\n }\n }\n }\n\n /* Check we can run. Otherwise fall back or ignore */\n if (!DOMPurify.isSupported) {\n if (_typeof(window.toStaticHTML) === 'object' || typeof window.toStaticHTML === 'function') {\n if (typeof dirty === 'string') {\n return window.toStaticHTML(dirty);\n }\n\n if (_isNode(dirty)) {\n return window.toStaticHTML(dirty.outerHTML);\n }\n }\n\n return dirty;\n }\n\n /* Assign config vars */\n if (!SET_CONFIG) {\n _parseConfig(cfg);\n }\n\n /* Clean up removed elements */\n DOMPurify.removed = [];\n\n /* Check if dirty is correctly typed for IN_PLACE */\n if (typeof dirty === 'string') {\n IN_PLACE = false;\n }\n\n if (IN_PLACE) ; else if (dirty instanceof Node) {\n /* If dirty is a DOM element, append to an empty document to avoid\n elements being stripped by the parser */\n body = _initDocument('');\n importedNode = body.ownerDocument.importNode(dirty, true);\n if (importedNode.nodeType === 1 && importedNode.nodeName === 'BODY') {\n /* Node is already a body, use as is */\n body = importedNode;\n } else if (importedNode.nodeName === 'HTML') {\n body = importedNode;\n } else {\n // eslint-disable-next-line unicorn/prefer-dom-node-append\n body.appendChild(importedNode);\n }\n } else {\n /* Exit directly if we have nothing to do */\n if (!RETURN_DOM && !SAFE_FOR_TEMPLATES && !WHOLE_DOCUMENT &&\n // eslint-disable-next-line unicorn/prefer-includes\n dirty.indexOf('<') === -1) {\n return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(dirty) : dirty;\n }\n\n /* Initialize the document to work on */\n body = _initDocument(dirty);\n\n /* Check we have a DOM node from the data */\n if (!body) {\n return RETURN_DOM ? null : emptyHTML;\n }\n }\n\n /* Remove first element node (ours) if FORCE_BODY is set */\n if (body && FORCE_BODY) {\n _forceRemove(body.firstChild);\n }\n\n /* Get node iterator */\n var nodeIterator = _createIterator(IN_PLACE ? dirty : body);\n\n /* Now start iterating over the created document */\n while (currentNode = nodeIterator.nextNode()) {\n /* Fix IE's strange behavior with manipulated textNodes #89 */\n if (currentNode.nodeType === 3 && currentNode === oldNode) {\n continue;\n }\n\n /* Sanitize tags and elements */\n if (_sanitizeElements(currentNode)) {\n continue;\n }\n\n /* Shadow DOM detected, sanitize it */\n if (currentNode.content instanceof DocumentFragment) {\n _sanitizeShadowDOM(currentNode.content);\n }\n\n /* Check attributes, sanitize if necessary */\n _sanitizeAttributes(currentNode);\n\n oldNode = currentNode;\n }\n\n oldNode = null;\n\n /* If we sanitized `dirty` in-place, return it. */\n if (IN_PLACE) {\n return dirty;\n }\n\n /* Return sanitized string or DOM */\n if (RETURN_DOM) {\n if (RETURN_DOM_FRAGMENT) {\n returnNode = createDocumentFragment.call(body.ownerDocument);\n\n while (body.firstChild) {\n // eslint-disable-next-line unicorn/prefer-dom-node-append\n returnNode.appendChild(body.firstChild);\n }\n } else {\n returnNode = body;\n }\n\n if (RETURN_DOM_IMPORT) {\n /*\n AdoptNode() is not used because internal state is not reset\n (e.g. the past names map of a HTMLFormElement), this is safe\n in theory but we would rather not risk another attack vector.\n The state that is cloned by importNode() is explicitly defined\n by the specs.\n */\n returnNode = importNode.call(originalDocument, returnNode, true);\n }\n\n return returnNode;\n }\n\n var serializedHTML = WHOLE_DOCUMENT ? body.outerHTML : body.innerHTML;\n\n /* Sanitize final string template-safe */\n if (SAFE_FOR_TEMPLATES) {\n serializedHTML = stringReplace(serializedHTML, MUSTACHE_EXPR$$1, ' ');\n serializedHTML = stringReplace(serializedHTML, ERB_EXPR$$1, ' ');\n }\n\n return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(serializedHTML) : serializedHTML;\n };\n\n /**\n * Public method to set the configuration once\n * setConfig\n *\n * @param {Object} cfg configuration object\n */\n DOMPurify.setConfig = function (cfg) {\n _parseConfig(cfg);\n SET_CONFIG = true;\n };\n\n /**\n * Public method to remove the configuration\n * clearConfig\n *\n */\n DOMPurify.clearConfig = function () {\n CONFIG = null;\n SET_CONFIG = false;\n };\n\n /**\n * Public method to check if an attribute value is valid.\n * Uses last set config, if any. Otherwise, uses config defaults.\n * isValidAttribute\n *\n * @param {string} tag Tag name of containing element.\n * @param {string} attr Attribute name.\n * @param {string} value Attribute value.\n * @return {Boolean} Returns true if `value` is valid. Otherwise, returns false.\n */\n DOMPurify.isValidAttribute = function (tag, attr, value) {\n /* Initialize shared config vars if necessary. */\n if (!CONFIG) {\n _parseConfig({});\n }\n\n var lcTag = stringToLowerCase(tag);\n var lcName = stringToLowerCase(attr);\n return _isValidAttribute(lcTag, lcName, value);\n };\n\n /**\n * AddHook\n * Public method to add DOMPurify hooks\n *\n * @param {String} entryPoint entry point for the hook to add\n * @param {Function} hookFunction function to execute\n */\n DOMPurify.addHook = function (entryPoint, hookFunction) {\n if (typeof hookFunction !== 'function') {\n return;\n }\n\n hooks[entryPoint] = hooks[entryPoint] || [];\n arrayPush(hooks[entryPoint], hookFunction);\n };\n\n /**\n * RemoveHook\n * Public method to remove a DOMPurify hook at a given entryPoint\n * (pops it from the stack of hooks if more are present)\n *\n * @param {String} entryPoint entry point for the hook to remove\n */\n DOMPurify.removeHook = function (entryPoint) {\n if (hooks[entryPoint]) {\n arrayPop(hooks[entryPoint]);\n }\n };\n\n /**\n * RemoveHooks\n * Public method to remove all DOMPurify hooks at a given entryPoint\n *\n * @param {String} entryPoint entry point for the hooks to remove\n */\n DOMPurify.removeHooks = function (entryPoint) {\n if (hooks[entryPoint]) {\n hooks[entryPoint] = [];\n }\n };\n\n /**\n * RemoveAllHooks\n * Public method to remove all DOMPurify hooks\n *\n */\n DOMPurify.removeAllHooks = function () {\n hooks = {};\n };\n\n return DOMPurify;\n }\n\n var purify = createDOMPurify();\n\n return purify;\n\n}));\n//# sourceMappingURL=purify.js.map\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var __WEBPACK_NAMESPACE_OBJECT__ = window[\"wp\"][\"plugins\"];","var __WEBPACK_NAMESPACE_OBJECT__ = window[\"React\"];","import React from 'react';\n\nconst Icon = () => (\n \n \n \n \n \n \n \n \n \n);\n\nexport default Icon;\n","var __WEBPACK_NAMESPACE_OBJECT__ = window[\"wp\"][\"apiFetch\"];","var __WEBPACK_NAMESPACE_OBJECT__ = window[\"wp\"][\"data\"];","var __WEBPACK_NAMESPACE_OBJECT__ = window[\"wp\"][\"editPost\"];","var __WEBPACK_NAMESPACE_OBJECT__ = window[\"wp\"][\"i18n\"];","var __WEBPACK_NAMESPACE_OBJECT__ = window[\"wp\"][\"coreData\"];","var __WEBPACK_NAMESPACE_OBJECT__ = window[\"wp\"][\"components\"];","var __WEBPACK_NAMESPACE_OBJECT__ = window[\"wp\"][\"blockEditor\"];","/**\n * Given a media object returned from the WordPress REST API, extracts the\n * URL for the media item at the requested size if it exists, or the full\n * size if it does not. Returns an empty string if unable to find either.\n * @param {object} media - A media object returned by the WordPress API.\n * @param {string} size - Media size to request. Default: full\n * @returns {string} - The URL to the asset, or an empty string on failure.\n */\nconst getMediaUrl = (media, size = 'full') => {\n const {\n media_details: {\n sizes: {\n [size]: {\n source_url: firstChoice = '',\n } = {},\n full: {\n source_url: thirdChoice = '',\n } = {},\n } = {},\n } = {},\n sizes: {\n [size]: {\n url: secondChoice = '',\n } = {},\n full: {\n url: fourthChoice = '',\n } = {},\n } = {},\n source_url: fifthChoice = '',\n url: sixthChoice = '',\n } = media;\n\n return firstChoice\n || secondChoice\n || thirdChoice\n || fourthChoice\n || fifthChoice\n || sixthChoice\n || '';\n};\n\nexport default getMediaUrl;\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport { Button, Spinner } from '@wordpress/components';\nimport { MediaUpload, MediaUploadCheck } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\n\n// Services.\nimport getMediaUrl from '../../services/media/get-media-url';\n\nconst MediaPicker = ({\n allowedTypes,\n className,\n value,\n imageSize,\n onReset,\n onUpdate,\n}) => {\n // Get the media object given the media ID.\n const {\n media = null,\n } = useSelect((select) => ({\n media: select('core').getMedia(value),\n }), [value]);\n\n // getEntityRecord returns `null` if the load is in progress.\n if (value !== 0 && media === null) {\n return (\n \n );\n }\n\n return (\n \n
\n (\n <>\n {value !== 0 && media !== null ? (\n \n
\n
\n \n { __('Replace File', 'apple-news')}\n \n \n { __('Remove File', 'apple-news')}\n \n
\n
\n ) : null}\n {value === 0 ? (\n \n \n { __('Select/add File', 'apple-news')}\n \n
\n ) : null}\n >\n )}\n />\n \n
\n );\n};\n\nMediaPicker.defaultProps = {\n allowedTypes: [],\n className: '',\n imageSize: 'thumbnail',\n};\n\nMediaPicker.propTypes = {\n allowedTypes: PropTypes.arrayOf([PropTypes.string]),\n className: PropTypes.string,\n value: PropTypes.number.isRequired,\n imageSize: PropTypes.string,\n onReset: PropTypes.func.isRequired,\n onUpdate: PropTypes.func.isRequired,\n};\n\nexport default MediaPicker;\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\n// Components.\nimport MediaPicker from '../media-picker';\n\nconst ImagePicker = ({\n className,\n imageSize,\n onReset,\n onUpdate,\n value,\n}) => (\n \n);\n\nImagePicker.defaultProps = {\n className: '',\n imageSize: 'thumbnail',\n};\n\nImagePicker.propTypes = {\n className: PropTypes.string,\n imageSize: PropTypes.string,\n onReset: PropTypes.func.isRequired,\n onUpdate: PropTypes.func.isRequired,\n value: PropTypes.number.isRequired,\n};\n\nexport default ImagePicker;\n","import { BaseControl, PanelBody, TextareaControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\n// Components.\nimport ImagePicker from '../../components/image-picker';\n\nconst CoverImage = ({\n coverImageCaption,\n coverImageId,\n onChangeCoverImageCaption,\n onChangeCoverImageId,\n}) => (\n \n \n onChangeCoverImageId(0)}\n onUpdate={({ id }) => onChangeCoverImageId(id)}\n value={coverImageId}\n />\n \n \n \n);\n\nCoverImage.propTypes = {\n coverImageCaption: PropTypes.string.isRequired,\n coverImageId: PropTypes.number.isRequired,\n onChangeCoverImageCaption: PropTypes.func.isRequired,\n onChangeCoverImageId: PropTypes.func.isRequired,\n};\n\nexport default CoverImage;\n","import { PanelBody, SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nconst MaturityRating = ({\n maturityRating,\n onChangeMaturityRating,\n}) => (\n \n \n \n);\n\nMaturityRating.propTypes = {\n maturityRating: PropTypes.string.isRequired,\n onChangeMaturityRating: PropTypes.func.isRequired,\n};\n\nexport default MaturityRating;\n","/* eslint-disable import/prefer-default-export */\n\nimport PropTypes from 'prop-types';\n\nexport const METADATA_SHAPE = {\n key: PropTypes.string.isRequired,\n type: PropTypes.oneOf([\n 'array',\n 'boolean',\n 'number',\n 'string',\n ]),\n value: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.string),\n PropTypes.bool,\n PropTypes.number,\n PropTypes.string,\n ]),\n};\n\nexport const SECTION_SHAPE = {\n id: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n};\n","/**\n * Given an array of values, returns a copy of the array with the value at the\n * given index removed.\n * @param {Array} values - The array of values to modify.\n * @param {number} index - The index to remove.\n * @returns {Array} A copy of the values array with the value at the specified index removed.\n */\nconst deleteAtIndex = (values, index) => values.filter((value, idx) => index !== idx);\n\nexport default deleteAtIndex;\n","/**\n * Given an array of objects, a key, and a value, returns a copy of the array\n * with the value for the key set at the given index.\n * @param {Array} values - An array of objects.\n * @param {string} key - The object key to update.\n * @param {*} value - The value to set for the key.\n * @param {number} index - The index to set the value on.\n * @returns {Array} A copy of the array with the value set for the key at the given index.\n */\nconst updateValueAtIndex = (values, key, value, index) => {\n const valuesCopy = values.map((item) => ({ ...item }));\n valuesCopy[index][key] = value;\n return valuesCopy;\n};\n\nexport default updateValueAtIndex;\n","import {\n Button,\n CheckboxControl,\n PanelBody,\n SelectControl,\n TextControl,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\n// Config.\nimport { METADATA_SHAPE } from '../../config/prop-types';\n\n// Util.\nimport deleteAtIndex from '../../util/delete-at-index';\nimport updateValueAtIndex from '../../util/update-value-at-index';\n\nconst Metadata = ({\n isHidden,\n isPaid,\n isPreview,\n isSponsored,\n metadata,\n onChangeIsHidden,\n onChangeIsPaid,\n onChangeIsPreview,\n onChangeIsSponsored,\n onChangeMetadata,\n}) => (\n \n \n \n \n \n {__('Custom Metadata', 'apple-news')} \n {metadata.map(({ key, type, value }, index) => (\n // eslint-disable-next-line react/no-array-index-key\n \n onChangeMetadata(updateValueAtIndex(metadata, 'key', next, index))}\n value={key}\n />\n onChangeMetadata(updateValueAtIndex(metadata, 'type', next, index))}\n options={[\n { label: __('string', 'apple-news'), value: 'string' },\n { label: __('boolean', 'apple-news'), value: 'boolean' },\n { label: __('number', 'apple-news'), value: 'number' },\n { label: __('array', 'apple-news'), value: 'array' },\n ]}\n value={type}\n />\n {type === 'boolean' ? (\n onChangeMetadata(updateValueAtIndex(metadata, 'value', next === 'true', index))}\n options={[\n { label: __('', 'apple-news'), value: '' },\n { label: __('true', 'apple-news'), value: 'true' },\n { label: __('false', 'apple-news'), value: 'false' },\n ]}\n value={value}\n />\n ) : (\n onChangeMetadata(updateValueAtIndex(metadata, 'value', type === 'number' ? parseFloat(next) : next, index))}\n type={type === 'number' ? 'number' : 'text'}\n value={value}\n />\n )}\n onChangeMetadata(deleteAtIndex(metadata, index))}\n style={{ marginBottom: '1em' }}\n >\n {__('Remove', 'apple-news')}\n \n
\n ))}\n onChangeMetadata([...metadata, { key: '', type: 'string', value: '' }])}\n >\n {__('Add Metadata', 'apple-news')}\n \n \n);\n\nMetadata.propTypes = {\n isHidden: PropTypes.bool.isRequired,\n isPaid: PropTypes.bool.isRequired,\n isPreview: PropTypes.bool.isRequired,\n isSponsored: PropTypes.bool.isRequired,\n metadata: PropTypes.arrayOf(PropTypes.shape(METADATA_SHAPE)).isRequired,\n onChangeIsHidden: PropTypes.func.isRequired,\n onChangeIsPaid: PropTypes.func.isRequired,\n onChangeIsPreview: PropTypes.func.isRequired,\n onChangeIsSponsored: PropTypes.func.isRequired,\n onChangeMetadata: PropTypes.func.isRequired,\n};\n\nexport default Metadata;\n","import { Button, Spinner } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nconst PublishControls = ({\n apiAutosync,\n apiAutosyncDelete,\n apiAutosyncUpdate,\n deletePost,\n loading,\n postIsDirty,\n postStatus,\n publishPost,\n publishState,\n updatePost,\n userCanPublish,\n}) => {\n // If the post isn't published, or the user can't publish to Apple News, bail.\n if (postStatus !== 'publish' || !userCanPublish) {\n return null;\n }\n\n // If we're loading, spin.\n if (loading) {\n return ;\n }\n\n return (\n <>\n {postIsDirty ? (\n \n \n {__('Please click the Update button above to ensure that all changes are saved before publishing to Apple News.', 'apple-news')}\n \n
\n ) : null}\n {publishState !== 'N/A' && !apiAutosyncUpdate ? (\n \n {__('Update', 'apple-news')}\n \n ) : null}\n {publishState !== 'N/A' && !apiAutosyncDelete ? (\n \n {__('Delete', 'apple-news')}\n \n ) : null}\n {publishState === 'N/A' && !apiAutosync ? (\n \n {__('Publish', 'apple-news')}\n \n ) : null}\n >\n );\n};\n\nPublishControls.propTypes = {\n apiAutosync: PropTypes.bool.isRequired,\n apiAutosyncDelete: PropTypes.bool.isRequired,\n apiAutosyncUpdate: PropTypes.bool.isRequired,\n deletePost: PropTypes.func.isRequired,\n loading: PropTypes.bool.isRequired,\n postIsDirty: PropTypes.bool.isRequired,\n postStatus: PropTypes.string.isRequired,\n publishPost: PropTypes.func.isRequired,\n publishState: PropTypes.string.isRequired,\n updatePost: PropTypes.func.isRequired,\n userCanPublish: PropTypes.bool.isRequired,\n};\n\nexport default PublishControls;\n","import { PanelBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nconst PublishInfo = ({\n apiId,\n dateCreated,\n dateModified,\n revision,\n shareUrl,\n publishState,\n}) => {\n if (!publishState || publishState === 'N/A') {\n return null;\n }\n\n return (\n \n {__('API Id', 'apple-news')} \n {apiId}
\n {__('Created On', 'apple-news')} \n {dateCreated}
\n {__('Last Updated On', 'apple-news')} \n {dateModified}
\n {__('Share URL', 'apple-news')} \n {shareUrl}
\n {__('Revision', 'apple-news')} \n {revision}
\n {__('Publish State', 'apple-news')} \n {publishState}
\n \n );\n};\n\nPublishInfo.propTypes = {\n apiId: PropTypes.string.isRequired,\n dateCreated: PropTypes.string.isRequired,\n dateModified: PropTypes.string.isRequired,\n revision: PropTypes.string.isRequired,\n shareUrl: PropTypes.string.isRequired,\n publishState: PropTypes.string.isRequired,\n};\n\nexport default PublishInfo;\n","import {\n PanelBody,\n SelectControl,\n TextareaControl,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nconst PullQuote = ({\n onChangePullquotePosition,\n onChangePullquoteText,\n pullquotePosition,\n pullquoteText,\n}) => (\n \n \n \n \n);\n\nPullQuote.propTypes = {\n onChangePullquotePosition: PropTypes.func.isRequired,\n onChangePullquoteText: PropTypes.func.isRequired,\n pullquotePosition: PropTypes.string.isRequired,\n pullquoteText: PropTypes.string.isRequired,\n};\n\nexport default PullQuote;\n","import {\n BaseControl,\n CheckboxControl,\n PanelBody,\n Spinner,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\n// Config.\nimport { SECTION_SHAPE } from '../../config/prop-types';\n\nconst Sections = ({\n autoAssignCategories,\n automaticAssignment,\n onChangeAutoAssignCategories,\n onChangeSelectedSections,\n sections,\n selectedSections,\n}) => (\n \n {!Array.isArray(sections) || sections.length === 0 ? (\n \n ) : (\n <>\n {automaticAssignment ? (\n \n ) : null}\n {automaticAssignment && !autoAssignCategories ? : null}\n {(!automaticAssignment || !autoAssignCategories) ? (\n \n {sections.map(({ id, name }) => (\n onChangeSelectedSections(id)}\n />\n ))}\n \n ) : null}\n >\n )}\n \n);\n\nSections.propTypes = {\n autoAssignCategories: PropTypes.bool.isRequired,\n automaticAssignment: PropTypes.bool.isRequired,\n onChangeAutoAssignCategories: PropTypes.func.isRequired,\n onChangeSelectedSections: PropTypes.func.isRequired,\n sections: PropTypes.arrayOf(PropTypes.shape(SECTION_SHAPE)).isRequired,\n selectedSections: PropTypes.arrayOf(PropTypes.string).isRequired,\n};\n\nexport default Sections;\n","import {\n PanelBody,\n TextControl,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nconst Slug = ({\n onChangeSlug,\n slug,\n}) => (\n \n \n \n);\n\nSlug.propTypes = {\n onChangeSlug: PropTypes.func.isRequired,\n slug: PropTypes.string.isRequired,\n};\n\nexport default Slug;\n","import safeJsonParse from './safe-json-parse';\n\n/**\n * Given a value, run JSON.parse on it, but if parsing fails, or if\n * what results from the parse is not an array, return an empty\n * array rather than a syntax error or a value of another type.\n * @param {*} value - The value to attempt to parse.\n * @returns {array} - The parsed value, or an empty array on failure.\n */\nconst safeJsonParseArray = (value) => {\n const parsedValue = safeJsonParse(value);\n\n // Make absolutely sure that the parsed value is an array.\n if (!Array.isArray(parsedValue)) {\n return [];\n }\n\n return parsedValue;\n};\n\nexport default safeJsonParseArray;\n","/**\n * Given a value, run JSON.parse on it, but if parsing fails, return null\n * instead of throwing a SyntaxError.\n * @param {*} value - The value to attempt to parse.\n * @returns {*} - The parsed value, or null on failure.\n */\nconst safeJsonParse = (value) => {\n try {\n return JSON.parse(value);\n } catch (e) {\n return null;\n }\n};\n\nexport default safeJsonParse;\n","import { registerPlugin } from '@wordpress/plugins';\nimport React from 'react';\n\n// Components.\nimport Icon from '../components/icon';\nimport Sidebar from './sidebar';\n\nregisterPlugin('publish-to-apple-news', {\n icon: ,\n render: Sidebar,\n});\n","import apiFetch from '@wordpress/api-fetch';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n PluginSidebar,\n PluginSidebarMoreMenuItem,\n} from '@wordpress/edit-post';\nimport { __ } from '@wordpress/i18n';\nimport DOMPurify from 'dompurify';\nimport React, { useCallback, useEffect, useState } from 'react';\n\n// Hooks.\nimport usePostMeta from '../services/hooks/use-post-meta';\n\n// Panels.\nimport CoverImage from './panels/cover-image';\nimport MaturityRating from './panels/maturity-rating';\nimport Metadata from './panels/metadata';\nimport PublishControls from './panels/publish-controls';\nimport PublishInfo from './panels/publish-info';\nimport PullQuote from './panels/pull-quote';\nimport Sections from './panels/sections';\nimport Slug from './panels/slug';\n\n// Utils.\nimport safeJsonParseArray from '../util/safe-json-parse-array';\n\nconst Sidebar = () => {\n const [state, setState] = useState({\n autoAssignCategories: false,\n loading: false,\n publishState: 'N/A',\n sections: [],\n settings: {\n apiAutosync: false,\n apiAutosyncDelete: false,\n apiAutosyncUpdate: false,\n automaticAssignment: false,\n },\n userCanPublish: false,\n });\n\n // Destructure values out of state for easier access.\n const {\n autoAssignCategories,\n loading,\n publishState,\n sections,\n settings: {\n apiAutosync,\n apiAutosyncDelete,\n apiAutosyncUpdate,\n automaticAssignment,\n },\n userCanPublish,\n } = state;\n\n // Get a reference to the dispatch function for notices for use later.\n const dispatchNotice = useDispatch('core/notices');\n\n // Get the current post ID.\n const {\n notices,\n postId,\n postIsDirty,\n postStatus,\n } = useSelect((select) => {\n const editor = select('core/editor');\n return {\n notices: editor.getEditedPostAttribute('apple_news_notices'),\n postId: editor.getCurrentPostId(),\n postIsDirty: editor.isEditedPostDirty(),\n postStatus: editor.getEditedPostAttribute('status'),\n };\n });\n\n // Getter/setter for postmeta managed by this PluginSidebar.\n const [{\n apple_news_api_created_at: dateCreated = '',\n apple_news_api_id: apiId = '',\n apple_news_api_modified_at: dateModified = '',\n apple_news_api_revision: revision = '',\n apple_news_api_share_url: shareUrl = '',\n apple_news_coverimage: coverImageId = 0,\n apple_news_coverimage_caption: coverImageCaption = '',\n apple_news_is_hidden: isHidden = false,\n apple_news_is_paid: isPaid = false,\n apple_news_is_preview: isPreview = false,\n apple_news_is_sponsored: isSponsored = false,\n apple_news_maturity_rating: maturityRating = '',\n apple_news_metadata: metadataRaw = '',\n apple_news_pullquote: pullquoteText = '',\n apple_news_pullquote_position: pullquotePosition = '',\n apple_news_sections: selectedSectionsRaw = '',\n apple_news_slug: slug = '',\n }, setMeta] = usePostMeta();\n\n // Decode selected sections.\n const metadata = safeJsonParseArray(metadataRaw);\n const selectedSections = safeJsonParseArray(selectedSectionsRaw);\n\n /**\n * A helper function for displaying a notification to the user.\n * @param {string} message - The notification message displayed to the user.\n * @param {string} type - Optional. The type of message to display. Defaults to success.\n */\n const displayNotification = useCallback((message, type = 'success') => (type === 'success'\n ? dispatchNotice.createInfoNotice(DOMPurify.sanitize(message), { type: 'snackbar' })\n : dispatchNotice.createErrorNotice(DOMPurify.sanitize(message))\n ), [dispatchNotice]);\n\n /**\n * Sends a request to the REST API to modify the post.\n * @param {string} operation - One of delete, publish, update.\n */\n const modifyPost = async (operation) => {\n setState({\n ...state,\n loading: true,\n });\n\n try {\n const {\n notifications = [],\n publishState: nextPublishState = '',\n } = await apiFetch({\n data: {\n id: postId,\n },\n method: 'POST',\n path: `/apple-news/v1/${operation}`,\n });\n notifications.forEach((notification) => displayNotification(\n notification.message,\n notification.type,\n ));\n setState({\n ...state,\n loading: false,\n publishState: nextPublishState,\n });\n } catch (error) {\n displayNotification(error.message, 'error');\n setState({\n ...state,\n loading: false,\n });\n }\n };\n\n /**\n * A helper function to update which sections are selected.\n * @param {string} id - The id of the section to toggle.\n */\n const toggleSelectedSection = (id) => setMeta('apple_news_sections',\n selectedSections.includes(id)\n ? JSON.stringify(selectedSections.filter((section) => section !== id))\n : JSON.stringify([...selectedSections, id]));\n\n // On initial load, fetch info from the API into state.\n useEffect(() => {\n (async () => {\n const fetches = [\n await apiFetch({ path: `/apple-news/v1/get-published-state/${postId}` }),\n await apiFetch({ path: '/apple-news/v1/sections' }),\n await apiFetch({ path: '/apple-news/v1/get-settings' }),\n await apiFetch({ path: `/apple-news/v1/user-can-publish/${postId}` }),\n ];\n\n // Wait for everything to load, update state, and handle errors.\n try {\n const data = await Promise.all(fetches);\n setState({\n ...state,\n autoAssignCategories: (selectedSections === null || selectedSections.length === 0)\n && data[2].automaticAssignment === true,\n ...data[0],\n sections: data[1],\n settings: data[2],\n ...data[3],\n });\n } catch (error) {\n displayNotification(error.message, 'error');\n }\n })();\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n // Display notices whenever they change.\n useEffect(() => {\n notices.forEach((notice) => displayNotification(notice.message, notice.type));\n }, [displayNotification, notices]);\n\n return (\n <>\n \n {__('Apple News Options', 'apple-news')}\n \n \n {\n setState({\n ...state,\n autoAssignCategories: next,\n });\n setMeta('apple_news_sections', '');\n }}\n onChangeSelectedSections={toggleSelectedSection}\n sections={sections}\n selectedSections={selectedSections}\n />\n setMeta('apple_news_is_hidden', next)}\n onChangeIsPaid={(next) => setMeta('apple_news_is_paid', next)}\n onChangeIsPreview={(next) => setMeta('apple_news_is_preview', next)}\n onChangeIsSponsored={(next) => setMeta('apple_news_is_sponsored', next)}\n onChangeMetadata={(next) => setMeta('apple_news_metadata', JSON.stringify(next))}\n />\n setMeta('apple_news_maturity_rating', next)}\n />\n setMeta('apple_news_slug', next)}\n slug={slug}\n />\n setMeta('apple_news_pullquote_position', next)}\n onChangePullquoteText={(next) => setMeta('apple_news_pullquote', next)}\n pullquotePosition={pullquotePosition}\n pullquoteText={pullquoteText}\n />\n setMeta('apple_news_coverimage_caption', next)}\n onChangeCoverImageId={(next) => setMeta('apple_news_coverimage', next)}\n />\n {publishState !== 'N/A' ? (\n \n ) : null}\n modifyPost('delete')}\n loading={loading}\n postIsDirty={postIsDirty}\n postStatus={postStatus}\n publishPost={() => modifyPost('publish')}\n publishState={publishState}\n updatePost={() => modifyPost('update')}\n userCanPublish={userCanPublish}\n />\n \n >\n );\n};\n\nexport default Sidebar;\n","import { useEntityProp } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * A custom React hook that wraps useEntityProp for working with postmeta. It\n * returns an array that contains a copy of postmeta as well as a helper\n * function that sets a meta value for a given key. This hook is intended to\n * reduce boilerplate code in components that need to read and write postmeta.\n * By default, it operates on postmeta for the current post, but you can\n * optionally pass a post type and post ID in order to get and set post meta\n * for an arbitrary post.\n * @param {string} postType - Optional. The post type to get and set meta for.\n * Defaults to the post type of the current post.\n * @param {number} postId - Optional. The post ID to get and set meta for.\n * Defaults to the ID of the current post.\n * @returns {array} An array containing an object representing postmeta and an update function.\n */\nconst usePostMeta = (postType = null, postId = null) => {\n // Ensures that we have a post type, since we need it as an argument to useEntityProp.\n const type = useSelect((select) => postType || select('core/editor').getCurrentPostType(), []);\n\n // Get the value of meta and a function for updating meta from useEntityProp.\n const [meta, setMeta] = useEntityProp('postType', type, 'meta', postId);\n\n /**\n * A helper function for updating postmeta that accepts a meta key and meta\n * value rather than entirely new meta object.\n * @param {string} key - The meta key to update.\n * @param {*} value - The meta value to update.\n */\n const setPostMeta = (key, value) => setMeta({\n ...meta,\n [key]: value,\n });\n\n return [meta, setPostMeta];\n};\n\nexport default usePostMeta;\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/composer.json b/composer.json
deleted file mode 100644
index 337beebed..000000000
--- a/composer.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "name" : "alleyinteractive/apple-news",
- "description": "The 'Publish to Apple News' plugin enables WordPress sites with approved Apple News channels to publish content directly on Apple News. Note that Apple News is a distribution platform for professional publications of a journalistic nature, and not all applications will be accepted.",
- "homepage" : "https://github.com/alleyinteractive/apple-news",
- "type" : "wordpress-plugin",
- "license" : "GPL-3.0-or-later",
- "require" : {
- "composer/installers": "~1.0"
- },
- "require-dev": {
- "phpspec/prophecy": "~1.0",
- "alleyinteractive/alley-coding-standards": "^0.3.0",
- "phpunit/phpunit": "6.5.*"
- },
- "scripts": {
- "phpcbf" : "phpcbf .",
- "phpcs" : "phpcs .",
- "phpunit" : "phpunit"
- }
-}
diff --git a/package-lock.json b/package-lock.json
deleted file mode 100644
index dce0207a8..000000000
--- a/package-lock.json
+++ /dev/null
@@ -1,20973 +0,0 @@
-{
- "name": "publish-to-apple-news",
- "version": "2.2.1",
- "lockfileVersion": 2,
- "requires": true,
- "packages": {
- "": {
- "name": "publish-to-apple-news",
- "version": "2.2.1",
- "hasInstallScript": true,
- "license": "GPLv3",
- "dependencies": {
- "@wordpress/a11y": "^3.1.0",
- "@wordpress/annotations": "^2.1.0",
- "@wordpress/api-fetch": "^5.1.0",
- "@wordpress/autop": "^3.1.0",
- "@wordpress/blob": "^3.1.0",
- "@wordpress/block-directory": "^2.1.2",
- "@wordpress/block-editor": "^6.1.0",
- "@wordpress/block-library": "^3.2.1",
- "@wordpress/block-serialization-default-parser": "^4.1.0",
- "@wordpress/block-serialization-spec-parser": "^4.1.0",
- "@wordpress/blocks": "^9.1.0",
- "@wordpress/components": "^14.1.0",
- "@wordpress/compose": "^4.1.0",
- "@wordpress/core-data": "^3.1.1",
- "@wordpress/customize-widgets": "^1.0.1",
- "@wordpress/data": "^5.1.0",
- "@wordpress/data-controls": "^2.1.0",
- "@wordpress/date": "^4.1.0",
- "@wordpress/deprecated": "^3.1.0",
- "@wordpress/dom": "^3.1.0",
- "@wordpress/dom-ready": "^3.1.0",
- "@wordpress/edit-post": "^4.1.2",
- "@wordpress/edit-site": "^2.1.2",
- "@wordpress/edit-widgets": "^2.1.2",
- "@wordpress/editor": "^10.1.1",
- "@wordpress/element": "^3.1.0",
- "@wordpress/escape-html": "^2.1.0",
- "@wordpress/format-library": "^2.1.0",
- "@wordpress/hooks": "^3.1.0",
- "@wordpress/html-entities": "^3.1.0",
- "@wordpress/i18n": "^4.1.0",
- "@wordpress/icons": "^4.0.0",
- "@wordpress/interface": "^3.1.0",
- "@wordpress/is-shallow-equal": "^4.1.0",
- "@wordpress/keyboard-shortcuts": "^2.1.0",
- "@wordpress/keycodes": "^3.1.0",
- "@wordpress/list-reusable-blocks": "^2.1.0",
- "@wordpress/media-utils": "^2.1.0",
- "@wordpress/notices": "^3.1.0",
- "@wordpress/nux": "^4.1.0",
- "@wordpress/plugins": "^3.1.0",
- "@wordpress/primitives": "^2.1.0",
- "@wordpress/priority-queue": "^2.1.0",
- "@wordpress/react-i18n": "^2.1.0",
- "@wordpress/redux-routine": "^4.1.0",
- "@wordpress/reusable-blocks": "^2.1.1",
- "@wordpress/rich-text": "^4.1.0",
- "@wordpress/server-side-render": "^2.1.0",
- "@wordpress/shortcode": "^3.1.0",
- "@wordpress/token-list": "^2.1.0",
- "@wordpress/url": "^3.1.0",
- "@wordpress/viewport": "^3.1.0",
- "@wordpress/warning": "^2.1.0",
- "@wordpress/widgets": "^1.1.1",
- "@wordpress/wordcount": "^3.1.0",
- "classnames": "^2.3.1",
- "dompurify": "^2.3.0",
- "prop-types": "^15.7.2",
- "react": "^16.13.1"
- },
- "devDependencies": {
- "@babel/core": "^7.14.8",
- "@babel/eslint-parser": "^7.14.7",
- "@babel/preset-env": "^7.14.8",
- "@babel/preset-react": "^7.14.5",
- "@wordpress/dependency-extraction-webpack-plugin": "^3.1.3",
- "autoprefixer": "^10.3.1",
- "babel-jest": "^27.0.6",
- "babel-loader": "^8.2.2",
- "chalk": "^4.1.1",
- "check-node-version": "^4.1.0",
- "clean-webpack-plugin": "^4.0.0-alpha.0",
- "eslint": "^7.31.0",
- "eslint-config-airbnb": "^18.2.1",
- "eslint-plugin-import": "^2.23.4",
- "eslint-plugin-jsx-a11y": "^6.4.1",
- "eslint-plugin-react": "^7.24.0",
- "eslint-plugin-react-hooks": "^4.2.0",
- "jest": "^27.0.6",
- "webpack": "^5.46.0",
- "webpack-cli": "^4.7.2",
- "webpack-stats-plugin": "^1.0.3"
- },
- "engines": {
- "node": "14",
- "npm": "7"
- }
- },
- "node_modules/@babel/code-frame": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz",
- "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==",
- "dependencies": {
- "@babel/highlight": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/compat-data": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.7.tgz",
- "integrity": "sha512-nS6dZaISCXJ3+518CWiBfEr//gHyMO02uDxBkXTKZDN5POruCnOZ1N4YBRZDCabwF8nZMWBpRxIicmXtBs+fvw==",
- "dev": true,
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/core": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.8.tgz",
- "integrity": "sha512-/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==",
- "dev": true,
- "dependencies": {
- "@babel/code-frame": "^7.14.5",
- "@babel/generator": "^7.14.8",
- "@babel/helper-compilation-targets": "^7.14.5",
- "@babel/helper-module-transforms": "^7.14.8",
- "@babel/helpers": "^7.14.8",
- "@babel/parser": "^7.14.8",
- "@babel/template": "^7.14.5",
- "@babel/traverse": "^7.14.8",
- "@babel/types": "^7.14.8",
- "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"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/babel"
- }
- },
- "node_modules/@babel/eslint-parser": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.14.7.tgz",
- "integrity": "sha512-6WPwZqO5priAGIwV6msJcdc9TsEPzYeYdS/Xuoap+/ihkgN6dzHp2bcAAwyWZ5bLzk0vvjDmKvRwkqNaiJ8BiQ==",
- "dev": true,
- "dependencies": {
- "eslint-scope": "^5.1.1",
- "eslint-visitor-keys": "^2.1.0",
- "semver": "^6.3.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || >=14.0.0"
- },
- "peerDependencies": {
- "@babel/core": ">=7.11.0",
- "eslint": ">=7.5.0"
- }
- },
- "node_modules/@babel/generator": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.8.tgz",
- "integrity": "sha512-cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.14.8",
- "jsesc": "^2.5.1",
- "source-map": "^0.5.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-annotate-as-pure": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz",
- "integrity": "sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.14.5.tgz",
- "integrity": "sha512-YTA/Twn0vBXDVGJuAX6PwW7x5zQei1luDDo2Pl6q1qZ7hVNl0RZrhHCQG/ArGpR29Vl7ETiB8eJyrvpuRp300w==",
- "dev": true,
- "dependencies": {
- "@babel/helper-explode-assignable-expression": "^7.14.5",
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-compilation-targets": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz",
- "integrity": "sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw==",
- "dev": true,
- "dependencies": {
- "@babel/compat-data": "^7.14.5",
- "@babel/helper-validator-option": "^7.14.5",
- "browserslist": "^4.16.6",
- "semver": "^6.3.0"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-create-class-features-plugin": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.8.tgz",
- "integrity": "sha512-bpYvH8zJBWzeqi1o+co8qOrw+EXzQ/0c74gVmY205AWXy9nifHrOg77y+1zwxX5lXE7Icq4sPlSQ4O2kWBrteQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-function-name": "^7.14.5",
- "@babel/helper-member-expression-to-functions": "^7.14.7",
- "@babel/helper-optimise-call-expression": "^7.14.5",
- "@babel/helper-replace-supers": "^7.14.5",
- "@babel/helper-split-export-declaration": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-create-regexp-features-plugin": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.5.tgz",
- "integrity": "sha512-TLawwqpOErY2HhWbGJ2nZT5wSkR192QpN+nBg1THfBfftrlvOh+WbhrxXCH4q4xJ9Gl16BGPR/48JA+Ryiho/A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "regexpu-core": "^4.7.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-define-polyfill-provider": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.3.tgz",
- "integrity": "sha512-RH3QDAfRMzj7+0Nqu5oqgO5q9mFtQEVvCRsi8qCEfzLR9p2BHfn5FzhSB2oj1fF7I2+DcTORkYaQ6aTR9Cofew==",
- "dev": true,
- "dependencies": {
- "@babel/helper-compilation-targets": "^7.13.0",
- "@babel/helper-module-imports": "^7.12.13",
- "@babel/helper-plugin-utils": "^7.13.0",
- "@babel/traverse": "^7.13.0",
- "debug": "^4.1.1",
- "lodash.debounce": "^4.0.8",
- "resolve": "^1.14.2",
- "semver": "^6.1.2"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0-0"
- }
- },
- "node_modules/@babel/helper-explode-assignable-expression": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.14.5.tgz",
- "integrity": "sha512-Htb24gnGJdIGT4vnRKMdoXiOIlqOLmdiUYpAQ0mYfgVT/GDm8GOYhgi4GL+hMKrkiPRohO4ts34ELFsGAPQLDQ==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-function-name": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz",
- "integrity": "sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-get-function-arity": "^7.14.5",
- "@babel/template": "^7.14.5",
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-get-function-arity": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz",
- "integrity": "sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-hoist-variables": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz",
- "integrity": "sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-member-expression-to-functions": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.7.tgz",
- "integrity": "sha512-TMUt4xKxJn6ccjcOW7c4hlwyJArizskAhoSTOCkA0uZ+KghIaci0Qg9R043kUMWI9mtQfgny+NQ5QATnZ+paaA==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-module-imports": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz",
- "integrity": "sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==",
- "dependencies": {
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-module-transforms": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.8.tgz",
- "integrity": "sha512-RyE+NFOjXn5A9YU1dkpeBaduagTlZ0+fccnIcAGbv1KGUlReBj7utF7oEth8IdIBQPcux0DDgW5MFBH2xu9KcA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-module-imports": "^7.14.5",
- "@babel/helper-replace-supers": "^7.14.5",
- "@babel/helper-simple-access": "^7.14.8",
- "@babel/helper-split-export-declaration": "^7.14.5",
- "@babel/helper-validator-identifier": "^7.14.8",
- "@babel/template": "^7.14.5",
- "@babel/traverse": "^7.14.8",
- "@babel/types": "^7.14.8"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-optimise-call-expression": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz",
- "integrity": "sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-plugin-utils": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz",
- "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-remap-async-to-generator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.14.5.tgz",
- "integrity": "sha512-rLQKdQU+HYlxBwQIj8dk4/0ENOUEhA/Z0l4hN8BexpvmSMN9oA9EagjnhnDpNsRdWCfjwa4mn/HyBXO9yhQP6A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-wrap-function": "^7.14.5",
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-replace-supers": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz",
- "integrity": "sha512-3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==",
- "dev": true,
- "dependencies": {
- "@babel/helper-member-expression-to-functions": "^7.14.5",
- "@babel/helper-optimise-call-expression": "^7.14.5",
- "@babel/traverse": "^7.14.5",
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-simple-access": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz",
- "integrity": "sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.14.8"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-skip-transparent-expression-wrappers": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.14.5.tgz",
- "integrity": "sha512-dmqZB7mrb94PZSAOYtr+ZN5qt5owZIAgqtoTuqiFbHFtxgEcmQlRJVI+bO++fciBunXtB6MK7HrzrfcAzIz2NQ==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-split-export-declaration": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz",
- "integrity": "sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-validator-identifier": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz",
- "integrity": "sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-validator-option": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz",
- "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==",
- "dev": true,
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-wrap-function": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.14.5.tgz",
- "integrity": "sha512-YEdjTCq+LNuNS1WfxsDCNpgXkJaIyqco6DAelTUjT4f2KIWC1nBcaCaSdHTBqQVLnTBexBcVcFhLSU1KnYuePQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-function-name": "^7.14.5",
- "@babel/template": "^7.14.5",
- "@babel/traverse": "^7.14.5",
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helpers": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.8.tgz",
- "integrity": "sha512-ZRDmI56pnV+p1dH6d+UN6GINGz7Krps3+270qqI9UJ4wxYThfAIcI5i7j5vXC4FJ3Wap+S9qcebxeYiqn87DZw==",
- "dev": true,
- "dependencies": {
- "@babel/template": "^7.14.5",
- "@babel/traverse": "^7.14.8",
- "@babel/types": "^7.14.8"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/highlight": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz",
- "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==",
- "dependencies": {
- "@babel/helper-validator-identifier": "^7.14.5",
- "chalk": "^2.0.0",
- "js-tokens": "^4.0.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/highlight/node_modules/ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dependencies": {
- "color-convert": "^1.9.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/@babel/highlight/node_modules/chalk": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
- "dependencies": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/@babel/highlight/node_modules/color-convert": {
- "version": "1.9.3",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
- "dependencies": {
- "color-name": "1.1.3"
- }
- },
- "node_modules/@babel/highlight/node_modules/color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
- },
- "node_modules/@babel/highlight/node_modules/escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/@babel/highlight/node_modules/has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/@babel/highlight/node_modules/supports-color": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
- "dependencies": {
- "has-flag": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/@babel/parser": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.8.tgz",
- "integrity": "sha512-syoCQFOoo/fzkWDeM0dLEZi5xqurb5vuyzwIMNZRNun+N/9A4cUZeQaE7dTrB8jGaKuJRBtEOajtnmw0I5hvvA==",
- "dev": true,
- "bin": {
- "parser": "bin/babel-parser.js"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5.tgz",
- "integrity": "sha512-ZoJS2XCKPBfTmL122iP6NM9dOg+d4lc9fFk3zxc8iDjvt8Pk4+TlsHSKhIPf6X+L5ORCdBzqMZDjL/WHj7WknQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5",
- "@babel/plugin-proposal-optional-chaining": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.13.0"
- }
- },
- "node_modules/@babel/plugin-proposal-async-generator-functions": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.7.tgz",
- "integrity": "sha512-RK8Wj7lXLY3bqei69/cc25gwS5puEc3dknoFPFbqfy3XxYQBQFvu4ioWpafMBAB+L9NyptQK4nMOa5Xz16og8Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-remap-async-to-generator": "^7.14.5",
- "@babel/plugin-syntax-async-generators": "^7.8.4"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-class-properties": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz",
- "integrity": "sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-class-static-block": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.14.5.tgz",
- "integrity": "sha512-KBAH5ksEnYHCegqseI5N9skTdxgJdmDoAOc0uXa+4QMYKeZD0w5IARh4FMlTNtaHhbB8v+KzMdTgxMMzsIy6Yg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-class-static-block": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.12.0"
- }
- },
- "node_modules/@babel/plugin-proposal-dynamic-import": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.5.tgz",
- "integrity": "sha512-ExjiNYc3HDN5PXJx+bwC50GIx/KKanX2HiggnIUAYedbARdImiCU4RhhHfdf0Kd7JNXGpsBBBCOm+bBVy3Gb0g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-export-namespace-from": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.5.tgz",
- "integrity": "sha512-g5POA32bXPMmSBu5Dx/iZGLGnKmKPc5AiY7qfZgurzrCYgIztDlHFbznSNCoQuv57YQLnQfaDi7dxCtLDIdXdA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-json-strings": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.5.tgz",
- "integrity": "sha512-NSq2fczJYKVRIsUJyNxrVUMhB27zb7N7pOFGQOhBKJrChbGcgEAqyZrmZswkPk18VMurEeJAaICbfm57vUeTbQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-json-strings": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-logical-assignment-operators": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.5.tgz",
- "integrity": "sha512-YGn2AvZAo9TwyhlLvCCWxD90Xq8xJ4aSgaX3G5D/8DW94L8aaT+dS5cSP+Z06+rCJERGSr9GxMBZ601xoc2taw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.5.tgz",
- "integrity": "sha512-gun/SOnMqjSb98Nkaq2rTKMwervfdAoz6NphdY0vTfuzMfryj+tDGb2n6UkDKwez+Y8PZDhE3D143v6Gepp4Hg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-numeric-separator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.5.tgz",
- "integrity": "sha512-yiclALKe0vyZRZE0pS6RXgjUOt87GWv6FYa5zqj15PvhOGFO69R5DusPlgK/1K5dVnCtegTiWu9UaBSrLLJJBg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-object-rest-spread": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.7.tgz",
- "integrity": "sha512-082hsZz+sVabfmDWo1Oct1u1AgbKbUAyVgmX4otIc7bdsRgHBXwTwb3DpDmD4Eyyx6DNiuz5UAATT655k+kL5g==",
- "dev": true,
- "dependencies": {
- "@babel/compat-data": "^7.14.7",
- "@babel/helper-compilation-targets": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-transform-parameters": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-optional-catch-binding": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.5.tgz",
- "integrity": "sha512-3Oyiixm0ur7bzO5ybNcZFlmVsygSIQgdOa7cTfOYCMY+wEPAYhZAJxi3mixKFCTCKUhQXuCTtQ1MzrpL3WT8ZQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-optional-chaining": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.5.tgz",
- "integrity": "sha512-ycz+VOzo2UbWNI1rQXxIuMOzrDdHGrI23fRiz/Si2R4kv2XZQ1BK8ccdHwehMKBlcH/joGW/tzrUmo67gbJHlQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-private-methods": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.14.5.tgz",
- "integrity": "sha512-838DkdUA1u+QTCplatfq4B7+1lnDa/+QMI89x5WZHBcnNv+47N8QEj2k9I2MUU9xIv8XJ4XvPCviM/Dj7Uwt9g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-private-property-in-object": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.14.5.tgz",
- "integrity": "sha512-62EyfyA3WA0mZiF2e2IV9mc9Ghwxcg8YTu8BS4Wss4Y3PY725OmS9M0qLORbJwLqFtGh+jiE4wAmocK2CTUK2Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-create-class-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-unicode-property-regex": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.14.5.tgz",
- "integrity": "sha512-6axIeOU5LnY471KenAB9vI8I5j7NQ2d652hIYwVyRfgaZT5UpiqFKCuVXCDMSrU+3VFafnu2c5m3lrWIlr6A5Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=4"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-async-generators": {
- "version": "7.8.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
- "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-bigint": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
- "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-class-properties": {
- "version": "7.12.13",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
- "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.12.13"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-class-static-block": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
- "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-dynamic-import": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
- "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-export-namespace-from": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
- "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.3"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-import-meta": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
- "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-json-strings": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
- "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-jsx": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.14.5.tgz",
- "integrity": "sha512-ohuFIsOMXJnbOMRfX7/w7LocdR6R7whhuRD4ax8IipLcLPlZGJKkBxgHp++U4N/vKyU16/YDQr2f5seajD3jIw==",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-logical-assignment-operators": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
- "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
- "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-numeric-separator": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
- "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-object-rest-spread": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
- "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-optional-catch-binding": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
- "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-optional-chaining": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
- "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-private-property-in-object": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
- "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-top-level-await": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
- "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-typescript": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz",
- "integrity": "sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-arrow-functions": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz",
- "integrity": "sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-async-to-generator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz",
- "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-module-imports": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-remap-async-to-generator": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-block-scoped-functions": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz",
- "integrity": "sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-block-scoping": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.5.tgz",
- "integrity": "sha512-LBYm4ZocNgoCqyxMLoOnwpsmQ18HWTQvql64t3GvMUzLQrNoV1BDG0lNftC8QKYERkZgCCT/7J5xWGObGAyHDw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-classes": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.5.tgz",
- "integrity": "sha512-J4VxKAMykM06K/64z9rwiL6xnBHgB1+FVspqvlgCdwD1KUbQNfszeKVVOMh59w3sztHYIZDgnhOC4WbdEfHFDA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-function-name": "^7.14.5",
- "@babel/helper-optimise-call-expression": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-replace-supers": "^7.14.5",
- "@babel/helper-split-export-declaration": "^7.14.5",
- "globals": "^11.1.0"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-computed-properties": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz",
- "integrity": "sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-destructuring": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.7.tgz",
- "integrity": "sha512-0mDE99nK+kVh3xlc5vKwB6wnP9ecuSj+zQCa/n0voENtP/zymdT4HH6QEb65wjjcbqr1Jb/7z9Qp7TF5FtwYGw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-dotall-regex": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.14.5.tgz",
- "integrity": "sha512-loGlnBdj02MDsFaHhAIJzh7euK89lBrGIdM9EAtHFo6xKygCUGuuWe07o1oZVk287amtW1n0808sQM99aZt3gw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-duplicate-keys": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.14.5.tgz",
- "integrity": "sha512-iJjbI53huKbPDAsJ8EmVmvCKeeq21bAze4fu9GBQtSLqfvzj2oRuHVx4ZkDwEhg1htQ+5OBZh/Ab0XDf5iBZ7A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-exponentiation-operator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.14.5.tgz",
- "integrity": "sha512-jFazJhMBc9D27o9jDnIE5ZErI0R0m7PbKXVq77FFvqFbzvTMuv8jaAwLZ5PviOLSFttqKIW0/wxNSDbjLk0tYA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-builder-binary-assignment-operator-visitor": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-for-of": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.14.5.tgz",
- "integrity": "sha512-CfmqxSUZzBl0rSjpoQSFoR9UEj3HzbGuGNL21/iFTmjb5gFggJp3ph0xR1YBhexmLoKRHzgxuFvty2xdSt6gTA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-function-name": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.14.5.tgz",
- "integrity": "sha512-vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-function-name": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-literals": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz",
- "integrity": "sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-member-expression-literals": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.14.5.tgz",
- "integrity": "sha512-WkNXxH1VXVTKarWFqmso83xl+2V3Eo28YY5utIkbsmXoItO8Q3aZxN4BTS2k0hz9dGUloHK26mJMyQEYfkn/+Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-amd": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.5.tgz",
- "integrity": "sha512-3lpOU8Vxmp3roC4vzFpSdEpGUWSMsHFreTWOMMLzel2gNGfHE5UWIh/LN6ghHs2xurUp4jRFYMUIZhuFbody1g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-module-transforms": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "babel-plugin-dynamic-import-node": "^2.3.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-commonjs": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.5.tgz",
- "integrity": "sha512-en8GfBtgnydoao2PS+87mKyw62k02k7kJ9ltbKe0fXTHrQmG6QZZflYuGI1VVG7sVpx4E1n7KBpNlPb8m78J+A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-module-transforms": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-simple-access": "^7.14.5",
- "babel-plugin-dynamic-import-node": "^2.3.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-systemjs": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.14.5.tgz",
- "integrity": "sha512-mNMQdvBEE5DcMQaL5LbzXFMANrQjd2W7FPzg34Y4yEz7dBgdaC+9B84dSO+/1Wba98zoDbInctCDo4JGxz1VYA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-hoist-variables": "^7.14.5",
- "@babel/helper-module-transforms": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-validator-identifier": "^7.14.5",
- "babel-plugin-dynamic-import-node": "^2.3.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-umd": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.5.tgz",
- "integrity": "sha512-RfPGoagSngC06LsGUYyM9QWSXZ8MysEjDJTAea1lqRjNECE3y0qIJF/qbvJxc4oA4s99HumIMdXOrd+TdKaAAA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-module-transforms": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-named-capturing-groups-regex": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.14.7.tgz",
- "integrity": "sha512-DTNOTaS7TkW97xsDMrp7nycUVh6sn/eq22VaxWfEdzuEbRsiaOU0pqU7DlyUGHVsbQbSghvjKRpEl+nUCKGQSg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-transform-new-target": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.14.5.tgz",
- "integrity": "sha512-Nx054zovz6IIRWEB49RDRuXGI4Gy0GMgqG0cII9L3MxqgXz/+rgII+RU58qpo4g7tNEx1jG7rRVH4ihZoP4esQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-object-super": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz",
- "integrity": "sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-replace-supers": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-parameters": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.5.tgz",
- "integrity": "sha512-Tl7LWdr6HUxTmzQtzuU14SqbgrSKmaR77M0OKyq4njZLQTPfOvzblNKyNkGwOfEFCEx7KeYHQHDI0P3F02IVkA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-property-literals": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.14.5.tgz",
- "integrity": "sha512-r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-react-display-name": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.14.5.tgz",
- "integrity": "sha512-07aqY1ChoPgIxsuDviptRpVkWCSbXWmzQqcgy65C6YSFOfPFvb/DX3bBRHh7pCd/PMEEYHYWUTSVkCbkVainYQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-react-jsx": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.14.5.tgz",
- "integrity": "sha512-7RylxNeDnxc1OleDm0F5Q/BSL+whYRbOAR+bwgCxIr0L32v7UFh/pz1DLMZideAUxKT6eMoS2zQH6fyODLEi8Q==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-module-imports": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-jsx": "^7.14.5",
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-react-jsx-development": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.14.5.tgz",
- "integrity": "sha512-rdwG/9jC6QybWxVe2UVOa7q6cnTpw8JRRHOxntG/h6g/guAOe6AhtQHJuJh5FwmnXIT1bdm5vC2/5huV8ZOorQ==",
- "dev": true,
- "dependencies": {
- "@babel/plugin-transform-react-jsx": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-react-pure-annotations": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.14.5.tgz",
- "integrity": "sha512-3X4HpBJimNxW4rhUy/SONPyNQHp5YRr0HhJdT2OH1BRp0of7u3Dkirc7x9FRJMKMqTBI079VZ1hzv7Ouuz///g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-regenerator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.14.5.tgz",
- "integrity": "sha512-NVIY1W3ITDP5xQl50NgTKlZ0GrotKtLna08/uGY6ErQt6VEQZXla86x/CTddm5gZdcr+5GSsvMeTmWA5Ii6pkg==",
- "dev": true,
- "dependencies": {
- "regenerator-transform": "^0.14.2"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-reserved-words": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.14.5.tgz",
- "integrity": "sha512-cv4F2rv1nD4qdexOGsRQXJrOcyb5CrgjUH9PKrrtyhSDBNWGxd0UIitjyJiWagS+EbUGjG++22mGH1Pub8D6Vg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-shorthand-properties": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz",
- "integrity": "sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-spread": {
- "version": "7.14.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.14.6.tgz",
- "integrity": "sha512-Zr0x0YroFJku7n7+/HH3A2eIrGMjbmAIbJSVv0IZ+t3U2WUQUA64S/oeied2e+MaGSjmt4alzBCsK9E8gh+fag==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-sticky-regex": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.14.5.tgz",
- "integrity": "sha512-Z7F7GyvEMzIIbwnziAZmnSNpdijdr4dWt+FJNBnBLz5mwDFkqIXU9wmBcWWad3QeJF5hMTkRe4dAq2sUZiG+8A==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-template-literals": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz",
- "integrity": "sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-typeof-symbol": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.14.5.tgz",
- "integrity": "sha512-lXzLD30ffCWseTbMQzrvDWqljvZlHkXU+CnseMhkMNqU1sASnCsz3tSzAaH3vCUXb9PHeUb90ZT1BdFTm1xxJw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-unicode-escapes": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.14.5.tgz",
- "integrity": "sha512-crTo4jATEOjxj7bt9lbYXcBAM3LZaUrbP2uUdxb6WIorLmjNKSpHfIybgY4B8SRpbf8tEVIWH3Vtm7ayCrKocA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-unicode-regex": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.14.5.tgz",
- "integrity": "sha512-UygduJpC5kHeCiRw/xDVzC+wj8VaYSoKl5JNVmbP7MadpNinAm3SvZCxZ42H37KZBKztz46YC73i9yV34d0Tzw==",
- "dev": true,
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/preset-env": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.8.tgz",
- "integrity": "sha512-a9aOppDU93oArQ51H+B8M1vH+tayZbuBqzjOhntGetZVa+4tTu5jp+XTwqHGG2lxslqomPYVSjIxQkFwXzgnxg==",
- "dev": true,
- "dependencies": {
- "@babel/compat-data": "^7.14.7",
- "@babel/helper-compilation-targets": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-validator-option": "^7.14.5",
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.14.5",
- "@babel/plugin-proposal-async-generator-functions": "^7.14.7",
- "@babel/plugin-proposal-class-properties": "^7.14.5",
- "@babel/plugin-proposal-class-static-block": "^7.14.5",
- "@babel/plugin-proposal-dynamic-import": "^7.14.5",
- "@babel/plugin-proposal-export-namespace-from": "^7.14.5",
- "@babel/plugin-proposal-json-strings": "^7.14.5",
- "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5",
- "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5",
- "@babel/plugin-proposal-numeric-separator": "^7.14.5",
- "@babel/plugin-proposal-object-rest-spread": "^7.14.7",
- "@babel/plugin-proposal-optional-catch-binding": "^7.14.5",
- "@babel/plugin-proposal-optional-chaining": "^7.14.5",
- "@babel/plugin-proposal-private-methods": "^7.14.5",
- "@babel/plugin-proposal-private-property-in-object": "^7.14.5",
- "@babel/plugin-proposal-unicode-property-regex": "^7.14.5",
- "@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-json-strings": "^7.8.3",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
- "@babel/plugin-syntax-top-level-await": "^7.14.5",
- "@babel/plugin-transform-arrow-functions": "^7.14.5",
- "@babel/plugin-transform-async-to-generator": "^7.14.5",
- "@babel/plugin-transform-block-scoped-functions": "^7.14.5",
- "@babel/plugin-transform-block-scoping": "^7.14.5",
- "@babel/plugin-transform-classes": "^7.14.5",
- "@babel/plugin-transform-computed-properties": "^7.14.5",
- "@babel/plugin-transform-destructuring": "^7.14.7",
- "@babel/plugin-transform-dotall-regex": "^7.14.5",
- "@babel/plugin-transform-duplicate-keys": "^7.14.5",
- "@babel/plugin-transform-exponentiation-operator": "^7.14.5",
- "@babel/plugin-transform-for-of": "^7.14.5",
- "@babel/plugin-transform-function-name": "^7.14.5",
- "@babel/plugin-transform-literals": "^7.14.5",
- "@babel/plugin-transform-member-expression-literals": "^7.14.5",
- "@babel/plugin-transform-modules-amd": "^7.14.5",
- "@babel/plugin-transform-modules-commonjs": "^7.14.5",
- "@babel/plugin-transform-modules-systemjs": "^7.14.5",
- "@babel/plugin-transform-modules-umd": "^7.14.5",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.7",
- "@babel/plugin-transform-new-target": "^7.14.5",
- "@babel/plugin-transform-object-super": "^7.14.5",
- "@babel/plugin-transform-parameters": "^7.14.5",
- "@babel/plugin-transform-property-literals": "^7.14.5",
- "@babel/plugin-transform-regenerator": "^7.14.5",
- "@babel/plugin-transform-reserved-words": "^7.14.5",
- "@babel/plugin-transform-shorthand-properties": "^7.14.5",
- "@babel/plugin-transform-spread": "^7.14.6",
- "@babel/plugin-transform-sticky-regex": "^7.14.5",
- "@babel/plugin-transform-template-literals": "^7.14.5",
- "@babel/plugin-transform-typeof-symbol": "^7.14.5",
- "@babel/plugin-transform-unicode-escapes": "^7.14.5",
- "@babel/plugin-transform-unicode-regex": "^7.14.5",
- "@babel/preset-modules": "^0.1.4",
- "@babel/types": "^7.14.8",
- "babel-plugin-polyfill-corejs2": "^0.2.2",
- "babel-plugin-polyfill-corejs3": "^0.2.2",
- "babel-plugin-polyfill-regenerator": "^0.2.2",
- "core-js-compat": "^3.15.0",
- "semver": "^6.3.0"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/preset-modules": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.4.tgz",
- "integrity": "sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/plugin-proposal-unicode-property-regex": "^7.4.4",
- "@babel/plugin-transform-dotall-regex": "^7.4.4",
- "@babel/types": "^7.4.4",
- "esutils": "^2.0.2"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/preset-react": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.14.5.tgz",
- "integrity": "sha512-XFxBkjyObLvBaAvkx1Ie95Iaq4S/GUEIrejyrntQ/VCMKUYvKLoyKxOBzJ2kjA3b6rC9/KL6KXfDC2GqvLiNqQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-validator-option": "^7.14.5",
- "@babel/plugin-transform-react-display-name": "^7.14.5",
- "@babel/plugin-transform-react-jsx": "^7.14.5",
- "@babel/plugin-transform-react-jsx-development": "^7.14.5",
- "@babel/plugin-transform-react-pure-annotations": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/runtime": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz",
- "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==",
- "dependencies": {
- "regenerator-runtime": "^0.13.4"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/runtime-corejs3": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.14.8.tgz",
- "integrity": "sha512-4dMD5QRBkumn45oweR0SxoNtt15oz3BUBAQ8cIx7HJqZTtE8zjpM0My8aHJHVnyf4XfRg6DNzaE1080WLBiC1w==",
- "dev": true,
- "dependencies": {
- "core-js-pure": "^3.15.0",
- "regenerator-runtime": "^0.13.4"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/template": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz",
- "integrity": "sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==",
- "dev": true,
- "dependencies": {
- "@babel/code-frame": "^7.14.5",
- "@babel/parser": "^7.14.5",
- "@babel/types": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/traverse": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.8.tgz",
- "integrity": "sha512-kexHhzCljJcFNn1KYAQ6A5wxMRzq9ebYpEDV4+WdNyr3i7O44tanbDOR/xjiG2F3sllan+LgwK+7OMk0EmydHg==",
- "dev": true,
- "dependencies": {
- "@babel/code-frame": "^7.14.5",
- "@babel/generator": "^7.14.8",
- "@babel/helper-function-name": "^7.14.5",
- "@babel/helper-hoist-variables": "^7.14.5",
- "@babel/helper-split-export-declaration": "^7.14.5",
- "@babel/parser": "^7.14.8",
- "@babel/types": "^7.14.8",
- "debug": "^4.1.0",
- "globals": "^11.1.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/types": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.8.tgz",
- "integrity": "sha512-iob4soQa7dZw8nodR/KlOQkPh9S4I8RwCxwRIFuiMRYjOzH/KJzdUfDgz6cGi5dDaclXF4P2PAhCdrBJNIg68Q==",
- "dependencies": {
- "@babel/helper-validator-identifier": "^7.14.8",
- "to-fast-properties": "^2.0.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@bcoe/v8-coverage": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
- "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
- "dev": true
- },
- "node_modules/@discoveryjs/json-ext": {
- "version": "0.5.3",
- "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.3.tgz",
- "integrity": "sha512-Fxt+AfXgjMoin2maPIYzFZnQjAXjAL0PHscM5pRTtatFqB+vZxAM9tLp2Optnuw3QOQC40jTNeGYFOMvyf7v9g==",
- "dev": true,
- "engines": {
- "node": ">=10.0.0"
- }
- },
- "node_modules/@emotion/babel-plugin": {
- "version": "11.3.0",
- "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.3.0.tgz",
- "integrity": "sha512-UZKwBV2rADuhRp+ZOGgNWg2eYgbzKzQXfQPtJbu/PLy8onurxlNCLvxMQEvlr1/GudguPI5IU9qIY1+2z1M5bA==",
- "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",
- "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.3"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@emotion/cache": {
- "version": "11.4.0",
- "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.4.0.tgz",
- "integrity": "sha512-Zx70bjE7LErRO9OaZrhf22Qye1y4F7iDl+ITjet0J+i+B88PrAOBkKvaAWhxsZf72tDLajwCgfCjJ2dvH77C3g==",
- "dependencies": {
- "@emotion/memoize": "^0.7.4",
- "@emotion/sheet": "^1.0.0",
- "@emotion/utils": "^1.0.0",
- "@emotion/weak-memoize": "^0.2.5",
- "stylis": "^4.0.3"
- }
- },
- "node_modules/@emotion/css": {
- "version": "11.1.3",
- "resolved": "https://registry.npmjs.org/@emotion/css/-/css-11.1.3.tgz",
- "integrity": "sha512-RSQP59qtCNTf5NWD6xM08xsQdCZmVYnX/panPYvB6LQAPKQB6GL49Njf0EMbS3CyDtrlWsBcmqBtysFvfWT3rA==",
- "dependencies": {
- "@emotion/babel-plugin": "^11.0.0",
- "@emotion/cache": "^11.1.3",
- "@emotion/serialize": "^1.0.0",
- "@emotion/sheet": "^1.0.0",
- "@emotion/utils": "^1.0.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- },
- "peerDependenciesMeta": {
- "@babel/core": {
- "optional": true
- }
- }
- },
- "node_modules/@emotion/hash": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz",
- "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow=="
- },
- "node_modules/@emotion/is-prop-valid": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.1.0.tgz",
- "integrity": "sha512-9RkilvXAufQHsSsjQ3PIzSns+pxuX4EW8EbGeSPjZMHuMx6z/MOzb9LpqNieQX4F3mre3NWS2+X3JNRHTQztUQ==",
- "dependencies": {
- "@emotion/memoize": "^0.7.4"
- }
- },
- "node_modules/@emotion/memoize": {
- "version": "0.7.5",
- "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz",
- "integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ=="
- },
- "node_modules/@emotion/react": {
- "version": "11.4.0",
- "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.4.0.tgz",
- "integrity": "sha512-4XklWsl9BdtatLoJpSjusXhpKv9YVteYKh9hPKP1Sxl+mswEFoUe0WtmtWjxEjkA51DQ2QRMCNOvKcSlCQ7ivg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@emotion/cache": "^11.4.0",
- "@emotion/serialize": "^1.0.2",
- "@emotion/sheet": "^1.0.1",
- "@emotion/utils": "^1.0.0",
- "@emotion/weak-memoize": "^0.2.5",
- "hoist-non-react-statics": "^3.3.1"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0",
- "react": ">=16.8.0"
- },
- "peerDependenciesMeta": {
- "@babel/core": {
- "optional": true
- },
- "@types/react": {
- "optional": true
- }
- }
- },
- "node_modules/@emotion/serialize": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.2.tgz",
- "integrity": "sha512-95MgNJ9+/ajxU7QIAruiOAdYNjxZX7G2mhgrtDWswA21VviYIRP1R5QilZ/bDY42xiKsaktP4egJb3QdYQZi1A==",
- "dependencies": {
- "@emotion/hash": "^0.8.0",
- "@emotion/memoize": "^0.7.4",
- "@emotion/unitless": "^0.7.5",
- "@emotion/utils": "^1.0.0",
- "csstype": "^3.0.2"
- }
- },
- "node_modules/@emotion/sheet": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.0.1.tgz",
- "integrity": "sha512-GbIvVMe4U+Zc+929N1V7nW6YYJtidj31lidSmdYcWozwoBIObXBnaJkKNDjZrLm9Nc0BR+ZyHNaRZxqNZbof5g=="
- },
- "node_modules/@emotion/styled": {
- "version": "11.3.0",
- "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.3.0.tgz",
- "integrity": "sha512-fUoLcN3BfMiLlRhJ8CuPUMEyKkLEoM+n+UyAbnqGEsCd5IzKQ7VQFLtzpJOaCD2/VR2+1hXQTnSZXVJeiTNltA==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@emotion/babel-plugin": "^11.3.0",
- "@emotion/is-prop-valid": "^1.1.0",
- "@emotion/serialize": "^1.0.2",
- "@emotion/utils": "^1.0.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0",
- "@emotion/react": "^11.0.0-rc.0",
- "react": ">=16.8.0"
- },
- "peerDependenciesMeta": {
- "@babel/core": {
- "optional": true
- },
- "@types/react": {
- "optional": true
- }
- }
- },
- "node_modules/@emotion/unitless": {
- "version": "0.7.5",
- "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz",
- "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg=="
- },
- "node_modules/@emotion/utils": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.0.0.tgz",
- "integrity": "sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA=="
- },
- "node_modules/@emotion/weak-memoize": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz",
- "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA=="
- },
- "node_modules/@eslint/eslintrc": {
- "version": "0.4.3",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz",
- "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==",
- "dev": true,
- "dependencies": {
- "ajv": "^6.12.4",
- "debug": "^4.1.1",
- "espree": "^7.3.0",
- "globals": "^13.9.0",
- "ignore": "^4.0.6",
- "import-fresh": "^3.2.1",
- "js-yaml": "^3.13.1",
- "minimatch": "^3.0.4",
- "strip-json-comments": "^3.1.1"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/globals": {
- "version": "13.10.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz",
- "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==",
- "dev": true,
- "dependencies": {
- "type-fest": "^0.20.2"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@humanwhocodes/config-array": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz",
- "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==",
- "dev": true,
- "dependencies": {
- "@humanwhocodes/object-schema": "^1.2.0",
- "debug": "^4.1.1",
- "minimatch": "^3.0.4"
- },
- "engines": {
- "node": ">=10.10.0"
- }
- },
- "node_modules/@humanwhocodes/object-schema": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz",
- "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==",
- "dev": true
- },
- "node_modules/@istanbuljs/load-nyc-config": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
- "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
- "dev": true,
- "dependencies": {
- "camelcase": "^5.3.1",
- "find-up": "^4.1.0",
- "get-package-type": "^0.1.0",
- "js-yaml": "^3.13.1",
- "resolve-from": "^5.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@istanbuljs/schema": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
- "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/console": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.0.6.tgz",
- "integrity": "sha512-fMlIBocSHPZ3JxgWiDNW/KPj6s+YRd0hicb33IrmelCcjXo/pXPwvuiKFmZz+XuqI/1u7nbUK10zSsWL/1aegg==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "jest-message-util": "^27.0.6",
- "jest-util": "^27.0.6",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/@jest/core": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.0.6.tgz",
- "integrity": "sha512-SsYBm3yhqOn5ZLJCtccaBcvD/ccTLCeuDv8U41WJH/V1MW5eKUkeMHT9U+Pw/v1m1AIWlnIW/eM2XzQr0rEmow==",
- "dev": true,
- "dependencies": {
- "@jest/console": "^27.0.6",
- "@jest/reporters": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/transform": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@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.0.6",
- "jest-config": "^27.0.6",
- "jest-haste-map": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-regex-util": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-resolve-dependencies": "^27.0.6",
- "jest-runner": "^27.0.6",
- "jest-runtime": "^27.0.6",
- "jest-snapshot": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-validate": "^27.0.6",
- "jest-watcher": "^27.0.6",
- "micromatch": "^4.0.4",
- "p-each-series": "^2.1.0",
- "rimraf": "^3.0.0",
- "slash": "^3.0.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/@jest/core/node_modules/rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@jest/environment": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.0.6.tgz",
- "integrity": "sha512-4XywtdhwZwCpPJ/qfAkqExRsERW+UaoSRStSHCCiQTUpoYdLukj+YJbQSFrZjhlUDRZeNiU9SFH0u7iNimdiIg==",
- "dev": true,
- "dependencies": {
- "@jest/fake-timers": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "jest-mock": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/@jest/fake-timers": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.0.6.tgz",
- "integrity": "sha512-sqd+xTWtZ94l3yWDKnRTdvTeZ+A/V7SSKrxsrOKSqdyddb9CeNRF8fbhAU0D7ZJBpTTW2nbp6MftmKJDZfW2LQ==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "@sinonjs/fake-timers": "^7.0.2",
- "@types/node": "*",
- "jest-message-util": "^27.0.6",
- "jest-mock": "^27.0.6",
- "jest-util": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/@jest/globals": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.0.6.tgz",
- "integrity": "sha512-DdTGCP606rh9bjkdQ7VvChV18iS7q0IMJVP1piwTWyWskol4iqcVwthZmoJEf7obE1nc34OpIyoVGPeqLC+ryw==",
- "dev": true,
- "dependencies": {
- "@jest/environment": "^27.0.6",
- "@jest/types": "^27.0.6",
- "expect": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/@jest/reporters": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.0.6.tgz",
- "integrity": "sha512-TIkBt09Cb2gptji3yJXb3EE+eVltW6BjO7frO7NEfjI9vSIYoISi5R3aI3KpEDXlB1xwB+97NXIqz84qYeYsfA==",
- "dev": true,
- "dependencies": {
- "@bcoe/v8-coverage": "^0.2.3",
- "@jest/console": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/transform": "^27.0.6",
- "@jest/types": "^27.0.6",
- "chalk": "^4.0.0",
- "collect-v8-coverage": "^1.0.0",
- "exit": "^0.1.2",
- "glob": "^7.1.2",
- "graceful-fs": "^4.2.4",
- "istanbul-lib-coverage": "^3.0.0",
- "istanbul-lib-instrument": "^4.0.3",
- "istanbul-lib-report": "^3.0.0",
- "istanbul-lib-source-maps": "^4.0.0",
- "istanbul-reports": "^3.0.2",
- "jest-haste-map": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-worker": "^27.0.6",
- "slash": "^3.0.0",
- "source-map": "^0.6.0",
- "string-length": "^4.0.1",
- "terminal-link": "^2.0.0",
- "v8-to-istanbul": "^8.0.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/@jest/reporters/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/@jest/source-map": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.0.6.tgz",
- "integrity": "sha512-Fek4mi5KQrqmlY07T23JRi0e7Z9bXTOOD86V/uS0EIW4PClvPDqZOyFlLpNJheS6QI0FNX1CgmPjtJ4EA/2M+g==",
- "dev": true,
- "dependencies": {
- "callsites": "^3.0.0",
- "graceful-fs": "^4.2.4",
- "source-map": "^0.6.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/@jest/source-map/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/@jest/test-result": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.0.6.tgz",
- "integrity": "sha512-ja/pBOMTufjX4JLEauLxE3LQBPaI2YjGFtXexRAjt1I/MbfNlMx0sytSX3tn5hSLzQsR3Qy2rd0hc1BWojtj9w==",
- "dev": true,
- "dependencies": {
- "@jest/console": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/istanbul-lib-coverage": "^2.0.0",
- "collect-v8-coverage": "^1.0.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/@jest/test-sequencer": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.0.6.tgz",
- "integrity": "sha512-bISzNIApazYOlTHDum9PwW22NOyDa6VI31n6JucpjTVM0jD6JDgqEZ9+yn575nDdPF0+4csYDxNNW13NvFQGZA==",
- "dev": true,
- "dependencies": {
- "@jest/test-result": "^27.0.6",
- "graceful-fs": "^4.2.4",
- "jest-haste-map": "^27.0.6",
- "jest-runtime": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/@jest/transform": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.0.6.tgz",
- "integrity": "sha512-rj5Dw+mtIcntAUnMlW/Vju5mr73u8yg+irnHwzgtgoeI6cCPOvUwQ0D1uQtc/APmWgvRweEb1g05pkUpxH3iCA==",
- "dev": true,
- "dependencies": {
- "@babel/core": "^7.1.0",
- "@jest/types": "^27.0.6",
- "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.0.6",
- "jest-regex-util": "^27.0.6",
- "jest-util": "^27.0.6",
- "micromatch": "^4.0.4",
- "pirates": "^4.0.1",
- "slash": "^3.0.0",
- "source-map": "^0.6.1",
- "write-file-atomic": "^3.0.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/@jest/transform/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/@jest/types": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.0.6.tgz",
- "integrity": "sha512-aSquT1qa9Pik26JK5/3rvnYb4bGtm1VFNesHKmNTwmPIgOrixvhL2ghIvFRNEpzy3gU+rUgjIF/KodbkFAl++g==",
- "dev": true,
- "dependencies": {
- "@types/istanbul-lib-coverage": "^2.0.0",
- "@types/istanbul-reports": "^3.0.0",
- "@types/node": "*",
- "@types/yargs": "^16.0.0",
- "chalk": "^4.0.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/@popperjs/core": {
- "version": "2.9.2",
- "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.9.2.tgz",
- "integrity": "sha512-VZMYa7+fXHdwIq1TDhSXoVmSPEGM/aa+6Aiq3nVVJ9bXr24zScr+NlKFKC3iPljA7ho/GAZr+d2jOf5GIRC30Q==",
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/popperjs"
- }
- },
- "node_modules/@sinonjs/commons": {
- "version": "1.8.3",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz",
- "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==",
- "dev": true,
- "dependencies": {
- "type-detect": "4.0.8"
- }
- },
- "node_modules/@sinonjs/fake-timers": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz",
- "integrity": "sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==",
- "dev": true,
- "dependencies": {
- "@sinonjs/commons": "^1.7.0"
- }
- },
- "node_modules/@tannin/compile": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@tannin/compile/-/compile-1.1.0.tgz",
- "integrity": "sha512-n8m9eNDfoNZoxdvWiTfW/hSPhehzLJ3zW7f8E7oT6mCROoMNWCB4TYtv041+2FMAxweiE0j7i1jubQU4MEC/Gg==",
- "dependencies": {
- "@tannin/evaluate": "^1.2.0",
- "@tannin/postfix": "^1.1.0"
- }
- },
- "node_modules/@tannin/evaluate": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@tannin/evaluate/-/evaluate-1.2.0.tgz",
- "integrity": "sha512-3ioXvNowbO/wSrxsDG5DKIMxC81P0QrQTYai8zFNY+umuoHWRPbQ/TuuDEOju9E+jQDXmj6yI5GyejNuh8I+eg=="
- },
- "node_modules/@tannin/plural-forms": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@tannin/plural-forms/-/plural-forms-1.1.0.tgz",
- "integrity": "sha512-xl9R2mDZO/qiHam1AgMnAES6IKIg7OBhcXqy6eDsRCdXuxAFPcjrej9HMjyCLE0DJ/8cHf0i5OQTstuBRhpbHw==",
- "dependencies": {
- "@tannin/compile": "^1.1.0"
- }
- },
- "node_modules/@tannin/postfix": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@tannin/postfix/-/postfix-1.1.0.tgz",
- "integrity": "sha512-oocsqY7g0cR+Gur5jRQLSrX2OtpMLMse1I10JQBm8CdGMrDkh1Mg2gjsiquMHRtBs4Qwu5wgEp5GgIYHk4SNPw=="
- },
- "node_modules/@tootallnate/once": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz",
- "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",
- "dev": true,
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/@types/babel__core": {
- "version": "7.1.15",
- "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.15.tgz",
- "integrity": "sha512-bxlMKPDbY8x5h6HBwVzEOk2C8fb6SLfYQ5Jw3uBYuYF1lfWk/kbLd81la82vrIkBb0l+JdmrZaDikPrNxpS/Ew==",
- "dev": true,
- "dependencies": {
- "@babel/parser": "^7.1.0",
- "@babel/types": "^7.0.0",
- "@types/babel__generator": "*",
- "@types/babel__template": "*",
- "@types/babel__traverse": "*"
- }
- },
- "node_modules/@types/babel__generator": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.3.tgz",
- "integrity": "sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.0.0"
- }
- },
- "node_modules/@types/babel__template": {
- "version": "7.4.1",
- "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz",
- "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==",
- "dev": true,
- "dependencies": {
- "@babel/parser": "^7.1.0",
- "@babel/types": "^7.0.0"
- }
- },
- "node_modules/@types/babel__traverse": {
- "version": "7.14.2",
- "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz",
- "integrity": "sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.3.0"
- }
- },
- "node_modules/@types/eslint": {
- "version": "7.28.0",
- "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.28.0.tgz",
- "integrity": "sha512-07XlgzX0YJUn4iG1ocY4IX9DzKSmMGUs6ESKlxWhZRaa0fatIWaHWUVapcuGa8r5HFnTqzj+4OCjd5f7EZ/i/A==",
- "dev": true,
- "dependencies": {
- "@types/estree": "*",
- "@types/json-schema": "*"
- }
- },
- "node_modules/@types/eslint-scope": {
- "version": "3.7.1",
- "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.1.tgz",
- "integrity": "sha512-SCFeogqiptms4Fg29WpOTk5nHIzfpKCemSN63ksBQYKTcXoJEmJagV+DhVmbapZzY4/5YaOV1nZwrsU79fFm1g==",
- "dev": true,
- "dependencies": {
- "@types/eslint": "*",
- "@types/estree": "*"
- }
- },
- "node_modules/@types/estree": {
- "version": "0.0.50",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz",
- "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==",
- "dev": true
- },
- "node_modules/@types/glob": {
- "version": "7.1.4",
- "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.4.tgz",
- "integrity": "sha512-w+LsMxKyYQm347Otw+IfBXOv9UWVjpHpCDdbBMt8Kz/xbvCYNjP+0qPh91Km3iKfSRLBB0P7fAMf0KHrPu+MyA==",
- "dev": true,
- "dependencies": {
- "@types/minimatch": "*",
- "@types/node": "*"
- }
- },
- "node_modules/@types/graceful-fs": {
- "version": "4.1.5",
- "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz",
- "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==",
- "dev": true,
- "dependencies": {
- "@types/node": "*"
- }
- },
- "node_modules/@types/istanbul-lib-coverage": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz",
- "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==",
- "dev": true
- },
- "node_modules/@types/istanbul-lib-report": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
- "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==",
- "dev": true,
- "dependencies": {
- "@types/istanbul-lib-coverage": "*"
- }
- },
- "node_modules/@types/istanbul-reports": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
- "dev": true,
- "dependencies": {
- "@types/istanbul-lib-report": "*"
- }
- },
- "node_modules/@types/json-schema": {
- "version": "7.0.8",
- "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz",
- "integrity": "sha512-YSBPTLTVm2e2OoQIDYx8HaeWJ5tTToLH67kXR7zYNGupXMEHa2++G8k+DczX2cFVgalypqtyZIcU19AFcmOpmg==",
- "dev": true
- },
- "node_modules/@types/lodash": {
- "version": "4.14.149",
- "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.149.tgz",
- "integrity": "sha512-ijGqzZt/b7BfzcK9vTrS6MFljQRPn5BFWOx8oE0GYxribu6uV+aA9zZuXI1zc/etK9E8nrgdoF2+LgUw7+9tJQ=="
- },
- "node_modules/@types/minimatch": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
- "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==",
- "dev": true
- },
- "node_modules/@types/mousetrap": {
- "version": "1.6.8",
- "resolved": "https://registry.npmjs.org/@types/mousetrap/-/mousetrap-1.6.8.tgz",
- "integrity": "sha512-zTqjvgCUT5EoXqbqmd8iJMb4NJqyV/V7pK7AIKq7qcaAsJIpGlTVJS1HQM6YkdHCdnkNSbhcQI7MXYxFfE3iCA=="
- },
- "node_modules/@types/node": {
- "version": "16.4.1",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-16.4.1.tgz",
- "integrity": "sha512-UW7cbLqf/Wu5XH2RKKY1cHwUNLicIDRLMraYKz+HHAerJ0ZffUEk+fMnd8qU2JaS6cAy0r8tsaf7yqHASf/Y0Q==",
- "dev": true
- },
- "node_modules/@types/parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA=="
- },
- "node_modules/@types/prettier": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.3.2.tgz",
- "integrity": "sha512-eI5Yrz3Qv4KPUa/nSIAi0h+qX0XyewOliug5F2QAtuRg6Kjg6jfmxe1GIwoIRhZspD1A0RP8ANrPwvEXXtRFog==",
- "dev": true
- },
- "node_modules/@types/prop-types": {
- "version": "15.7.4",
- "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz",
- "integrity": "sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ=="
- },
- "node_modules/@types/react": {
- "version": "16.14.11",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-16.14.11.tgz",
- "integrity": "sha512-Don0MtsZZ3fjwTJ2BsoqkyOy7e176KplEAKOpr/4XDdzinlyJBn9yfsKn5mcSgn4kh1B22+3tBnzBC1z63ybtQ==",
- "dependencies": {
- "@types/prop-types": "*",
- "@types/scheduler": "*",
- "csstype": "^3.0.2"
- }
- },
- "node_modules/@types/react-dom": {
- "version": "16.9.14",
- "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-16.9.14.tgz",
- "integrity": "sha512-FIX2AVmPTGP30OUJ+0vadeIFJJ07Mh1m+U0rxfgyW34p3rTlXI+nlenvAxNn4BP36YyI9IJ/+UJ7Wu22N1pI7A==",
- "dependencies": {
- "@types/react": "^16"
- }
- },
- "node_modules/@types/scheduler": {
- "version": "0.16.2",
- "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
- "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew=="
- },
- "node_modules/@types/stack-utils": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz",
- "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==",
- "dev": true
- },
- "node_modules/@types/yargs": {
- "version": "16.0.4",
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz",
- "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==",
- "dev": true,
- "dependencies": {
- "@types/yargs-parser": "*"
- }
- },
- "node_modules/@types/yargs-parser": {
- "version": "20.2.1",
- "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz",
- "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==",
- "dev": true
- },
- "node_modules/@webassemblyjs/ast": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz",
- "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==",
- "dev": true,
- "dependencies": {
- "@webassemblyjs/helper-numbers": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1"
- }
- },
- "node_modules/@webassemblyjs/floating-point-hex-parser": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz",
- "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==",
- "dev": true
- },
- "node_modules/@webassemblyjs/helper-api-error": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz",
- "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==",
- "dev": true
- },
- "node_modules/@webassemblyjs/helper-buffer": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz",
- "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==",
- "dev": true
- },
- "node_modules/@webassemblyjs/helper-numbers": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz",
- "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==",
- "dev": true,
- "dependencies": {
- "@webassemblyjs/floating-point-hex-parser": "1.11.1",
- "@webassemblyjs/helper-api-error": "1.11.1",
- "@xtuc/long": "4.2.2"
- }
- },
- "node_modules/@webassemblyjs/helper-wasm-bytecode": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz",
- "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==",
- "dev": true
- },
- "node_modules/@webassemblyjs/helper-wasm-section": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz",
- "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==",
- "dev": true,
- "dependencies": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1"
- }
- },
- "node_modules/@webassemblyjs/ieee754": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz",
- "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==",
- "dev": true,
- "dependencies": {
- "@xtuc/ieee754": "^1.2.0"
- }
- },
- "node_modules/@webassemblyjs/leb128": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz",
- "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==",
- "dev": true,
- "dependencies": {
- "@xtuc/long": "4.2.2"
- }
- },
- "node_modules/@webassemblyjs/utf8": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz",
- "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==",
- "dev": true
- },
- "node_modules/@webassemblyjs/wasm-edit": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz",
- "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==",
- "dev": true,
- "dependencies": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/helper-wasm-section": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1",
- "@webassemblyjs/wasm-opt": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1",
- "@webassemblyjs/wast-printer": "1.11.1"
- }
- },
- "node_modules/@webassemblyjs/wasm-gen": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz",
- "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==",
- "dev": true,
- "dependencies": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/ieee754": "1.11.1",
- "@webassemblyjs/leb128": "1.11.1",
- "@webassemblyjs/utf8": "1.11.1"
- }
- },
- "node_modules/@webassemblyjs/wasm-opt": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz",
- "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==",
- "dev": true,
- "dependencies": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1"
- }
- },
- "node_modules/@webassemblyjs/wasm-parser": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz",
- "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==",
- "dev": true,
- "dependencies": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-api-error": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/ieee754": "1.11.1",
- "@webassemblyjs/leb128": "1.11.1",
- "@webassemblyjs/utf8": "1.11.1"
- }
- },
- "node_modules/@webassemblyjs/wast-printer": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz",
- "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==",
- "dev": true,
- "dependencies": {
- "@webassemblyjs/ast": "1.11.1",
- "@xtuc/long": "4.2.2"
- }
- },
- "node_modules/@webpack-cli/configtest": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.4.tgz",
- "integrity": "sha512-cs3XLy+UcxiP6bj0A6u7MLLuwdXJ1c3Dtc0RkKg+wiI1g/Ti1om8+/2hc2A2B60NbBNAbMgyBMHvyymWm/j4wQ==",
- "dev": true,
- "peerDependencies": {
- "webpack": "4.x.x || 5.x.x",
- "webpack-cli": "4.x.x"
- }
- },
- "node_modules/@webpack-cli/info": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.3.0.tgz",
- "integrity": "sha512-ASiVB3t9LOKHs5DyVUcxpraBXDOKubYu/ihHhU+t1UPpxsivg6Od2E2qU4gJCekfEddzRBzHhzA/Acyw/mlK/w==",
- "dev": true,
- "dependencies": {
- "envinfo": "^7.7.3"
- },
- "peerDependencies": {
- "webpack-cli": "4.x.x"
- }
- },
- "node_modules/@webpack-cli/serve": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.5.1.tgz",
- "integrity": "sha512-4vSVUiOPJLmr45S8rMGy7WDvpWxfFxfP/Qx/cxZFCfvoypTYpPPL1X8VIZMe0WTA+Jr7blUxwUSEZNkjoMTgSw==",
- "dev": true,
- "peerDependencies": {
- "webpack-cli": "4.x.x"
- },
- "peerDependenciesMeta": {
- "webpack-dev-server": {
- "optional": true
- }
- }
- },
- "node_modules/@wordpress/a11y": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/a11y/-/a11y-3.2.0.tgz",
- "integrity": "sha512-D2t0fn6ffNbw/9hiwrgjo7Op8GyAsGsHvNqkZhw9FulUqzQ+BsFKhSIcs6I0nI+nsZ6DZV8Cjv1h2EBn1tE0oQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/dom-ready": "^3.2.0",
- "@wordpress/i18n": "^4.2.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/annotations": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/annotations/-/annotations-2.2.0.tgz",
- "integrity": "sha512-p6ttEaNBROJsPwtKnHGfg8Hqb9hVoG9GjtFBQiClMG258E/faWQ5gG1Cchmih6aunUtlXPdV3ErK9mQ8qbdlTg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/data": "^5.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/api-fetch": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/api-fetch/-/api-fetch-5.2.0.tgz",
- "integrity": "sha512-VwDjdQ+afrCrRsBSfvdWpurZRvoMgewThWdNuvf+Oip0mEZgJTMqtulm4XkS/oZ+NJozE+tIlN2u1oGQD3NBng==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/url": "^3.2.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/autop": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/autop/-/autop-3.2.0.tgz",
- "integrity": "sha512-CN3rDpmdQ5tsgU5P+DyCJTs51svHRW+sbeuNeBbbwRYERGri5jQRnbPznNpgSe+tUtLI9oBAGN5CFJwt/CQL3A==",
- "dependencies": {
- "@babel/runtime": "^7.13.10"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/blob": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blob/-/blob-3.2.0.tgz",
- "integrity": "sha512-GpRYGyGwY581toqexQpvKIHVY5/Fa7pR7GeR23exb5t9yL6TyEMs9yZqZut2w0PxPVA7uPDjUZ1QwCvqME0KaA==",
- "dependencies": {
- "@babel/runtime": "^7.13.10"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/block-directory": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-directory/-/block-directory-2.2.0.tgz",
- "integrity": "sha512-MMM//5f3OphygjGFBHXjrA+YlMpJeUQk2s2Tcn/POA9Pv6ri/CTBfZvHbKgfrVkAzOyp77DV9mxGAFD1fvuxNw==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/edit-post": "^4.2.0",
- "@wordpress/editor": "^10.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/plugins": "^3.2.0",
- "@wordpress/url": "^3.2.0",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/block-directory/node_modules/@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/block-editor": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-6.2.0.tgz",
- "integrity": "sha512-9jSpF2c6GN95g/Mt3XTNb9GF9irpv4sEaaH5KicvP9JTE1/AZcPG43HOoX+nYoiCwCu45BbAWnisJa7stvMMbw==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "@wordpress/token-list": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/warning": "^2.2.0",
- "@wordpress/wordcount": "^3.2.0",
- "classnames": "^2.3.1",
- "css-mediaquery": "^0.1.2",
- "diff": "^4.0.2",
- "dom-scroll-into-view": "^1.2.1",
- "inherits": "^2.0.3",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "react-autosize-textarea": "^7.1.0",
- "react-spring": "^8.0.19",
- "redux-multi": "^0.1.12",
- "rememo": "^3.0.0",
- "tinycolor2": "^1.4.2",
- "traverse": "^0.6.6"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/block-editor/node_modules/@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/block-library": {
- "version": "3.2.18",
- "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-3.2.18.tgz",
- "integrity": "sha512-f61TICHWTIjvWnf8X5NvzYUDZ+RdJ944JLxWKJEhWGljk5iw0Cis+fZbPGK0QQoo8PzKXxqsTNj0oKRYpq92Pw==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.1.1",
- "@wordpress/api-fetch": "^5.1.1",
- "@wordpress/autop": "^3.1.1",
- "@wordpress/blob": "^3.1.1",
- "@wordpress/block-editor": "^6.1.13",
- "@wordpress/blocks": "^9.1.7",
- "@wordpress/components": "^14.1.10",
- "@wordpress/compose": "^4.1.5",
- "@wordpress/core-data": "^3.1.11",
- "@wordpress/data": "^5.1.5",
- "@wordpress/date": "^4.1.1",
- "@wordpress/deprecated": "^3.1.1",
- "@wordpress/dom": "^3.1.4",
- "@wordpress/element": "^3.1.1",
- "@wordpress/escape-html": "^2.1.1",
- "@wordpress/hooks": "^3.1.1",
- "@wordpress/i18n": "^4.1.1",
- "@wordpress/icons": "^4.0.2",
- "@wordpress/is-shallow-equal": "^4.1.1",
- "@wordpress/keycodes": "^3.1.1",
- "@wordpress/notices": "^3.1.5",
- "@wordpress/primitives": "^2.1.1",
- "@wordpress/reusable-blocks": "^2.1.16",
- "@wordpress/rich-text": "^4.1.5",
- "@wordpress/server-side-render": "^2.1.11",
- "@wordpress/url": "^3.1.1",
- "@wordpress/viewport": "^3.1.5",
- "classnames": "^2.2.5",
- "fast-average-color": "4.3.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "micromodal": "^0.4.6",
- "moment": "^2.22.1",
- "react-easy-crop": "^3.0.0",
- "tinycolor2": "^1.4.2"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/block-serialization-default-parser": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-serialization-default-parser/-/block-serialization-default-parser-4.2.0.tgz",
- "integrity": "sha512-VC47s7ZamzI/GgLNld3a4fjprtpjfr5agOi2AyY+ywRQVXzbTF7k4DI00pIqXLeyWYKnObak1xPdftCjhZi5CQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/block-serialization-spec-parser": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-serialization-spec-parser/-/block-serialization-spec-parser-4.2.0.tgz",
- "integrity": "sha512-QPu0jdZXXYYQ5N/UFHIM1Zbk+0faGMj4bh9c7UOIjmk5Vm3CSncd7mB6IvxzB9xrFVx++vmyBceNnZjlplOWpA==",
- "dependencies": {
- "pegjs": "^0.10.0",
- "phpegjs": "^1.0.0-beta7"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/blocks": {
- "version": "9.1.7",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-9.1.7.tgz",
- "integrity": "sha512-mar6I4F5sXIWSxE7bJkqanMo9cvYnS49Tg7hR0vY0gZAPTMmSeuL0Lz5i5fvquhURZtnyfryJ4qEvWix3B8/2w==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.1.1",
- "@wordpress/blob": "^3.1.1",
- "@wordpress/block-serialization-default-parser": "^4.1.1",
- "@wordpress/compose": "^4.1.5",
- "@wordpress/data": "^5.1.5",
- "@wordpress/deprecated": "^3.1.1",
- "@wordpress/dom": "^3.1.4",
- "@wordpress/element": "^3.1.1",
- "@wordpress/hooks": "^3.1.1",
- "@wordpress/html-entities": "^3.1.1",
- "@wordpress/i18n": "^4.1.1",
- "@wordpress/icons": "^4.0.2",
- "@wordpress/is-shallow-equal": "^4.1.1",
- "@wordpress/shortcode": "^3.1.1",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/components": {
- "version": "14.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-14.2.0.tgz",
- "integrity": "sha512-a06jjuBQMcIyrfXBfk4Hyu9BLQkT1rQm3tbOIE9Ur/cV8K0os0DrMUPZlNZ37IeOORzXhz89/L5mopvRttGLJQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@emotion/cache": "^11.1.3",
- "@emotion/css": "^11.1.3",
- "@emotion/react": "^11.1.5",
- "@emotion/styled": "^11.3.0",
- "@emotion/utils": "1.0.0",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/warning": "^2.2.0",
- "classnames": "^2.3.1",
- "dom-scroll-into-view": "^1.2.1",
- "downshift": "^6.0.15",
- "gradient-parser": "^0.1.5",
- "highlight-words-core": "^1.2.2",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "moment": "^2.22.1",
- "re-resizable": "^6.4.0",
- "react-dates": "^17.1.1",
- "react-resize-aware": "^3.1.0",
- "react-spring": "^8.0.20",
- "react-use-gesture": "^9.0.0",
- "reakit": "^1.3.8",
- "rememo": "^3.0.0",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- },
- "peerDependencies": {
- "reakit-utils": "^0.15.1"
- }
- },
- "node_modules/@wordpress/compose": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-4.2.0.tgz",
- "integrity": "sha512-8CJ4wzTXT9ZP+uIvN1d2cPBv06ZmhUh+UKzSf7v1o7T28SaYRcoZbsvDD2dnXbS2ZwWPIYAD9waNLWjCBq/izA==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@types/lodash": "4.14.149",
- "@types/mousetrap": "^1.6.8",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/priority-queue": "^2.2.0",
- "clipboard": "^2.0.1",
- "lodash": "^4.17.21",
- "mousetrap": "^1.6.5",
- "react-resize-aware": "^3.1.0",
- "use-memo-one": "^1.1.1"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/core-data": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/core-data/-/core-data-3.2.0.tgz",
- "integrity": "sha512-YZCvNpumxegXM4emyuiSg+aUx9Xk2ElV7RqpmJFm04Tgw+ekli2WDTjt3B5q0HG8UUaSlwfIRvzka6BRYOrlCQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/url": "^3.2.0",
- "equivalent-key-map": "^0.2.2",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/core-data/node_modules/@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/customize-widgets": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@wordpress/customize-widgets/-/customize-widgets-1.1.0.tgz",
- "integrity": "sha512-HyHE4c2ov0/PfVqmFtQkgR8AtulT7lie+Gy5KFY21uiv/W6a/l3QIotsc8QKVUq+x1OFMJA4ogP79w9Vvd57OQ==",
- "dependencies": {
- "@babel/runtime": "^7.11.2",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/block-library": "^4.0.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/media-utils": "^2.2.0",
- "@wordpress/widgets": "^1.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/customize-widgets/node_modules/@wordpress/block-library": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-4.0.0.tgz",
- "integrity": "sha512-VWXvMAsAHQqQ3dIcXwRocal0Sz7P2bAZOPeERZFoGdtaWp2DCam/CjQ5mOzWDce2YW9/rrFYdmPFu4s2iFRHRw==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/escape-html": "^2.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "classnames": "^2.3.1",
- "fast-average-color": "4.3.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "micromodal": "^0.4.6",
- "moment": "^2.22.1",
- "react-easy-crop": "^3.0.0",
- "tinycolor2": "^1.4.2"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/customize-widgets/node_modules/@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/data": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/data/-/data-5.2.0.tgz",
- "integrity": "sha512-NlPIC8PdKnPly9CnynQS1di59Af3eiCZrQgZm1VssfA620NDoJA5p3dlDYj/Ts4Ryzp78HCi7wjhkmbsHpnd6g==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/priority-queue": "^2.2.0",
- "@wordpress/redux-routine": "^4.2.0",
- "equivalent-key-map": "^0.2.2",
- "is-promise": "^4.0.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "turbo-combine-reducers": "^1.0.2",
- "use-memo-one": "^1.1.1"
- },
- "engines": {
- "node": ">=12"
- },
- "peerDependencies": {
- "redux": "^4.1.0"
- }
- },
- "node_modules/@wordpress/data-controls": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/data-controls/-/data-controls-2.2.0.tgz",
- "integrity": "sha512-5jvOXoYf8EBNHg/ITkcSSqnb/nPHx1hbGrnjQKk6Iu2xNbQmAlfAxY0bc9fIHqFAWmiurbM/dJOuCIC6YebtFg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/date": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-4.2.0.tgz",
- "integrity": "sha512-BLOBh6IAIm2s2YZxOT+dd6HQcsm5UxCSWio9YUrCNGK6P6wrYNA7y0l6XF70LMOIXrp/cMMcQDEL1NPn6T0Sjw==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "moment": "^2.22.1",
- "moment-timezone": "^0.5.31"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/dependency-extraction-webpack-plugin": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-3.2.0.tgz",
- "integrity": "sha512-2+Z9D5HgJyWSwqs0DNRjzP/zaXagLHVsCiMPzFOSrmp3hUpdMmvEhXvwr1m5TEb2QDvqqfy296OraSbTEymGrA==",
- "dev": true,
- "dependencies": {
- "json2php": "^0.0.4",
- "webpack-sources": "^2.2.0"
- },
- "engines": {
- "node": ">=12"
- },
- "peerDependencies": {
- "webpack": "^4.8.3 || ^5.0.0"
- }
- },
- "node_modules/@wordpress/deprecated": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-3.2.0.tgz",
- "integrity": "sha512-LeMdcQ8mdG3yJ3pbDYFfph4vplNuqmBKFMxJigmAj4uoopILh4RH6KxVCNgeGQ34YJ1DkA8GpqSd3G82JB2yEg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/hooks": "^3.2.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/dom": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/dom/-/dom-3.2.0.tgz",
- "integrity": "sha512-U/kzPY3K51V1zo8rchMcvQFNvwKDw+8bspgcCO5vFZfaxfQYPY5mFzbYfH6PZVgGsP3LwmmvF3brhrXkv+8y0w==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/dom-ready": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/dom-ready/-/dom-ready-3.2.0.tgz",
- "integrity": "sha512-LWoe/nfMN8KPulnusMfeN2lyUG2iyHMSxL/E6szBtM0QMPfTXtHqiyus2y2aYs8nMLQLIOXlHPaTqrTxK3iJoQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/edit-post": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/edit-post/-/edit-post-4.2.0.tgz",
- "integrity": "sha512-h0Iv+EH6x9ueSoWgeQbejwwwLhOogY555tMg/oN31WhGXo8Cnk35SWJvEcT94WSx7g81Hd6qUhqIb/4tfwjguw==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/block-library": "^4.0.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/editor": "^10.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/interface": "^3.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/media-utils": "^2.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/plugins": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "@wordpress/warning": "^2.2.0",
- "classnames": "^2.3.1",
- "framer-motion": "^4.1.3",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "rememo": "^3.0.0",
- "uuid": "8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/edit-post/node_modules/@wordpress/block-library": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-4.0.0.tgz",
- "integrity": "sha512-VWXvMAsAHQqQ3dIcXwRocal0Sz7P2bAZOPeERZFoGdtaWp2DCam/CjQ5mOzWDce2YW9/rrFYdmPFu4s2iFRHRw==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/escape-html": "^2.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "classnames": "^2.3.1",
- "fast-average-color": "4.3.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "micromodal": "^0.4.6",
- "moment": "^2.22.1",
- "react-easy-crop": "^3.0.0",
- "tinycolor2": "^1.4.2"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/edit-post/node_modules/@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/edit-post/node_modules/uuid": {
- "version": "8.3.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.0.tgz",
- "integrity": "sha512-fX6Z5o4m6XsXBdli9g7DtWgAx+osMsRRZFKma1mIUsLCz6vRvv+pz5VNbyu9UEDzpMWulZfvpgb/cmDXVulYFQ==",
- "bin": {
- "uuid": "dist/bin/uuid"
- }
- },
- "node_modules/@wordpress/edit-site": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/edit-site/-/edit-site-2.2.0.tgz",
- "integrity": "sha512-tKm6FtuFJztkwIdBxmfZtatlu/U43jbm0ohaGl1oMliOthRGGM2Hz4RizVlUQ/aT3nA8zxBBgyd5h96GHsqtBQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/block-library": "^4.0.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/editor": "^10.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/interface": "^3.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/media-utils": "^2.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/plugins": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "classnames": "^2.3.1",
- "downloadjs": "^1.4.7",
- "file-saver": "^2.0.2",
- "jszip": "^3.2.2",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/edit-site/node_modules/@wordpress/block-library": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-4.0.0.tgz",
- "integrity": "sha512-VWXvMAsAHQqQ3dIcXwRocal0Sz7P2bAZOPeERZFoGdtaWp2DCam/CjQ5mOzWDce2YW9/rrFYdmPFu4s2iFRHRw==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/escape-html": "^2.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "classnames": "^2.3.1",
- "fast-average-color": "4.3.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "micromodal": "^0.4.6",
- "moment": "^2.22.1",
- "react-easy-crop": "^3.0.0",
- "tinycolor2": "^1.4.2"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/edit-site/node_modules/@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/edit-widgets": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/edit-widgets/-/edit-widgets-2.2.0.tgz",
- "integrity": "sha512-ddmZjbWpGy+fQSDqqUXoJzqfGOGiGsalWpWF0NceexCTJjdhCfYfvPsMuLr+hKiII8Ugsgs0JYHSHZwxw5Ya8w==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/block-library": "^4.0.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/interface": "^3.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/media-utils": "^2.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/plugins": "^3.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/widgets": "^1.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/edit-widgets/node_modules/@wordpress/block-library": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-4.0.0.tgz",
- "integrity": "sha512-VWXvMAsAHQqQ3dIcXwRocal0Sz7P2bAZOPeERZFoGdtaWp2DCam/CjQ5mOzWDce2YW9/rrFYdmPFu4s2iFRHRw==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/escape-html": "^2.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "classnames": "^2.3.1",
- "fast-average-color": "4.3.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "micromodal": "^0.4.6",
- "moment": "^2.22.1",
- "react-easy-crop": "^3.0.0",
- "tinycolor2": "^1.4.2"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/edit-widgets/node_modules/@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/editor": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/editor/-/editor-10.2.0.tgz",
- "integrity": "sha512-nJ9D2+vF16kfzFXehQcndGYUjSC/0F1I0WQoQYxwH5ZKCkWqwcySFg0U4UzKGUMYkTPw/TvOgHXBcFuaF/nuIg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/media-utils": "^2.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/wordcount": "^3.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "react-autosize-textarea": "^7.1.0",
- "rememo": "^3.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/editor/node_modules/@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/element": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-3.2.0.tgz",
- "integrity": "sha512-YXJhtBF8FnFYwA9X6Dvs4k6yJf5wy1lhU04VNJVzoUDwCt/pK747RGePIPDdUWVd3X/TlyNH2yLRtcCyOC/SzQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@types/react": "^16.9.0",
- "@types/react-dom": "^16.9.0",
- "@wordpress/escape-html": "^2.2.0",
- "lodash": "^4.17.21",
- "react": "^17.0.1",
- "react-dom": "^17.0.1"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/element/node_modules/react": {
- "version": "17.0.2",
- "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
- "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
- "dependencies": {
- "loose-envify": "^1.1.0",
- "object-assign": "^4.1.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/@wordpress/escape-html": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.2.0.tgz",
- "integrity": "sha512-10U0qkEgNa+htpBCpBDJScV+9uhaUXaIZWJVhExtr8kG3omxO/pCwlRUd7r/ad7ZjuIoaLhdqzLgXT4JQCZ8uQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/format-library": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/format-library/-/format-library-2.2.0.tgz",
- "integrity": "sha512-8lroxAvBnP5yufgpc0hl0SG+DICc5PdR2ftdY9pptWZF0sqmWknhja5vta/UMFhfT9gMW2jFffGmFJ2mltWYWQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/url": "^3.2.0",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/hooks": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-3.2.0.tgz",
- "integrity": "sha512-nVR6V9kPxl8+aYQzQJdoDt+aKBKHHD0zplcYZbu2MHxjmHMvppAeL9mjzVhQZj/3n10NR2Ftk94mHQzHWfhCCg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/html-entities": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/html-entities/-/html-entities-3.2.0.tgz",
- "integrity": "sha512-FqSeueZzsQfW4TBNKD2iaL8VaFNVI8Gi+QZJfscXRFprY9jef30Zh5ZoT90HN9/SQibuT9lvY6USqapJ+ysG+g==",
- "dependencies": {
- "@babel/runtime": "^7.13.10"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/i18n": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-4.2.0.tgz",
- "integrity": "sha512-MGnDQObV0Ot5GJz54QI5Vg1A07Wkq4as4nIPhYW3q1xtxHCKIoDsbVqIXHqv3WTFHVvIAlt9KWbVuP38/6GENw==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/hooks": "^3.2.0",
- "gettext-parser": "^1.3.1",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "sprintf-js": "^1.1.1",
- "tannin": "^1.2.0"
- },
- "bin": {
- "pot-to-php": "tools/pot-to-php.js"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/icons": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-4.1.0.tgz",
- "integrity": "sha512-1FpEjT9kJbr0cWbgdgIwd2DoeerWijcVx3qCZ/WMFKNElBH9lfZLuWPI1hpX102HGWFcEi3VlbVpdBGeCeYQWg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/element": "^3.2.0",
- "@wordpress/primitives": "^2.2.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/interface": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/interface/-/interface-3.2.0.tgz",
- "integrity": "sha512-sDl7v+2XJUmGeRA3FuswhIxc2f1bObBooVCICZsxcsPjWheO4jMWQK0Ju0eKAQS0OtHvIy96H3hSa3Wf66GD7w==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/plugins": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/is-shallow-equal": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-4.2.0.tgz",
- "integrity": "sha512-9Oy7f3HFLMNfry4LLwYmfx4tROmusPAOfanv9F/MgzSBfMH7eyxU2JZd4KrP7IbPb59UfoUa8GhaLsnqKm66og==",
- "dependencies": {
- "@babel/runtime": "^7.13.10"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/keyboard-shortcuts": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/keyboard-shortcuts/-/keyboard-shortcuts-2.2.0.tgz",
- "integrity": "sha512-YSp6jkpsLGQAMwU0l400/t/kmronvdvTWzXuHolSktcy4uklg+yJjmufzGv7W22rdrjR8FmBEDST9jtFgZxjyA==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/keycodes": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/keycodes/-/keycodes-3.2.0.tgz",
- "integrity": "sha512-wWnt6cPImjuFwHJKB5jIPxPE1KESpdrXF5zRpQIAosT92pLg4clkVMXdgNuwjG6ckyj5xA3c/f7KvV5Lx79dcg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/i18n": "^4.2.0",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/list-reusable-blocks": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/list-reusable-blocks/-/list-reusable-blocks-2.2.0.tgz",
- "integrity": "sha512-Z9OZHqt5EbzZo5fJM28oP6ZZwSUMetr+YoLBeVxQf41ZLaq54vPhv7bSakVpkrYiooOmY+SzPn7AJvUIPhysaQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/media-utils": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/media-utils/-/media-utils-2.2.0.tgz",
- "integrity": "sha512-CpxRnzqLmW81i6VJ4r4rikSiaDxvLoTqAI+58++zm4DNohWVKk9GzAXRGAt6BHU1XCvoO+57TORdHXV6RXIi6Q==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/notices": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/notices/-/notices-3.2.0.tgz",
- "integrity": "sha512-n3m9EvE+/eBbsHhKhe8o/q0tG2GtIlVQuG4QqIPYyK1nK+qEh8gLH022DLrqsDNJuWVCkuJx+7l6mJDI64t6Ng==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/nux": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/nux/-/nux-4.2.0.tgz",
- "integrity": "sha512-tV/dlKunouAOgRBs4epRfoQUlffbsD0sUNXwniYawOhEar0n+whv5ncnu4iOnqI3eJnTDRMl4ZU1f9HpgW27zQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/plugins": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/plugins/-/plugins-3.2.0.tgz",
- "integrity": "sha512-yKD+XFhbJTrkspqf0/W74bvrpl2JAEefeINEmmnG94zwBEJh27Iuh67Ow84zV63GRLcHZRSb8fGsNToU983+Ow==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/icons": "^4.1.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/primitives": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-2.2.0.tgz",
- "integrity": "sha512-WupgR+tt6fKGZE1UKy2gz3wDdpRL9MWQbVuetXv/7TPAz2ofOS2fZIsXNrl4D0HkA82gYh8w8s2TXK0XNyAAow==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/element": "^3.2.0",
- "classnames": "^2.3.1"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/priority-queue": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/priority-queue/-/priority-queue-2.2.0.tgz",
- "integrity": "sha512-Y3uK6y7Nu4x8ItN+SgG2nFp60sy0OTe01q/cnAnRuzs1wSaY3NgbrwidLS9gYVcXrgHn/XfEE3ynYOpGjQektQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/react-i18n": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/react-i18n/-/react-i18n-2.2.0.tgz",
- "integrity": "sha512-oLhRV4h+NTa6WAnMtpfsr46DL+ZjvhtVadECCbv80RvSS9Bj3ZfVC6n0iZM1UCAlFszGmd4BjUhQ//F38AS3hA==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "utility-types": "^3.10.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/redux-routine": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/redux-routine/-/redux-routine-4.2.0.tgz",
- "integrity": "sha512-vYHI6/O9g0sh0VGNwQlk+AozBHvCoayjUqmoC1ggr4yL5rQeSBJbyiLGJ0WPA8T3YF0HHdefMM4PZfTEdgce5w==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "is-promise": "^4.0.0",
- "lodash": "^4.17.21",
- "redux": "^4.1.0",
- "rungen": "^0.3.2"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/reusable-blocks": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/reusable-blocks/-/reusable-blocks-2.2.0.tgz",
- "integrity": "sha512-4rUm2w14tpqH4uNqrlXhaWk5AKd1SkSgyDZ+ME79YE3nfGD0abUZZpuElZjiSGlwxU9MIc6k2or88wcnvdAvrQ==",
- "dependencies": {
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/url": "^3.2.0",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/rich-text": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/rich-text/-/rich-text-4.2.0.tgz",
- "integrity": "sha512-e+wfrkKtZIcFZJZLxkrikiXbxlr6nuGg+V94uKMLrzJEWdw7w/8l3dNhWHRGPkldXIEGrF/mV40ibjUa2p3Sfg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/escape-html": "^2.2.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "rememo": "^3.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/server-side-render": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/server-side-render/-/server-side-render-2.2.0.tgz",
- "integrity": "sha512-7nJBM8NKgvylzetEgm89vuBXr9KvdtMaUfRvqEfNzV3at9xcnD+8or8zvdWF0y6fVON1e4brpbRMQTOV/aCZVQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/url": "^3.2.0",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/server-side-render/node_modules/@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/shortcode": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/shortcode/-/shortcode-3.2.0.tgz",
- "integrity": "sha512-RueB1KqY+5rjxdAjDkwbyjmcLmifjFOJTWgQcwuyU/+6lL/BoX31CYkLI1gQ7+LQi+XFV3olqzh0wMZDz/R5qQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "lodash": "^4.17.21",
- "memize": "^1.1.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/token-list": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/token-list/-/token-list-2.2.0.tgz",
- "integrity": "sha512-0z6MhRv/pqxQcvTSeMAL69vcaxJ2J8U1Q5VeavHWnhtZ+nRglYNoE0yMLrEaeutoHeXOfWpY6baC91AgLDKE8A==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/url": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/url/-/url-3.2.0.tgz",
- "integrity": "sha512-CfFyI0jUzvDmbzSS6mmSrHhv4dC8i5aw3hAGZIYcLDERR81U3sPb3C4s90Y0Pr8LMzuHZZqg0QaMcSBMgkOEVQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "lodash": "^4.17.21",
- "react-native-url-polyfill": "^1.1.2"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/viewport": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/viewport/-/viewport-3.2.0.tgz",
- "integrity": "sha512-wprefD4TaSSU0RYheLoIAlGRSwF7hKNhJpMS36SwQb+RmQrqRyvGWiIMeYypLkUVeFUukQ3AnCOcjppaOXYiLQ==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/warning": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-2.2.0.tgz",
- "integrity": "sha512-rrlvdmeyqXSRfedi7Ig6vOa7sdz2us0vjiQ8qvPEC6k2vUBvPsJgk13htavxGmbXsVBSqTtjuLC6LfGHCPSmOg==",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/widgets": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/widgets/-/widgets-1.2.0.tgz",
- "integrity": "sha512-5D3PWysvkL6TFXLvetD+QWyxvGGHuU9UCme7lLtMxGGcgu1YhbtVhn9OcQJwKyRWGs7ACoJQc0DvtcPnHio7GA==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/url": "^3.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21"
- }
- },
- "node_modules/@wordpress/widgets/node_modules/@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@wordpress/wordcount": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/wordcount/-/wordcount-3.2.0.tgz",
- "integrity": "sha512-Aby+Il9J9RVvLQgZdf2oVgMQcjR3Oc9k6q1vbXQLB2t71iSqvPs6J0a6XqDwcpd3geHuMt2bjL4YBsZhJLaaXA==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "lodash": "^4.17.21"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@xtuc/ieee754": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
- "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
- "dev": true
- },
- "node_modules/@xtuc/long": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
- "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
- "dev": true
- },
- "node_modules/abab": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz",
- "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==",
- "dev": true
- },
- "node_modules/acorn": {
- "version": "7.4.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
- "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
- "dev": true,
- "bin": {
- "acorn": "bin/acorn"
- },
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/acorn-globals": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz",
- "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==",
- "dev": true,
- "dependencies": {
- "acorn": "^7.1.1",
- "acorn-walk": "^7.1.1"
- }
- },
- "node_modules/acorn-jsx": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
- "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
- "dev": true,
- "peerDependencies": {
- "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
- }
- },
- "node_modules/acorn-walk": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
- "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
- "dev": true,
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
- "dev": true,
- "dependencies": {
- "debug": "4"
- },
- "engines": {
- "node": ">= 6.0.0"
- }
- },
- "node_modules/airbnb-prop-types": {
- "version": "2.16.0",
- "resolved": "https://registry.npmjs.org/airbnb-prop-types/-/airbnb-prop-types-2.16.0.tgz",
- "integrity": "sha512-7WHOFolP/6cS96PhKNrslCLMYAI8yB1Pp6u6XmxozQOiZbsI5ycglZr5cHhBFfuRcQQjzCMith5ZPZdYiJCxUg==",
- "dependencies": {
- "array.prototype.find": "^2.1.1",
- "function.prototype.name": "^1.1.2",
- "is-regex": "^1.1.0",
- "object-is": "^1.1.2",
- "object.assign": "^4.1.0",
- "object.entries": "^1.1.2",
- "prop-types": "^15.7.2",
- "prop-types-exact": "^1.2.0",
- "react-is": "^16.13.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- },
- "peerDependencies": {
- "react": "^0.14 || ^15.0.0 || ^16.0.0-alpha"
- }
- },
- "node_modules/airbnb-prop-types/node_modules/react-is": {
- "version": "16.13.1",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
- },
- "node_modules/ajv": {
- "version": "6.12.6",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
- "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
- "dev": true,
- "dependencies": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/epoberezkin"
- }
- },
- "node_modules/ajv-keywords": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
- "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
- "dev": true,
- "peerDependencies": {
- "ajv": "^6.9.1"
- }
- },
- "node_modules/ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/ansi-escapes": {
- "version": "4.3.2",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
- "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
- "dev": true,
- "dependencies": {
- "type-fest": "^0.21.3"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/ansi-regex": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
- "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/anymatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
- "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
- "dev": true,
- "dependencies": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
- "dev": true,
- "dependencies": {
- "sprintf-js": "~1.0.2"
- }
- },
- "node_modules/argparse/node_modules/sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
- "dev": true
- },
- "node_modules/aria-query": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz",
- "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==",
- "dev": true,
- "dependencies": {
- "@babel/runtime": "^7.10.2",
- "@babel/runtime-corejs3": "^7.10.2"
- },
- "engines": {
- "node": ">=6.0"
- }
- },
- "node_modules/array-includes": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz",
- "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==",
- "dev": true,
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.0-next.2",
- "get-intrinsic": "^1.1.1",
- "is-string": "^1.0.5"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array-union": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
- "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
- "dev": true,
- "dependencies": {
- "array-uniq": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/array-uniq": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
- "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/array.prototype.find": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/array.prototype.find/-/array.prototype.find-2.1.1.tgz",
- "integrity": "sha512-mi+MYNJYLTx2eNYy+Yh6raoQacCsNeeMUaspFPh9Y141lFSsWxxB8V9mM2ye+eqiRs917J6/pJ4M9ZPzenWckA==",
- "dependencies": {
- "define-properties": "^1.1.3",
- "es-abstract": "^1.17.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array.prototype.flat": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz",
- "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==",
- "dependencies": {
- "call-bind": "^1.0.0",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.0-next.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array.prototype.flatmap": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz",
- "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==",
- "dev": true,
- "dependencies": {
- "call-bind": "^1.0.0",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.0-next.1",
- "function-bind": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/ast-types-flow": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz",
- "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=",
- "dev": true
- },
- "node_modules/astral-regex": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
- "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
- "dev": true
- },
- "node_modules/autoprefixer": {
- "version": "10.3.1",
- "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.3.1.tgz",
- "integrity": "sha512-L8AmtKzdiRyYg7BUXJTzigmhbQRCXFKz6SA1Lqo0+AR2FBbQ4aTAPFSDlOutnFkjhiz8my4agGXog1xlMjPJ6A==",
- "dev": true,
- "dependencies": {
- "browserslist": "^4.16.6",
- "caniuse-lite": "^1.0.30001243",
- "colorette": "^1.2.2",
- "fraction.js": "^4.1.1",
- "normalize-range": "^0.1.2",
- "postcss-value-parser": "^4.1.0"
- },
- "bin": {
- "autoprefixer": "bin/autoprefixer"
- },
- "engines": {
- "node": "^10 || ^12 || >=14"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/postcss/"
- },
- "peerDependencies": {
- "postcss": "^8.1.0"
- }
- },
- "node_modules/autosize": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/autosize/-/autosize-4.0.4.tgz",
- "integrity": "sha512-5yxLQ22O0fCRGoxGfeLSNt3J8LB1v+umtpMnPW6XjkTWXKoN0AmXAIhelJcDtFT/Y/wYWmfE+oqU10Q0b8FhaQ=="
- },
- "node_modules/axe-core": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.3.1.tgz",
- "integrity": "sha512-3WVgVPs/7OnKU3s+lqMtkv3wQlg3WxK1YifmpJSDO0E1aPBrZWlrrTO6cxRqCXLuX2aYgCljqXIQd0VnRidV0g==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/axobject-query": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz",
- "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==",
- "dev": true
- },
- "node_modules/babel-jest": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.0.6.tgz",
- "integrity": "sha512-iTJyYLNc4wRofASmofpOc5NK9QunwMk+TLFgGXsTFS8uEqmd8wdI7sga0FPe2oVH3b5Agt/EAK1QjPEuKL8VfA==",
- "dev": true,
- "dependencies": {
- "@jest/transform": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/babel__core": "^7.1.14",
- "babel-plugin-istanbul": "^6.0.0",
- "babel-preset-jest": "^27.0.6",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.4",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.8.0"
- }
- },
- "node_modules/babel-loader": {
- "version": "8.2.2",
- "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.2.tgz",
- "integrity": "sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g==",
- "dev": true,
- "dependencies": {
- "find-cache-dir": "^3.3.1",
- "loader-utils": "^1.4.0",
- "make-dir": "^3.1.0",
- "schema-utils": "^2.6.5"
- },
- "engines": {
- "node": ">= 8.9"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0",
- "webpack": ">=2"
- }
- },
- "node_modules/babel-plugin-dynamic-import-node": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
- "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==",
- "dev": true,
- "dependencies": {
- "object.assign": "^4.1.0"
- }
- },
- "node_modules/babel-plugin-istanbul": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz",
- "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@istanbuljs/load-nyc-config": "^1.0.0",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-instrument": "^4.0.0",
- "test-exclude": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/babel-plugin-jest-hoist": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.6.tgz",
- "integrity": "sha512-CewFeM9Vv2gM7Yr9n5eyyLVPRSiBnk6lKZRjgwYnGKSl9M14TMn2vkN02wTF04OGuSDLEzlWiMzvjXuW9mB6Gw==",
- "dev": true,
- "dependencies": {
- "@babel/template": "^7.3.3",
- "@babel/types": "^7.3.3",
- "@types/babel__core": "^7.0.0",
- "@types/babel__traverse": "^7.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/babel-plugin-macros": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz",
- "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==",
- "dependencies": {
- "@babel/runtime": "^7.7.2",
- "cosmiconfig": "^6.0.0",
- "resolve": "^1.12.0"
- }
- },
- "node_modules/babel-plugin-polyfill-corejs2": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.2.tgz",
- "integrity": "sha512-kISrENsJ0z5dNPq5eRvcctITNHYXWOA4DUZRFYCz3jYCcvTb/A546LIddmoGNMVYg2U38OyFeNosQwI9ENTqIQ==",
- "dev": true,
- "dependencies": {
- "@babel/compat-data": "^7.13.11",
- "@babel/helper-define-polyfill-provider": "^0.2.2",
- "semver": "^6.1.1"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/babel-plugin-polyfill-corejs3": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.3.tgz",
- "integrity": "sha512-rCOFzEIJpJEAU14XCcV/erIf/wZQMmMT5l5vXOpL5uoznyOGfDIjPj6FVytMvtzaKSTSVKouOCTPJ5OMUZH30g==",
- "dev": true,
- "dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.2.2",
- "core-js-compat": "^3.14.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/babel-plugin-polyfill-regenerator": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.2.tgz",
- "integrity": "sha512-Goy5ghsc21HgPDFtzRkSirpZVW35meGoTmTOb2bxqdl60ghub4xOidgNTHaZfQ2FaxQsKmwvXtOAkcIS4SMBWg==",
- "dev": true,
- "dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.2.2"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/babel-preset-current-node-syntax": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz",
- "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==",
- "dev": true,
- "dependencies": {
- "@babel/plugin-syntax-async-generators": "^7.8.4",
- "@babel/plugin-syntax-bigint": "^7.8.3",
- "@babel/plugin-syntax-class-properties": "^7.8.3",
- "@babel/plugin-syntax-import-meta": "^7.8.3",
- "@babel/plugin-syntax-json-strings": "^7.8.3",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-numeric-separator": "^7.8.3",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-syntax-top-level-await": "^7.8.3"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/babel-preset-jest": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.0.6.tgz",
- "integrity": "sha512-WObA0/Biw2LrVVwZkF/2GqbOdzhKD6Fkdwhoy9ASIrOWr/zodcSpQh72JOkEn6NWyjmnPDjNSqaGN4KnpKzhXw==",
- "dev": true,
- "dependencies": {
- "babel-plugin-jest-hoist": "^27.0.6",
- "babel-preset-current-node-syntax": "^1.0.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/balanced-match": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
- "dev": true
- },
- "node_modules/base64-js": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
- "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ]
- },
- "node_modules/big.js": {
- "version": "5.2.2",
- "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
- "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==",
- "dev": true,
- "engines": {
- "node": "*"
- }
- },
- "node_modules/body-scroll-lock": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/body-scroll-lock/-/body-scroll-lock-3.1.5.tgz",
- "integrity": "sha512-Yi1Xaml0EvNA0OYWxXiYNqY24AfWkbA6w5vxE7GWxtKfzIbZM+Qw+aSmkgsbWzbHiy/RCSkUZBplVxTA+E4jJg=="
- },
- "node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
- "dev": true,
- "dependencies": {
- "fill-range": "^7.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/brcast": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/brcast/-/brcast-2.0.2.tgz",
- "integrity": "sha512-Tfn5JSE7hrUlFcOoaLzVvkbgIemIorMIyoMr3TgvszWW7jFt2C9PdeMLtysYD9RU0MmU17b69+XJG1eRY2OBRg=="
- },
- "node_modules/browser-process-hrtime": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz",
- "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==",
- "dev": true
- },
- "node_modules/browserslist": {
- "version": "4.16.6",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz",
- "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==",
- "dev": true,
- "dependencies": {
- "caniuse-lite": "^1.0.30001219",
- "colorette": "^1.2.2",
- "electron-to-chromium": "^1.3.723",
- "escalade": "^3.1.1",
- "node-releases": "^1.1.71"
- },
- "bin": {
- "browserslist": "cli.js"
- },
- "engines": {
- "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/browserslist"
- }
- },
- "node_modules/bser": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
- "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
- "dev": true,
- "dependencies": {
- "node-int64": "^0.4.0"
- }
- },
- "node_modules/buffer": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
- "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "dependencies": {
- "base64-js": "^1.3.1",
- "ieee754": "^1.1.13"
- }
- },
- "node_modules/buffer-from": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
- "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
- "dev": true
- },
- "node_modules/call-bind": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
- "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
- "dependencies": {
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/callsites": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/caniuse-lite": {
- "version": "1.0.30001246",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001246.tgz",
- "integrity": "sha512-Tc+ff0Co/nFNbLOrziBXmMVtpt9S2c2Y+Z9Nk9Khj09J+0zR9ejvIW5qkZAErCbOrVODCx/MN+GpB5FNBs5GFA==",
- "dev": true,
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/browserslist"
- }
- },
- "node_modules/chalk": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz",
- "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/char-regex": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz",
- "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==",
- "dev": true,
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/check-node-version": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/check-node-version/-/check-node-version-4.1.0.tgz",
- "integrity": "sha512-TSXGsyfW5/xY2QseuJn8/hleO2AU7HxVCdkc900jp1vcfzF840GkjvRT7CHl8sRtWn23n3X3k0cwH9RXeRwhfw==",
- "dev": true,
- "dependencies": {
- "chalk": "^3.0.0",
- "map-values": "^1.0.1",
- "minimist": "^1.2.0",
- "object-filter": "^1.0.2",
- "run-parallel": "^1.1.4",
- "semver": "^6.3.0"
- },
- "bin": {
- "check-node-version": "bin.js"
- },
- "engines": {
- "node": ">=8.3.0"
- }
- },
- "node_modules/check-node-version/node_modules/chalk": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
- "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/chrome-trace-event": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
- "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==",
- "dev": true,
- "engines": {
- "node": ">=6.0"
- }
- },
- "node_modules/ci-info": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz",
- "integrity": "sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==",
- "dev": true
- },
- "node_modules/cjs-module-lexer": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz",
- "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==",
- "dev": true
- },
- "node_modules/classnames": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz",
- "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA=="
- },
- "node_modules/clean-webpack-plugin": {
- "version": "4.0.0-alpha.0",
- "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-4.0.0-alpha.0.tgz",
- "integrity": "sha512-+X6mASBbGSVyw8L9/1rhQ+vS4uaQMopf194kX7Aes8qfezgCFL+qv5W0nwP3a0Tud5kUckARk8tFcoyOSKEjhg==",
- "dev": true,
- "dependencies": {
- "del": "^4.1.1"
- },
- "engines": {
- "node": ">=10.0.0"
- },
- "peerDependencies": {
- "webpack": ">=4.0.0 <6.0.0"
- }
- },
- "node_modules/clipboard": {
- "version": "2.0.8",
- "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.8.tgz",
- "integrity": "sha512-Y6WO0unAIQp5bLmk1zdThRhgJt/x3ks6f30s3oE3H1mgIEU33XyQjEf8gsf6DxC7NPX8Y1SsNWjUjL/ywLnnbQ==",
- "dependencies": {
- "good-listener": "^1.2.2",
- "select": "^1.1.2",
- "tiny-emitter": "^2.0.0"
- }
- },
- "node_modules/cliui": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
- "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
- "dev": true,
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^7.0.0"
- }
- },
- "node_modules/clone-deep": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
- "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
- "dev": true,
- "dependencies": {
- "is-plain-object": "^2.0.4",
- "kind-of": "^6.0.2",
- "shallow-clone": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/co": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
- "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
- "dev": true,
- "engines": {
- "iojs": ">= 1.0.0",
- "node": ">= 0.12.0"
- }
- },
- "node_modules/collect-v8-coverage": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz",
- "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==",
- "dev": true
- },
- "node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "node_modules/colorette": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz",
- "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==",
- "dev": true
- },
- "node_modules/combined-stream": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
- "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
- "dev": true,
- "dependencies": {
- "delayed-stream": "~1.0.0"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/commander": {
- "version": "2.20.3",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
- "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
- "dev": true
- },
- "node_modules/commondir": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
- "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
- "dev": true
- },
- "node_modules/compute-scroll-into-view": {
- "version": "1.0.17",
- "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.17.tgz",
- "integrity": "sha512-j4dx+Fb0URmzbwwMUrhqWM2BEWHdFGx+qZ9qqASHRPqvTYdqvWnHg0H1hIbcyLnvgnoNAVMlwkepyqM3DaIFUg=="
- },
- "node_modules/computed-style": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/computed-style/-/computed-style-0.1.4.tgz",
- "integrity": "sha1-fzRP2FhLLkJb7cpKGvwOMAuwXXQ="
- },
- "node_modules/concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
- "dev": true
- },
- "node_modules/confusing-browser-globals": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.10.tgz",
- "integrity": "sha512-gNld/3lySHwuhaVluJUKLePYirM3QNCKzVxqAdhJII9/WXKVX5PURzMVJspS1jTslSqjeuG4KMVTSouit5YPHA==",
- "dev": true
- },
- "node_modules/consolidated-events": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/consolidated-events/-/consolidated-events-2.0.2.tgz",
- "integrity": "sha512-2/uRVMdRypf5z/TW/ncD/66l75P5hH2vM/GR8Jf8HLc2xnfJtmina6F6du8+v4Z2vTrMo7jC+W1tmEEuuELgkQ=="
- },
- "node_modules/convert-source-map": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
- "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
- "dependencies": {
- "safe-buffer": "~5.1.1"
- }
- },
- "node_modules/core-js-compat": {
- "version": "3.15.2",
- "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.15.2.tgz",
- "integrity": "sha512-Wp+BJVvwopjI+A1EFqm2dwUmWYXrvucmtIB2LgXn/Rb+gWPKYxtmb4GKHGKG/KGF1eK9jfjzT38DITbTOCX/SQ==",
- "dev": true,
- "dependencies": {
- "browserslist": "^4.16.6",
- "semver": "7.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/core-js"
- }
- },
- "node_modules/core-js-compat/node_modules/semver": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz",
- "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==",
- "dev": true,
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/core-js-pure": {
- "version": "3.15.2",
- "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.15.2.tgz",
- "integrity": "sha512-D42L7RYh1J2grW8ttxoY1+17Y4wXZeKe7uyplAI3FkNQyI5OgBIAjUfFiTPfL1rs0qLpxaabITNbjKl1Sp82tA==",
- "dev": true,
- "hasInstallScript": true,
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/core-js"
- }
- },
- "node_modules/core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
- },
- "node_modules/cosmiconfig": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
- "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
- "dependencies": {
- "@types/parse-json": "^4.0.0",
- "import-fresh": "^3.1.0",
- "parse-json": "^5.0.0",
- "path-type": "^4.0.0",
- "yaml": "^1.7.2"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/cross-spawn": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
- "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
- "dev": true,
- "dependencies": {
- "path-key": "^3.1.0",
- "shebang-command": "^2.0.0",
- "which": "^2.0.1"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/css-mediaquery": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/css-mediaquery/-/css-mediaquery-0.1.2.tgz",
- "integrity": "sha1-aiw3NEkoYYYxxUvTPO3TAdoYvqA="
- },
- "node_modules/cssom": {
- "version": "0.4.4",
- "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz",
- "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==",
- "dev": true
- },
- "node_modules/cssstyle": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz",
- "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==",
- "dev": true,
- "dependencies": {
- "cssom": "~0.3.6"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/cssstyle/node_modules/cssom": {
- "version": "0.3.8",
- "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz",
- "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==",
- "dev": true
- },
- "node_modules/csstype": {
- "version": "3.0.8",
- "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz",
- "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw=="
- },
- "node_modules/damerau-levenshtein": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.7.tgz",
- "integrity": "sha512-VvdQIPGdWP0SqFXghj79Wf/5LArmreyMsGLa6FG6iC4t3j7j5s71TrwWmT/4akbDQIqjfACkLZmjXhA7g2oUZw==",
- "dev": true
- },
- "node_modules/data-urls": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz",
- "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==",
- "dev": true,
- "dependencies": {
- "abab": "^2.0.3",
- "whatwg-mimetype": "^2.3.0",
- "whatwg-url": "^8.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/debug": {
- "version": "4.3.2",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
- "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
- "dev": true,
- "dependencies": {
- "ms": "2.1.2"
- },
- "engines": {
- "node": ">=6.0"
- },
- "peerDependenciesMeta": {
- "supports-color": {
- "optional": true
- }
- }
- },
- "node_modules/decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/decimal.js": {
- "version": "10.3.1",
- "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz",
- "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==",
- "dev": true
- },
- "node_modules/dedent": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
- "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=",
- "dev": true
- },
- "node_modules/deep-is": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
- "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
- "dev": true
- },
- "node_modules/deepmerge": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
- "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/define-properties": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
- "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
- "dependencies": {
- "object-keys": "^1.0.12"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/del": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz",
- "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==",
- "dev": true,
- "dependencies": {
- "@types/glob": "^7.1.1",
- "globby": "^6.1.0",
- "is-path-cwd": "^2.0.0",
- "is-path-in-cwd": "^2.0.0",
- "p-map": "^2.0.0",
- "pify": "^4.0.1",
- "rimraf": "^2.6.3"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
- "dev": true,
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/delegate": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz",
- "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw=="
- },
- "node_modules/detect-newline": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
- "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/diff": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
- "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
- "engines": {
- "node": ">=0.3.1"
- }
- },
- "node_modules/diff-sequences": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.0.6.tgz",
- "integrity": "sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ==",
- "dev": true,
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/direction": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/direction/-/direction-1.0.4.tgz",
- "integrity": "sha512-GYqKi1aH7PJXxdhTeZBFrg8vUBeKXi+cNprXsC1kpJcbcVnV9wBsrOu1cQEdG0WeQwlfHiy3XvnKfIrJ2R0NzQ==",
- "bin": {
- "direction": "cli.js"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/wooorm"
- }
- },
- "node_modules/doctrine": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
- "dev": true,
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/document.contains": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/document.contains/-/document.contains-1.0.2.tgz",
- "integrity": "sha512-YcvYFs15mX8m3AO1QNQy3BlIpSMfNRj3Ujk2BEJxsZG+HZf7/hZ6jr7mDpXrF8q+ff95Vef5yjhiZxm8CGJr6Q==",
- "dependencies": {
- "define-properties": "^1.1.3"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/dom-scroll-into-view": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/dom-scroll-into-view/-/dom-scroll-into-view-1.2.1.tgz",
- "integrity": "sha1-6PNnMt0ImwIBqI14Fdw/iObWbH4="
- },
- "node_modules/domexception": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz",
- "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==",
- "dev": true,
- "dependencies": {
- "webidl-conversions": "^5.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/domexception/node_modules/webidl-conversions": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz",
- "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/dompurify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.3.0.tgz",
- "integrity": "sha512-VV5C6Kr53YVHGOBKO/F86OYX6/iLTw2yVSI721gKetxpHCK/V5TaLEf9ODjRgl1KLSWRMY6cUhAbv/c+IUnwQw=="
- },
- "node_modules/downloadjs": {
- "version": "1.4.7",
- "resolved": "https://registry.npmjs.org/downloadjs/-/downloadjs-1.4.7.tgz",
- "integrity": "sha1-9p+W+UDg0FU9rCkROYZaPNAQHjw="
- },
- "node_modules/downshift": {
- "version": "6.1.3",
- "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.3.tgz",
- "integrity": "sha512-RA1MuaNcTbt0j+sVLhSs8R2oZbBXYAtdQP/V+uHhT3DoDteZzJPjlC+LQVm9T07Wpvo84QXaZtUCePLDTDwGXg==",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "compute-scroll-into-view": "^1.0.17",
- "prop-types": "^15.7.2",
- "react-is": "^17.0.2"
- },
- "peerDependencies": {
- "react": ">=16.12.0"
- }
- },
- "node_modules/electron-to-chromium": {
- "version": "1.3.785",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.785.tgz",
- "integrity": "sha512-WmCgAeURsMFiyoJ646eUaJQ7GNfvMRLXo+GamUyKVNEM4MqTAsXyC0f38JEB4N3BtbD0tlAKozGP5E2T9K3YGg==",
- "dev": true
- },
- "node_modules/emittery": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz",
- "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/emittery?sponsor=1"
- }
- },
- "node_modules/emoji-regex": {
- "version": "9.2.2",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
- "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
- "dev": true
- },
- "node_modules/emojis-list": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
- "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
- "dev": true,
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/encoding": {
- "version": "0.1.13",
- "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
- "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
- "dependencies": {
- "iconv-lite": "^0.6.2"
- }
- },
- "node_modules/enhanced-resolve": {
- "version": "5.8.2",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.2.tgz",
- "integrity": "sha512-F27oB3WuHDzvR2DOGNTaYy0D5o0cnrv8TeI482VM4kYgQd/FT9lUQwuNsJ0oOHtBUq7eiW5ytqzp7nBFknL+GA==",
- "dev": true,
- "dependencies": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/enquirer": {
- "version": "2.3.6",
- "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
- "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==",
- "dev": true,
- "dependencies": {
- "ansi-colors": "^4.1.1"
- },
- "engines": {
- "node": ">=8.6"
- }
- },
- "node_modules/envinfo": {
- "version": "7.8.1",
- "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz",
- "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==",
- "dev": true,
- "bin": {
- "envinfo": "dist/cli.js"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/equivalent-key-map": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/equivalent-key-map/-/equivalent-key-map-0.2.2.tgz",
- "integrity": "sha512-xvHeyCDbZzkpN4VHQj/n+j2lOwL0VWszG30X4cOrc9Y7Tuo2qCdZK/0AMod23Z5dCtNUbaju6p0rwOhHUk05ew=="
- },
- "node_modules/error-ex": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
- "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
- "dependencies": {
- "is-arrayish": "^0.2.1"
- }
- },
- "node_modules/es-abstract": {
- "version": "1.18.3",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz",
- "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "es-to-primitive": "^1.2.1",
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.2",
- "is-callable": "^1.2.3",
- "is-negative-zero": "^2.0.1",
- "is-regex": "^1.1.3",
- "is-string": "^1.0.6",
- "object-inspect": "^1.10.3",
- "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"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/es-module-lexer": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.7.1.tgz",
- "integrity": "sha512-MgtWFl5No+4S3TmhDmCz2ObFGm6lEpTnzbQi+Dd+pw4mlTIZTmM2iAs5gRlmx5zS9luzobCSBSI90JM/1/JgOw==",
- "dev": true
- },
- "node_modules/es-to-primitive": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
- "dependencies": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/escalade": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
- "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/escodegen": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz",
- "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==",
- "dev": true,
- "dependencies": {
- "esprima": "^4.0.1",
- "estraverse": "^5.2.0",
- "esutils": "^2.0.2",
- "optionator": "^0.8.1"
- },
- "bin": {
- "escodegen": "bin/escodegen.js",
- "esgenerate": "bin/esgenerate.js"
- },
- "engines": {
- "node": ">=6.0"
- },
- "optionalDependencies": {
- "source-map": "~0.6.1"
- }
- },
- "node_modules/escodegen/node_modules/estraverse": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
- "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
- "dev": true,
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/escodegen/node_modules/levn": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
- "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
- "dev": true,
- "dependencies": {
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/escodegen/node_modules/optionator": {
- "version": "0.8.3",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
- "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
- "dev": true,
- "dependencies": {
- "deep-is": "~0.1.3",
- "fast-levenshtein": "~2.0.6",
- "levn": "~0.3.0",
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2",
- "word-wrap": "~1.2.3"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/escodegen/node_modules/prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
- "dev": true,
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/escodegen/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "optional": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/escodegen/node_modules/type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
- "dev": true,
- "dependencies": {
- "prelude-ls": "~1.1.2"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/eslint": {
- "version": "7.31.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.31.0.tgz",
- "integrity": "sha512-vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA==",
- "dev": true,
- "dependencies": {
- "@babel/code-frame": "7.12.11",
- "@eslint/eslintrc": "^0.4.3",
- "@humanwhocodes/config-array": "^0.5.0",
- "ajv": "^6.10.0",
- "chalk": "^4.0.0",
- "cross-spawn": "^7.0.2",
- "debug": "^4.0.1",
- "doctrine": "^3.0.0",
- "enquirer": "^2.3.5",
- "escape-string-regexp": "^4.0.0",
- "eslint-scope": "^5.1.1",
- "eslint-utils": "^2.1.0",
- "eslint-visitor-keys": "^2.0.0",
- "espree": "^7.3.1",
- "esquery": "^1.4.0",
- "esutils": "^2.0.2",
- "fast-deep-equal": "^3.1.3",
- "file-entry-cache": "^6.0.1",
- "functional-red-black-tree": "^1.0.1",
- "glob-parent": "^5.1.2",
- "globals": "^13.6.0",
- "ignore": "^4.0.6",
- "import-fresh": "^3.0.0",
- "imurmurhash": "^0.1.4",
- "is-glob": "^4.0.0",
- "js-yaml": "^3.13.1",
- "json-stable-stringify-without-jsonify": "^1.0.1",
- "levn": "^0.4.1",
- "lodash.merge": "^4.6.2",
- "minimatch": "^3.0.4",
- "natural-compare": "^1.4.0",
- "optionator": "^0.9.1",
- "progress": "^2.0.0",
- "regexpp": "^3.1.0",
- "semver": "^7.2.1",
- "strip-ansi": "^6.0.0",
- "strip-json-comments": "^3.1.0",
- "table": "^6.0.9",
- "text-table": "^0.2.0",
- "v8-compile-cache": "^2.0.3"
- },
- "bin": {
- "eslint": "bin/eslint.js"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/eslint-config-airbnb": {
- "version": "18.2.1",
- "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-18.2.1.tgz",
- "integrity": "sha512-glZNDEZ36VdlZWoxn/bUR1r/sdFKPd1mHPbqUtkctgNG4yT2DLLtJ3D+yCV+jzZCc2V1nBVkmdknOJBZ5Hc0fg==",
- "dev": true,
- "dependencies": {
- "eslint-config-airbnb-base": "^14.2.1",
- "object.assign": "^4.1.2",
- "object.entries": "^1.1.2"
- },
- "engines": {
- "node": ">= 6"
- },
- "peerDependencies": {
- "eslint": "^5.16.0 || ^6.8.0 || ^7.2.0",
- "eslint-plugin-import": "^2.22.1",
- "eslint-plugin-jsx-a11y": "^6.4.1",
- "eslint-plugin-react": "^7.21.5",
- "eslint-plugin-react-hooks": "^4 || ^3 || ^2.3.0 || ^1.7.0"
- }
- },
- "node_modules/eslint-config-airbnb-base": {
- "version": "14.2.1",
- "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.2.1.tgz",
- "integrity": "sha512-GOrQyDtVEc1Xy20U7vsB2yAoB4nBlfH5HZJeatRXHleO+OS5Ot+MWij4Dpltw4/DyIkqUfqz1epfhVR5XWWQPA==",
- "dev": true,
- "dependencies": {
- "confusing-browser-globals": "^1.0.10",
- "object.assign": "^4.1.2",
- "object.entries": "^1.1.2"
- },
- "engines": {
- "node": ">= 6"
- },
- "peerDependencies": {
- "eslint": "^5.16.0 || ^6.8.0 || ^7.2.0",
- "eslint-plugin-import": "^2.22.1"
- }
- },
- "node_modules/eslint-import-resolver-node": {
- "version": "0.3.4",
- "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz",
- "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==",
- "dev": true,
- "dependencies": {
- "debug": "^2.6.9",
- "resolve": "^1.13.1"
- }
- },
- "node_modules/eslint-import-resolver-node/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/eslint-import-resolver-node/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- },
- "node_modules/eslint-module-utils": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz",
- "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==",
- "dev": true,
- "dependencies": {
- "debug": "^3.2.7",
- "pkg-dir": "^2.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/eslint-module-utils/node_modules/debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dev": true,
- "dependencies": {
- "ms": "^2.1.1"
- }
- },
- "node_modules/eslint-plugin-import": {
- "version": "2.23.4",
- "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz",
- "integrity": "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==",
- "dev": true,
- "dependencies": {
- "array-includes": "^3.1.3",
- "array.prototype.flat": "^1.2.4",
- "debug": "^2.6.9",
- "doctrine": "^2.1.0",
- "eslint-import-resolver-node": "^0.3.4",
- "eslint-module-utils": "^2.6.1",
- "find-up": "^2.0.0",
- "has": "^1.0.3",
- "is-core-module": "^2.4.0",
- "minimatch": "^3.0.4",
- "object.values": "^1.1.3",
- "pkg-up": "^2.0.0",
- "read-pkg-up": "^3.0.0",
- "resolve": "^1.20.0",
- "tsconfig-paths": "^3.9.0"
- },
- "engines": {
- "node": ">=4"
- },
- "peerDependencies": {
- "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/doctrine": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
- "dev": true,
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
- "dev": true,
- "dependencies": {
- "locate-path": "^2.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
- "dev": true,
- "dependencies": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- },
- "node_modules/eslint-plugin-import/node_modules/p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "dev": true,
- "dependencies": {
- "p-try": "^1.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
- "dev": true,
- "dependencies": {
- "p-limit": "^1.1.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/eslint-plugin-jsx-a11y": {
- "version": "6.4.1",
- "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.4.1.tgz",
- "integrity": "sha512-0rGPJBbwHoGNPU73/QCLP/vveMlM1b1Z9PponxO87jfr6tuH5ligXbDT6nHSSzBC8ovX2Z+BQu7Bk5D/Xgq9zg==",
- "dev": true,
- "dependencies": {
- "@babel/runtime": "^7.11.2",
- "aria-query": "^4.2.2",
- "array-includes": "^3.1.1",
- "ast-types-flow": "^0.0.7",
- "axe-core": "^4.0.2",
- "axobject-query": "^2.2.0",
- "damerau-levenshtein": "^1.0.6",
- "emoji-regex": "^9.0.0",
- "has": "^1.0.3",
- "jsx-ast-utils": "^3.1.0",
- "language-tags": "^1.0.5"
- },
- "engines": {
- "node": ">=4.0"
- },
- "peerDependencies": {
- "eslint": "^3 || ^4 || ^5 || ^6 || ^7"
- }
- },
- "node_modules/eslint-plugin-react": {
- "version": "7.24.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.24.0.tgz",
- "integrity": "sha512-KJJIx2SYx7PBx3ONe/mEeMz4YE0Lcr7feJTCMyyKb/341NcjuAgim3Acgan89GfPv7nxXK2+0slu0CWXYM4x+Q==",
- "dev": true,
- "dependencies": {
- "array-includes": "^3.1.3",
- "array.prototype.flatmap": "^1.2.4",
- "doctrine": "^2.1.0",
- "has": "^1.0.3",
- "jsx-ast-utils": "^2.4.1 || ^3.0.0",
- "minimatch": "^3.0.4",
- "object.entries": "^1.1.4",
- "object.fromentries": "^2.0.4",
- "object.values": "^1.1.4",
- "prop-types": "^15.7.2",
- "resolve": "^2.0.0-next.3",
- "string.prototype.matchall": "^4.0.5"
- },
- "engines": {
- "node": ">=4"
- },
- "peerDependencies": {
- "eslint": "^3 || ^4 || ^5 || ^6 || ^7"
- }
- },
- "node_modules/eslint-plugin-react-hooks": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz",
- "integrity": "sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "peerDependencies": {
- "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0"
- }
- },
- "node_modules/eslint-plugin-react/node_modules/doctrine": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
- "dev": true,
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/eslint-plugin-react/node_modules/resolve": {
- "version": "2.0.0-next.3",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.3.tgz",
- "integrity": "sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==",
- "dev": true,
- "dependencies": {
- "is-core-module": "^2.2.0",
- "path-parse": "^1.0.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/eslint-scope": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
- "dev": true,
- "dependencies": {
- "esrecurse": "^4.3.0",
- "estraverse": "^4.1.1"
- },
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/eslint-utils": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz",
- "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==",
- "dev": true,
- "dependencies": {
- "eslint-visitor-keys": "^1.1.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/mysticatea"
- }
- },
- "node_modules/eslint-utils/node_modules/eslint-visitor-keys": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
- "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/eslint-visitor-keys": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
- "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
- "dev": true,
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/eslint/node_modules/@babel/code-frame": {
- "version": "7.12.11",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz",
- "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==",
- "dev": true,
- "dependencies": {
- "@babel/highlight": "^7.10.4"
- }
- },
- "node_modules/eslint/node_modules/globals": {
- "version": "13.10.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz",
- "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==",
- "dev": true,
- "dependencies": {
- "type-fest": "^0.20.2"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/eslint/node_modules/semver": {
- "version": "7.3.5",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
- "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
- "dev": true,
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/eslint/node_modules/type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/espree": {
- "version": "7.3.1",
- "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz",
- "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==",
- "dev": true,
- "dependencies": {
- "acorn": "^7.4.0",
- "acorn-jsx": "^5.3.1",
- "eslint-visitor-keys": "^1.3.0"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- }
- },
- "node_modules/espree/node_modules/eslint-visitor-keys": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
- "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/esprima": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
- "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
- "dev": true,
- "bin": {
- "esparse": "bin/esparse.js",
- "esvalidate": "bin/esvalidate.js"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/esquery": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
- "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
- "dev": true,
- "dependencies": {
- "estraverse": "^5.1.0"
- },
- "engines": {
- "node": ">=0.10"
- }
- },
- "node_modules/esquery/node_modules/estraverse": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
- "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
- "dev": true,
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/esrecurse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
- "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
- "dev": true,
- "dependencies": {
- "estraverse": "^5.2.0"
- },
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/esrecurse/node_modules/estraverse": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
- "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
- "dev": true,
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/estraverse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
- "dev": true,
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/esutils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
- "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true,
- "engines": {
- "node": ">=0.8.x"
- }
- },
- "node_modules/execa": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
- "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==",
- "dev": true,
- "dependencies": {
- "cross-spawn": "^7.0.3",
- "get-stream": "^6.0.0",
- "human-signals": "^2.1.0",
- "is-stream": "^2.0.0",
- "merge-stream": "^2.0.0",
- "npm-run-path": "^4.0.1",
- "onetime": "^5.1.2",
- "signal-exit": "^3.0.3",
- "strip-final-newline": "^2.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/execa?sponsor=1"
- }
- },
- "node_modules/exit": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
- "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
- "dev": true,
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/expect": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/expect/-/expect-27.0.6.tgz",
- "integrity": "sha512-psNLt8j2kwg42jGBDSfAlU49CEZxejN1f1PlANWDZqIhBOVU/c2Pm888FcjWJzFewhIsNWfZJeLjUjtKGiPuSw==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "ansi-styles": "^5.0.0",
- "jest-get-type": "^27.0.6",
- "jest-matcher-utils": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-regex-util": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/expect/node_modules/ansi-styles": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
- "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/fast-average-color": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/fast-average-color/-/fast-average-color-4.3.0.tgz",
- "integrity": "sha512-k8FXd6+JeXoItmdNqB3hMwFgArryjdYBLuzEM8fRY/oztd/051yhSHU6GUrMOfIQU9dDHyFDcIAkGrQKlYtpDA==",
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
- "dev": true
- },
- "node_modules/fast-json-stable-stringify": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
- "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
- "dev": true
- },
- "node_modules/fast-levenshtein": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
- "dev": true
- },
- "node_modules/fast-memoize": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/fast-memoize/-/fast-memoize-2.5.2.tgz",
- "integrity": "sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw=="
- },
- "node_modules/fastest-levenshtein": {
- "version": "1.0.12",
- "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz",
- "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==",
- "dev": true
- },
- "node_modules/fb-watchman": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz",
- "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==",
- "dev": true,
- "dependencies": {
- "bser": "2.1.1"
- }
- },
- "node_modules/file-entry-cache": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
- "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
- "dev": true,
- "dependencies": {
- "flat-cache": "^3.0.4"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- }
- },
- "node_modules/file-saver": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz",
- "integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA=="
- },
- "node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
- "dev": true,
- "dependencies": {
- "to-regex-range": "^5.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/find-cache-dir": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz",
- "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==",
- "dev": true,
- "dependencies": {
- "commondir": "^1.0.1",
- "make-dir": "^3.0.2",
- "pkg-dir": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/avajs/find-cache-dir?sponsor=1"
- }
- },
- "node_modules/find-cache-dir/node_modules/pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "dev": true,
- "dependencies": {
- "find-up": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/find-root": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
- "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng=="
- },
- "node_modules/find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "dependencies": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/flat-cache": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
- "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
- "dev": true,
- "dependencies": {
- "flatted": "^3.1.0",
- "rimraf": "^3.0.2"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- }
- },
- "node_modules/flat-cache/node_modules/rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/flatted": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.1.tgz",
- "integrity": "sha512-OMQjaErSFHmHqZe+PSidH5n8j3O0F2DdnVh8JB4j4eUQ2k6KvB0qGfrKIhapvez5JerBbmWkaLYUYWISaESoXg==",
- "dev": true
- },
- "node_modules/form-data": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz",
- "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==",
- "dev": true,
- "dependencies": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.8",
- "mime-types": "^2.1.12"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/fraction.js": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.1.1.tgz",
- "integrity": "sha512-MHOhvvxHTfRFpF1geTK9czMIZ6xclsEor2wkIGYYq+PxcQqT7vStJqjhe6S1TenZrMZzo+wlqOufBDVepUEgPg==",
- "dev": true,
- "engines": {
- "node": "*"
- },
- "funding": {
- "type": "patreon",
- "url": "https://www.patreon.com/infusion"
- }
- },
- "node_modules/framer-motion": {
- "version": "4.1.17",
- "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-4.1.17.tgz",
- "integrity": "sha512-thx1wvKzblzbs0XaK2X0G1JuwIdARcoNOW7VVwjO8BUltzXPyONGAElLu6CiCScsOQRI7FIk/45YTFtJw5Yozw==",
- "dependencies": {
- "framesync": "5.3.0",
- "hey-listen": "^1.0.8",
- "popmotion": "9.3.6",
- "style-value-types": "4.1.4",
- "tslib": "^2.1.0"
- },
- "optionalDependencies": {
- "@emotion/is-prop-valid": "^0.8.2"
- },
- "peerDependencies": {
- "react": ">=16.8 || ^17.0.0",
- "react-dom": ">=16.8 || ^17.0.0"
- }
- },
- "node_modules/framer-motion/node_modules/@emotion/is-prop-valid": {
- "version": "0.8.8",
- "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz",
- "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==",
- "optional": true,
- "dependencies": {
- "@emotion/memoize": "0.7.4"
- }
- },
- "node_modules/framer-motion/node_modules/@emotion/memoize": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz",
- "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==",
- "optional": true
- },
- "node_modules/framesync": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/framesync/-/framesync-5.3.0.tgz",
- "integrity": "sha512-oc5m68HDO/tuK2blj7ZcdEBRx3p1PjrgHazL8GYEpvULhrtGIFbQArN6cQS2QhW8mitffaB+VYzMjDqBxxQeoA==",
- "dependencies": {
- "tslib": "^2.1.0"
- }
- },
- "node_modules/fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
- "dev": true
- },
- "node_modules/fsevents": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
- "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
- "dev": true,
- "hasInstallScript": true,
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
- }
- },
- "node_modules/function-bind": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
- },
- "node_modules/function.prototype.name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.4.tgz",
- "integrity": "sha512-iqy1pIotY/RmhdFZygSSlW0wko2yxkSCKqsuv4pr8QESohpYyG/Z7B/XXvPRKTJS//960rgguE5mSRUsDdaJrQ==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.0-next.2",
- "functions-have-names": "^1.2.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/functional-red-black-tree": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
- "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
- "dev": true
- },
- "node_modules/functions-have-names": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.2.tgz",
- "integrity": "sha512-bLgc3asbWdwPbx2mNk2S49kmJCuQeu0nfmaOgbs8WIyzzkw3r4htszdIi9Q9EMezDPTYuJx2wvjZ/EwgAthpnA==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/gensync": {
- "version": "1.0.0-beta.2",
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
- "dev": true,
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "engines": {
- "node": "6.* || 8.* || >= 10.*"
- }
- },
- "node_modules/get-intrinsic": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
- "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
- "dependencies": {
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/get-package-type": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
- "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
- "dev": true,
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/get-stream": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
- "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/gettext-parser": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.4.0.tgz",
- "integrity": "sha512-sedZYLHlHeBop/gZ1jdg59hlUEcpcZJofLq2JFwJT1zTqAU3l2wFv6IsuwFHGqbiT9DWzMUW4/em2+hspnmMMA==",
- "dependencies": {
- "encoding": "^0.1.12",
- "safe-buffer": "^5.1.1"
- }
- },
- "node_modules/glob": {
- "version": "7.1.7",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
- "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
- "dev": true,
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/glob-to-regexp": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
- "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
- "dev": true
- },
- "node_modules/global-cache": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/global-cache/-/global-cache-1.2.1.tgz",
- "integrity": "sha512-EOeUaup5DgWKlCMhA9YFqNRIlZwoxt731jCh47WBV9fQqHgXhr3Fa55hfgIUqilIcPsfdNKN7LHjrNY+Km40KA==",
- "dependencies": {
- "define-properties": "^1.1.2",
- "is-symbol": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/globals": {
- "version": "11.12.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
- "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/globby": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
- "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=",
- "dev": true,
- "dependencies": {
- "array-union": "^1.0.1",
- "glob": "^7.0.3",
- "object-assign": "^4.0.1",
- "pify": "^2.0.0",
- "pinkie-promise": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/globby/node_modules/pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/good-listener": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz",
- "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=",
- "dependencies": {
- "delegate": "^3.1.2"
- }
- },
- "node_modules/graceful-fs": {
- "version": "4.2.6",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz",
- "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==",
- "dev": true
- },
- "node_modules/gradient-parser": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-0.1.5.tgz",
- "integrity": "sha1-DH4heVWeXOfY1x9EI6+TcQCyJIw=",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/has": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
- "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
- "dependencies": {
- "function-bind": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4.0"
- }
- },
- "node_modules/has-bigints": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz",
- "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/has-symbols": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz",
- "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/hey-listen": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/hey-listen/-/hey-listen-1.0.8.tgz",
- "integrity": "sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q=="
- },
- "node_modules/highlight-words-core": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/highlight-words-core/-/highlight-words-core-1.2.2.tgz",
- "integrity": "sha512-BXUKIkUuh6cmmxzi5OIbUJxrG8OAk2MqoL1DtO3Wo9D2faJg2ph5ntyuQeLqaHJmzER6H5tllCDA9ZnNe9BVGg=="
- },
- "node_modules/hoist-non-react-statics": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
- "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
- "dependencies": {
- "react-is": "^16.7.0"
- }
- },
- "node_modules/hoist-non-react-statics/node_modules/react-is": {
- "version": "16.13.1",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
- },
- "node_modules/hosted-git-info": {
- "version": "2.8.9",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
- "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
- "dev": true
- },
- "node_modules/hpq": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/hpq/-/hpq-1.3.0.tgz",
- "integrity": "sha512-fvYTvdCFOWQupGxqkahrkA+ERBuMdzkxwtUdKrxR6rmMd4Pfl+iZ1QiQYoaZ0B/v0y59MOMnz3XFUWbT50/NWA=="
- },
- "node_modules/html-encoding-sniffer": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz",
- "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==",
- "dev": true,
- "dependencies": {
- "whatwg-encoding": "^1.0.5"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/html-escaper": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
- "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
- "dev": true
- },
- "node_modules/http-proxy-agent": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz",
- "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==",
- "dev": true,
- "dependencies": {
- "@tootallnate/once": "1",
- "agent-base": "6",
- "debug": "4"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/https-proxy-agent": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz",
- "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==",
- "dev": true,
- "dependencies": {
- "agent-base": "6",
- "debug": "4"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/human-signals": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
- "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
- "dev": true,
- "engines": {
- "node": ">=10.17.0"
- }
- },
- "node_modules/iconv-lite": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
- "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
- "dependencies": {
- "safer-buffer": ">= 2.1.2 < 3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/ieee754": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
- "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ]
- },
- "node_modules/ignore": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
- "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
- "dev": true,
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/immediate": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",
- "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps="
- },
- "node_modules/import-fresh": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
- "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
- "dependencies": {
- "parent-module": "^1.0.0",
- "resolve-from": "^4.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/import-fresh/node_modules/resolve-from": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
- "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/import-local": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz",
- "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==",
- "dev": true,
- "dependencies": {
- "pkg-dir": "^4.2.0",
- "resolve-cwd": "^3.0.0"
- },
- "bin": {
- "import-local-fixture": "fixtures/cli.js"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/import-local/node_modules/pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "dev": true,
- "dependencies": {
- "find-up": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/imurmurhash": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
- "dev": true,
- "engines": {
- "node": ">=0.8.19"
- }
- },
- "node_modules/inflight": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
- "dev": true,
- "dependencies": {
- "once": "^1.3.0",
- "wrappy": "1"
- }
- },
- "node_modules/inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
- },
- "node_modules/internal-slot": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz",
- "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==",
- "dev": true,
- "dependencies": {
- "get-intrinsic": "^1.1.0",
- "has": "^1.0.3",
- "side-channel": "^1.0.4"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/interpret": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz",
- "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==",
- "dev": true,
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/is-arrayish": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
- "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0="
- },
- "node_modules/is-bigint": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz",
- "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-boolean-object": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz",
- "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==",
- "dependencies": {
- "call-bind": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-callable": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz",
- "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-ci": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.0.tgz",
- "integrity": "sha512-kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ==",
- "dev": true,
- "dependencies": {
- "ci-info": "^3.1.1"
- },
- "bin": {
- "is-ci": "bin.js"
- }
- },
- "node_modules/is-core-module": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz",
- "integrity": "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==",
- "dependencies": {
- "has": "^1.0.3"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-date-object": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz",
- "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-fullwidth-code-point": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-generator-fn": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz",
- "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/is-glob": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
- "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
- "dev": true,
- "dependencies": {
- "is-extglob": "^2.1.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-negative-zero": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz",
- "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true,
- "engines": {
- "node": ">=0.12.0"
- }
- },
- "node_modules/is-number-object": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz",
- "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-path-cwd": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz",
- "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/is-path-in-cwd": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz",
- "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==",
- "dev": true,
- "dependencies": {
- "is-path-inside": "^2.1.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/is-path-inside": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz",
- "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==",
- "dev": true,
- "dependencies": {
- "path-is-inside": "^1.0.2"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dev": true,
- "dependencies": {
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-potential-custom-element-name": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz",
- "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==",
- "dev": true
- },
- "node_modules/is-promise": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz",
- "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ=="
- },
- "node_modules/is-regex": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz",
- "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "has-symbols": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
- "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-string": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz",
- "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-symbol": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
- "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
- "dependencies": {
- "has-symbols": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-touch-device": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-touch-device/-/is-touch-device-1.0.1.tgz",
- "integrity": "sha512-LAYzo9kMT1b2p19L/1ATGt2XcSilnzNlyvq6c0pbPRVisLbAPpLqr53tIJS00kvrTkj0HtR8U7+u8X0yR8lPSw=="
- },
- "node_modules/is-typedarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
- "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
- "dev": true
- },
- "node_modules/isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
- },
- "node_modules/isexe": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
- "dev": true
- },
- "node_modules/isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/istanbul-lib-coverage": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz",
- "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-instrument": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz",
- "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==",
- "dev": true,
- "dependencies": {
- "@babel/core": "^7.7.5",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-coverage": "^3.0.0",
- "semver": "^6.3.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-report": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
- "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==",
- "dev": true,
- "dependencies": {
- "istanbul-lib-coverage": "^3.0.0",
- "make-dir": "^3.0.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-source-maps": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz",
- "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==",
- "dev": true,
- "dependencies": {
- "debug": "^4.1.1",
- "istanbul-lib-coverage": "^3.0.0",
- "source-map": "^0.6.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-source-maps/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/istanbul-reports": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz",
- "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==",
- "dev": true,
- "dependencies": {
- "html-escaper": "^2.0.0",
- "istanbul-lib-report": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/jest": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest/-/jest-27.0.6.tgz",
- "integrity": "sha512-EjV8aETrsD0wHl7CKMibKwQNQc3gIRBXlTikBmmHUeVMKaPFxdcUIBfoDqTSXDoGJIivAYGqCWVlzCSaVjPQsA==",
- "dev": true,
- "dependencies": {
- "@jest/core": "^27.0.6",
- "import-local": "^3.0.2",
- "jest-cli": "^27.0.6"
- },
- "bin": {
- "jest": "bin/jest.js"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/jest-changed-files": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.0.6.tgz",
- "integrity": "sha512-BuL/ZDauaq5dumYh5y20sn4IISnf1P9A0TDswTxUi84ORGtVa86ApuBHqICL0vepqAnZiY6a7xeSPWv2/yy4eA==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "execa": "^5.0.0",
- "throat": "^6.0.1"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-circus": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.0.6.tgz",
- "integrity": "sha512-OJlsz6BBeX9qR+7O9lXefWoc2m9ZqcZ5Ohlzz0pTEAG4xMiZUJoacY8f4YDHxgk0oKYxj277AfOk9w6hZYvi1Q==",
- "dev": true,
- "dependencies": {
- "@jest/environment": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "co": "^4.6.0",
- "dedent": "^0.7.0",
- "expect": "^27.0.6",
- "is-generator-fn": "^2.0.0",
- "jest-each": "^27.0.6",
- "jest-matcher-utils": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-runtime": "^27.0.6",
- "jest-snapshot": "^27.0.6",
- "jest-util": "^27.0.6",
- "pretty-format": "^27.0.6",
- "slash": "^3.0.0",
- "stack-utils": "^2.0.3",
- "throat": "^6.0.1"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-cli": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.0.6.tgz",
- "integrity": "sha512-qUUVlGb9fdKir3RDE+B10ULI+LQrz+MCflEH2UJyoUjoHHCbxDrMxSzjQAPUMsic4SncI62ofYCcAvW6+6rhhg==",
- "dev": true,
- "dependencies": {
- "@jest/core": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/types": "^27.0.6",
- "chalk": "^4.0.0",
- "exit": "^0.1.2",
- "graceful-fs": "^4.2.4",
- "import-local": "^3.0.2",
- "jest-config": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-validate": "^27.0.6",
- "prompts": "^2.0.1",
- "yargs": "^16.0.3"
- },
- "bin": {
- "jest": "bin/jest.js"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/jest-config": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.0.6.tgz",
- "integrity": "sha512-JZRR3I1Plr2YxPBhgqRspDE2S5zprbga3swYNrvY3HfQGu7p/GjyLOqwrYad97tX3U3mzT53TPHVmozacfP/3w==",
- "dev": true,
- "dependencies": {
- "@babel/core": "^7.1.0",
- "@jest/test-sequencer": "^27.0.6",
- "@jest/types": "^27.0.6",
- "babel-jest": "^27.0.6",
- "chalk": "^4.0.0",
- "deepmerge": "^4.2.2",
- "glob": "^7.1.1",
- "graceful-fs": "^4.2.4",
- "is-ci": "^3.0.0",
- "jest-circus": "^27.0.6",
- "jest-environment-jsdom": "^27.0.6",
- "jest-environment-node": "^27.0.6",
- "jest-get-type": "^27.0.6",
- "jest-jasmine2": "^27.0.6",
- "jest-regex-util": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-runner": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-validate": "^27.0.6",
- "micromatch": "^4.0.4",
- "pretty-format": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- },
- "peerDependencies": {
- "ts-node": ">=9.0.0"
- },
- "peerDependenciesMeta": {
- "ts-node": {
- "optional": true
- }
- }
- },
- "node_modules/jest-diff": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.0.6.tgz",
- "integrity": "sha512-Z1mqgkTCSYaFgwTlP/NUiRzdqgxmmhzHY1Tq17zL94morOHfHu3K4bgSgl+CR4GLhpV8VxkuOYuIWnQ9LnFqmg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.0.0",
- "diff-sequences": "^27.0.6",
- "jest-get-type": "^27.0.6",
- "pretty-format": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-docblock": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.0.6.tgz",
- "integrity": "sha512-Fid6dPcjwepTFraz0YxIMCi7dejjJ/KL9FBjPYhBp4Sv1Y9PdhImlKZqYU555BlN4TQKaTc+F2Av1z+anVyGkA==",
- "dev": true,
- "dependencies": {
- "detect-newline": "^3.0.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-each": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.0.6.tgz",
- "integrity": "sha512-m6yKcV3bkSWrUIjxkE9OC0mhBZZdhovIW5ergBYirqnkLXkyEn3oUUF/QZgyecA1cF1QFyTE8bRRl8Tfg1pfLA==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "chalk": "^4.0.0",
- "jest-get-type": "^27.0.6",
- "jest-util": "^27.0.6",
- "pretty-format": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-environment-jsdom": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.0.6.tgz",
- "integrity": "sha512-FvetXg7lnXL9+78H+xUAsra3IeZRTiegA3An01cWeXBspKXUhAwMM9ycIJ4yBaR0L7HkoMPaZsozCLHh4T8fuw==",
- "dev": true,
- "dependencies": {
- "@jest/environment": "^27.0.6",
- "@jest/fake-timers": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "jest-mock": "^27.0.6",
- "jest-util": "^27.0.6",
- "jsdom": "^16.6.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-environment-node": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.0.6.tgz",
- "integrity": "sha512-+Vi6yLrPg/qC81jfXx3IBlVnDTI6kmRr08iVa2hFCWmJt4zha0XW7ucQltCAPhSR0FEKEoJ3i+W4E6T0s9is0w==",
- "dev": true,
- "dependencies": {
- "@jest/environment": "^27.0.6",
- "@jest/fake-timers": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "jest-mock": "^27.0.6",
- "jest-util": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-get-type": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.0.6.tgz",
- "integrity": "sha512-XTkK5exIeUbbveehcSR8w0bhH+c0yloW/Wpl+9vZrjzztCPWrxhHwkIFpZzCt71oRBsgxmuUfxEqOYoZI2macg==",
- "dev": true,
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-haste-map": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.0.6.tgz",
- "integrity": "sha512-4ldjPXX9h8doB2JlRzg9oAZ2p6/GpQUNAeiYXqcpmrKbP0Qev0wdZlxSMOmz8mPOEnt4h6qIzXFLDi8RScX/1w==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "@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.0.6",
- "jest-serializer": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-worker": "^27.0.6",
- "micromatch": "^4.0.4",
- "walker": "^1.0.7"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- },
- "optionalDependencies": {
- "fsevents": "^2.3.2"
- }
- },
- "node_modules/jest-jasmine2": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.0.6.tgz",
- "integrity": "sha512-cjpH2sBy+t6dvCeKBsHpW41mjHzXgsavaFMp+VWRf0eR4EW8xASk1acqmljFtK2DgyIECMv2yCdY41r2l1+4iA==",
- "dev": true,
- "dependencies": {
- "@babel/traverse": "^7.1.0",
- "@jest/environment": "^27.0.6",
- "@jest/source-map": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "co": "^4.6.0",
- "expect": "^27.0.6",
- "is-generator-fn": "^2.0.0",
- "jest-each": "^27.0.6",
- "jest-matcher-utils": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-runtime": "^27.0.6",
- "jest-snapshot": "^27.0.6",
- "jest-util": "^27.0.6",
- "pretty-format": "^27.0.6",
- "throat": "^6.0.1"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-leak-detector": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.0.6.tgz",
- "integrity": "sha512-2/d6n2wlH5zEcdctX4zdbgX8oM61tb67PQt4Xh8JFAIy6LRKUnX528HulkaG6nD5qDl5vRV1NXejCe1XRCH5gQ==",
- "dev": true,
- "dependencies": {
- "jest-get-type": "^27.0.6",
- "pretty-format": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-matcher-utils": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.0.6.tgz",
- "integrity": "sha512-OFgF2VCQx9vdPSYTHWJ9MzFCehs20TsyFi6bIHbk5V1u52zJOnvF0Y/65z3GLZHKRuTgVPY4Z6LVePNahaQ+tA==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.0.0",
- "jest-diff": "^27.0.6",
- "jest-get-type": "^27.0.6",
- "pretty-format": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-message-util": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.0.6.tgz",
- "integrity": "sha512-rBxIs2XK7rGy+zGxgi+UJKP6WqQ+KrBbD1YMj517HYN3v2BG66t3Xan3FWqYHKZwjdB700KiAJ+iES9a0M+ixw==",
- "dev": true,
- "dependencies": {
- "@babel/code-frame": "^7.12.13",
- "@jest/types": "^27.0.6",
- "@types/stack-utils": "^2.0.0",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.4",
- "micromatch": "^4.0.4",
- "pretty-format": "^27.0.6",
- "slash": "^3.0.0",
- "stack-utils": "^2.0.3"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-mock": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.0.6.tgz",
- "integrity": "sha512-lzBETUoK8cSxts2NYXSBWT+EJNzmUVtVVwS1sU9GwE1DLCfGsngg+ZVSIe0yd0ZSm+y791esiuo+WSwpXJQ5Bw==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "@types/node": "*"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-pnp-resolver": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz",
- "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==",
- "dev": true,
- "engines": {
- "node": ">=6"
- },
- "peerDependencies": {
- "jest-resolve": "*"
- },
- "peerDependenciesMeta": {
- "jest-resolve": {
- "optional": true
- }
- }
- },
- "node_modules/jest-regex-util": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.0.6.tgz",
- "integrity": "sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ==",
- "dev": true,
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-resolve": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.0.6.tgz",
- "integrity": "sha512-yKmIgw2LgTh7uAJtzv8UFHGF7Dm7XfvOe/LQ3Txv101fLM8cx2h1QVwtSJ51Q/SCxpIiKfVn6G2jYYMDNHZteA==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "chalk": "^4.0.0",
- "escalade": "^3.1.1",
- "graceful-fs": "^4.2.4",
- "jest-pnp-resolver": "^1.2.2",
- "jest-util": "^27.0.6",
- "jest-validate": "^27.0.6",
- "resolve": "^1.20.0",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-resolve-dependencies": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.0.6.tgz",
- "integrity": "sha512-mg9x9DS3BPAREWKCAoyg3QucCr0n6S8HEEsqRCKSPjPcu9HzRILzhdzY3imsLoZWeosEbJZz6TKasveczzpJZA==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "jest-regex-util": "^27.0.6",
- "jest-snapshot": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-runner": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.0.6.tgz",
- "integrity": "sha512-W3Bz5qAgaSChuivLn+nKOgjqNxM7O/9JOJoKDCqThPIg2sH/d4A/lzyiaFgnb9V1/w29Le11NpzTJSzga1vyYQ==",
- "dev": true,
- "dependencies": {
- "@jest/console": "^27.0.6",
- "@jest/environment": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/transform": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "emittery": "^0.8.1",
- "exit": "^0.1.2",
- "graceful-fs": "^4.2.4",
- "jest-docblock": "^27.0.6",
- "jest-environment-jsdom": "^27.0.6",
- "jest-environment-node": "^27.0.6",
- "jest-haste-map": "^27.0.6",
- "jest-leak-detector": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-runtime": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-worker": "^27.0.6",
- "source-map-support": "^0.5.6",
- "throat": "^6.0.1"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-runtime": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.0.6.tgz",
- "integrity": "sha512-BhvHLRVfKibYyqqEFkybsznKwhrsu7AWx2F3y9G9L95VSIN3/ZZ9vBpm/XCS2bS+BWz3sSeNGLzI3TVQ0uL85Q==",
- "dev": true,
- "dependencies": {
- "@jest/console": "^27.0.6",
- "@jest/environment": "^27.0.6",
- "@jest/fake-timers": "^27.0.6",
- "@jest/globals": "^27.0.6",
- "@jest/source-map": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/transform": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/yargs": "^16.0.0",
- "chalk": "^4.0.0",
- "cjs-module-lexer": "^1.0.0",
- "collect-v8-coverage": "^1.0.0",
- "exit": "^0.1.2",
- "glob": "^7.1.3",
- "graceful-fs": "^4.2.4",
- "jest-haste-map": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-mock": "^27.0.6",
- "jest-regex-util": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-snapshot": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-validate": "^27.0.6",
- "slash": "^3.0.0",
- "strip-bom": "^4.0.0",
- "yargs": "^16.0.3"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-serializer": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.0.6.tgz",
- "integrity": "sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA==",
- "dev": true,
- "dependencies": {
- "@types/node": "*",
- "graceful-fs": "^4.2.4"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-snapshot": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.0.6.tgz",
- "integrity": "sha512-NTHaz8He+ATUagUgE7C/UtFcRoHqR2Gc+KDfhQIyx+VFgwbeEMjeP+ILpUTLosZn/ZtbNdCF5LkVnN/l+V751A==",
- "dev": true,
- "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.0.6",
- "@jest/types": "^27.0.6",
- "@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.0.6",
- "graceful-fs": "^4.2.4",
- "jest-diff": "^27.0.6",
- "jest-get-type": "^27.0.6",
- "jest-haste-map": "^27.0.6",
- "jest-matcher-utils": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-util": "^27.0.6",
- "natural-compare": "^1.4.0",
- "pretty-format": "^27.0.6",
- "semver": "^7.3.2"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-snapshot/node_modules/semver": {
- "version": "7.3.5",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
- "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
- "dev": true,
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/jest-util": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.0.6.tgz",
- "integrity": "sha512-1JjlaIh+C65H/F7D11GNkGDDZtDfMEM8EBXsvd+l/cxtgQ6QhxuloOaiayt89DxUvDarbVhqI98HhgrM1yliFQ==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.4",
- "is-ci": "^3.0.0",
- "picomatch": "^2.2.3"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-validate": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.0.6.tgz",
- "integrity": "sha512-yhZZOaMH3Zg6DC83n60pLmdU1DQE46DW+KLozPiPbSbPhlXXaiUTDlhHQhHFpaqIFRrInko1FHXjTRpjWRuWfA==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "camelcase": "^6.2.0",
- "chalk": "^4.0.0",
- "jest-get-type": "^27.0.6",
- "leven": "^3.1.0",
- "pretty-format": "^27.0.6"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-validate/node_modules/camelcase": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz",
- "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/jest-watcher": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.0.6.tgz",
- "integrity": "sha512-/jIoKBhAP00/iMGnTwUBLgvxkn7vsOweDrOTSPzc7X9uOyUtJIDthQBTI1EXz90bdkrxorUZVhJwiB69gcHtYQ==",
- "dev": true,
- "dependencies": {
- "@jest/test-result": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.0.0",
- "jest-util": "^27.0.6",
- "string-length": "^4.0.1"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/jest-worker": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.6.tgz",
- "integrity": "sha512-qupxcj/dRuA3xHPMUd40gr2EaAurFbkwzOh7wfPaeE9id7hyjURRQoqNfHifHK3XjJU6YJJUQKILGUnwGPEOCA==",
- "dev": true,
- "dependencies": {
- "@types/node": "*",
- "merge-stream": "^2.0.0",
- "supports-color": "^8.0.0"
- },
- "engines": {
- "node": ">= 10.13.0"
- }
- },
- "node_modules/jest-worker/node_modules/supports-color": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
- "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/supports-color?sponsor=1"
- }
- },
- "node_modules/js-tokens": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
- },
- "node_modules/js-yaml": {
- "version": "3.14.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
- "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
- "dev": true,
- "dependencies": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/jsdom": {
- "version": "16.6.0",
- "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.6.0.tgz",
- "integrity": "sha512-Ty1vmF4NHJkolaEmdjtxTfSfkdb8Ywarwf63f+F8/mDD1uLSSWDxDuMiZxiPhwunLrn9LOSVItWj4bLYsLN3Dg==",
- "dev": true,
- "dependencies": {
- "abab": "^2.0.5",
- "acorn": "^8.2.4",
- "acorn-globals": "^6.0.0",
- "cssom": "^0.4.4",
- "cssstyle": "^2.3.0",
- "data-urls": "^2.0.0",
- "decimal.js": "^10.2.1",
- "domexception": "^2.0.1",
- "escodegen": "^2.0.0",
- "form-data": "^3.0.0",
- "html-encoding-sniffer": "^2.0.1",
- "http-proxy-agent": "^4.0.1",
- "https-proxy-agent": "^5.0.0",
- "is-potential-custom-element-name": "^1.0.1",
- "nwsapi": "^2.2.0",
- "parse5": "6.0.1",
- "saxes": "^5.0.1",
- "symbol-tree": "^3.2.4",
- "tough-cookie": "^4.0.0",
- "w3c-hr-time": "^1.0.2",
- "w3c-xmlserializer": "^2.0.0",
- "webidl-conversions": "^6.1.0",
- "whatwg-encoding": "^1.0.5",
- "whatwg-mimetype": "^2.3.0",
- "whatwg-url": "^8.5.0",
- "ws": "^7.4.5",
- "xml-name-validator": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "peerDependencies": {
- "canvas": "^2.5.0"
- },
- "peerDependenciesMeta": {
- "canvas": {
- "optional": true
- }
- }
- },
- "node_modules/jsdom/node_modules/acorn": {
- "version": "8.4.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.1.tgz",
- "integrity": "sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==",
- "dev": true,
- "bin": {
- "acorn": "bin/acorn"
- },
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/jsesc": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
- "dev": true,
- "bin": {
- "jsesc": "bin/jsesc"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/json-parse-better-errors": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
- "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
- "dev": true
- },
- "node_modules/json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
- },
- "node_modules/json-schema-traverse": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
- "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
- "dev": true
- },
- "node_modules/json-stable-stringify-without-jsonify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
- "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
- "dev": true
- },
- "node_modules/json2php": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/json2php/-/json2php-0.0.4.tgz",
- "integrity": "sha1-a9haHdpqXdfpECK7JEA8wbfC7jQ=",
- "dev": true
- },
- "node_modules/json5": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
- "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==",
- "dev": true,
- "dependencies": {
- "minimist": "^1.2.5"
- },
- "bin": {
- "json5": "lib/cli.js"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/jsx-ast-utils": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz",
- "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==",
- "dev": true,
- "dependencies": {
- "array-includes": "^3.1.2",
- "object.assign": "^4.1.2"
- },
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/jszip": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.6.0.tgz",
- "integrity": "sha512-jgnQoG9LKnWO3mnVNBnfhkh0QknICd1FGSrXcgrl67zioyJ4wgx25o9ZqwNtrROSflGBCGYnJfjrIyRIby1OoQ==",
- "dependencies": {
- "lie": "~3.3.0",
- "pako": "~1.0.2",
- "readable-stream": "~2.3.6",
- "set-immediate-shim": "~1.0.1"
- }
- },
- "node_modules/kind-of": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
- "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/kleur": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
- "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/language-subtag-registry": {
- "version": "0.3.21",
- "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz",
- "integrity": "sha512-L0IqwlIXjilBVVYKFT37X9Ih11Um5NEl9cbJIuU/SwP/zEEAbBPOnEeeuxVMf45ydWQRDQN3Nqc96OgbH1K+Pg==",
- "dev": true
- },
- "node_modules/language-tags": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz",
- "integrity": "sha1-0yHbxNowuovzAk4ED6XBRmH5GTo=",
- "dev": true,
- "dependencies": {
- "language-subtag-registry": "~0.3.2"
- }
- },
- "node_modules/leven": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
- "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/levn": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
- "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
- "dev": true,
- "dependencies": {
- "prelude-ls": "^1.2.1",
- "type-check": "~0.4.0"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/lie": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz",
- "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==",
- "dependencies": {
- "immediate": "~3.0.5"
- }
- },
- "node_modules/line-height": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/line-height/-/line-height-0.3.1.tgz",
- "integrity": "sha1-SxIF7d4YKHKl76PI9iCzGHqcVMk=",
- "dependencies": {
- "computed-style": "~0.1.3"
- },
- "engines": {
- "node": ">= 4.0.0"
- }
- },
- "node_modules/lines-and-columns": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz",
- "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA="
- },
- "node_modules/load-json-file": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
- "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=",
- "dev": true,
- "dependencies": {
- "graceful-fs": "^4.1.2",
- "parse-json": "^4.0.0",
- "pify": "^3.0.0",
- "strip-bom": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/load-json-file/node_modules/parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=",
- "dev": true,
- "dependencies": {
- "error-ex": "^1.3.1",
- "json-parse-better-errors": "^1.0.1"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/load-json-file/node_modules/pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/load-json-file/node_modules/strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/loader-runner": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz",
- "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==",
- "dev": true,
- "engines": {
- "node": ">=6.11.5"
- }
- },
- "node_modules/loader-utils": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz",
- "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==",
- "dev": true,
- "dependencies": {
- "big.js": "^5.2.2",
- "emojis-list": "^3.0.0",
- "json5": "^1.0.1"
- },
- "engines": {
- "node": ">=4.0.0"
- }
- },
- "node_modules/loader-utils/node_modules/json5": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
- "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
- "dev": true,
- "dependencies": {
- "minimist": "^1.2.0"
- },
- "bin": {
- "json5": "lib/cli.js"
- }
- },
- "node_modules/locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "dependencies": {
- "p-locate": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/lodash": {
- "version": "4.17.21",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
- "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
- },
- "node_modules/lodash.clonedeep": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
- "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=",
- "dev": true
- },
- "node_modules/lodash.debounce": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
- "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=",
- "dev": true
- },
- "node_modules/lodash.merge": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
- "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
- "dev": true
- },
- "node_modules/lodash.truncate": {
- "version": "4.4.2",
- "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz",
- "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=",
- "dev": true
- },
- "node_modules/loose-envify": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
- "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
- "dependencies": {
- "js-tokens": "^3.0.0 || ^4.0.0"
- },
- "bin": {
- "loose-envify": "cli.js"
- }
- },
- "node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/make-dir": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
- "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
- "dev": true,
- "dependencies": {
- "semver": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/makeerror": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz",
- "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=",
- "dev": true,
- "dependencies": {
- "tmpl": "1.0.x"
- }
- },
- "node_modules/map-values": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/map-values/-/map-values-1.0.1.tgz",
- "integrity": "sha1-douOecAJvytk/ugG4ip7HEGQyZA=",
- "dev": true
- },
- "node_modules/memize": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/memize/-/memize-1.1.0.tgz",
- "integrity": "sha512-K4FcPETOMTwe7KL2LK0orMhpOmWD2wRGwWWpbZy0fyArwsyIKR8YJVz8+efBAh3BO4zPqlSICu4vsLTRRqtFAg=="
- },
- "node_modules/merge-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
- "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
- "dev": true
- },
- "node_modules/micromatch": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
- "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
- "dev": true,
- "dependencies": {
- "braces": "^3.0.1",
- "picomatch": "^2.2.3"
- },
- "engines": {
- "node": ">=8.6"
- }
- },
- "node_modules/micromodal": {
- "version": "0.4.6",
- "resolved": "https://registry.npmjs.org/micromodal/-/micromodal-0.4.6.tgz",
- "integrity": "sha512-2VDso2a22jWPpqwuWT/4RomVpoU3Bl9qF9D01xzwlNp5UVsImeA0gY4nSpF44vqcQtQOtkiMUV9EZkAJSRxBsg==",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/mime-db": {
- "version": "1.48.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz",
- "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==",
- "dev": true,
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/mime-types": {
- "version": "2.1.31",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz",
- "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==",
- "dev": true,
- "dependencies": {
- "mime-db": "1.48.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/mimic-fn": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
- "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/minimatch": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
- "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/minimist": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
- "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
- "dev": true
- },
- "node_modules/moment": {
- "version": "2.29.1",
- "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz",
- "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==",
- "engines": {
- "node": "*"
- }
- },
- "node_modules/moment-timezone": {
- "version": "0.5.33",
- "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.33.tgz",
- "integrity": "sha512-PTc2vcT8K9J5/9rDEPe5czSIKgLoGsH8UNpA4qZTVw0Vd/Uz19geE9abbIOQKaAQFcnQ3v5YEXrbSc5BpshH+w==",
- "dependencies": {
- "moment": ">= 2.9.0"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/mousetrap": {
- "version": "1.6.5",
- "resolved": "https://registry.npmjs.org/mousetrap/-/mousetrap-1.6.5.tgz",
- "integrity": "sha512-QNo4kEepaIBwiT8CDhP98umTetp+JNfQYBWvC1pc6/OAibuXtRcxZ58Qz8skvEHYvURne/7R8T5VoOI7rDsEUA=="
- },
- "node_modules/ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
- "dev": true
- },
- "node_modules/natural-compare": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
- "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
- "dev": true
- },
- "node_modules/neo-async": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
- "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
- "dev": true
- },
- "node_modules/node-int64": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
- "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=",
- "dev": true
- },
- "node_modules/node-modules-regexp": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz",
- "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/node-releases": {
- "version": "1.1.73",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz",
- "integrity": "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==",
- "dev": true
- },
- "node_modules/normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "dev": true,
- "dependencies": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- }
- },
- "node_modules/normalize-package-data/node_modules/semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
- "dev": true,
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/normalize-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
- "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/normalize-range": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
- "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/normalize-wheel": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/normalize-wheel/-/normalize-wheel-1.0.1.tgz",
- "integrity": "sha1-rsiGr/2wRQcNhWRH32Ls+GFG7EU="
- },
- "node_modules/npm-run-path": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
- "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
- "dev": true,
- "dependencies": {
- "path-key": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/nwsapi": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz",
- "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==",
- "dev": true
- },
- "node_modules/object-assign": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
- "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object-filter": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/object-filter/-/object-filter-1.0.2.tgz",
- "integrity": "sha1-rwt5f/6+r4pSxmN87b6IFs/sG8g=",
- "dev": true
- },
- "node_modules/object-inspect": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz",
- "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object-is": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz",
- "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/object.assign": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz",
- "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==",
- "dependencies": {
- "call-bind": "^1.0.0",
- "define-properties": "^1.1.3",
- "has-symbols": "^1.0.1",
- "object-keys": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object.entries": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz",
- "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/object.fromentries": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz",
- "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==",
- "dev": true,
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.0-next.2",
- "has": "^1.0.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object.values": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz",
- "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
- "dev": true,
- "dependencies": {
- "wrappy": "1"
- }
- },
- "node_modules/onetime": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
- "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
- "dev": true,
- "dependencies": {
- "mimic-fn": "^2.1.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/optionator": {
- "version": "0.9.1",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
- "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
- "dev": true,
- "dependencies": {
- "deep-is": "^0.1.3",
- "fast-levenshtein": "^2.0.6",
- "levn": "^0.4.1",
- "prelude-ls": "^1.2.1",
- "type-check": "^0.4.0",
- "word-wrap": "^1.2.3"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/p-each-series": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz",
- "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==",
- "dev": true,
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dependencies": {
- "p-try": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "dependencies": {
- "p-limit": "^2.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/p-map": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz",
- "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/p-try": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
- "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/pako": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
- "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw=="
- },
- "node_modules/parent-module": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
- "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
- "dependencies": {
- "callsites": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/parse-json": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
- "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
- "dependencies": {
- "@babel/code-frame": "^7.0.0",
- "error-ex": "^1.3.1",
- "json-parse-even-better-errors": "^2.3.0",
- "lines-and-columns": "^1.1.6"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/parse5": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
- "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
- "dev": true
- },
- "node_modules/path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/path-is-absolute": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/path-is-inside": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
- "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=",
- "dev": true
- },
- "node_modules/path-key": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
- "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/path-parse": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
- },
- "node_modules/path-type": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
- "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/pegjs": {
- "version": "0.10.0",
- "resolved": "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz",
- "integrity": "sha1-z4uvrm7d/0tafvsYUmnqr0YQ3b0=",
- "bin": {
- "pegjs": "bin/pegjs"
- },
- "engines": {
- "node": ">=0.10"
- }
- },
- "node_modules/phpegjs": {
- "version": "1.0.0-beta7",
- "resolved": "https://registry.npmjs.org/phpegjs/-/phpegjs-1.0.0-beta7.tgz",
- "integrity": "sha1-uLbthQGYB//Q7+ID4AKj5e2LTZQ=",
- "peerDependencies": {
- "pegjs": "^0.10.0"
- }
- },
- "node_modules/picomatch": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz",
- "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==",
- "dev": true,
- "engines": {
- "node": ">=8.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
- "node_modules/pify": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
- "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/pinkie": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
- "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/pinkie-promise": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
- "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
- "dev": true,
- "dependencies": {
- "pinkie": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/pirates": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz",
- "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==",
- "dev": true,
- "dependencies": {
- "node-modules-regexp": "^1.0.0"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/pkg-dir": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz",
- "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=",
- "dev": true,
- "dependencies": {
- "find-up": "^2.1.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-dir/node_modules/find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
- "dev": true,
- "dependencies": {
- "locate-path": "^2.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-dir/node_modules/locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
- "dev": true,
- "dependencies": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-dir/node_modules/p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "dev": true,
- "dependencies": {
- "p-try": "^1.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-dir/node_modules/p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
- "dev": true,
- "dependencies": {
- "p-limit": "^1.1.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-dir/node_modules/p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-dir/node_modules/path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-up": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz",
- "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=",
- "dev": true,
- "dependencies": {
- "find-up": "^2.1.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-up/node_modules/find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
- "dev": true,
- "dependencies": {
- "locate-path": "^2.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-up/node_modules/locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
- "dev": true,
- "dependencies": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-up/node_modules/p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "dev": true,
- "dependencies": {
- "p-try": "^1.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-up/node_modules/p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
- "dev": true,
- "dependencies": {
- "p-limit": "^1.1.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-up/node_modules/p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/pkg-up/node_modules/path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/popmotion": {
- "version": "9.3.6",
- "resolved": "https://registry.npmjs.org/popmotion/-/popmotion-9.3.6.tgz",
- "integrity": "sha512-ZTbXiu6zIggXzIliMi8LGxXBF5ST+wkpXGEjeTUDUOCdSQ356hij/xjeUdv0F8zCQNeqB1+PR5/BB+gC+QLAPw==",
- "dependencies": {
- "framesync": "5.3.0",
- "hey-listen": "^1.0.8",
- "style-value-types": "4.1.4",
- "tslib": "^2.1.0"
- }
- },
- "node_modules/postcss-value-parser": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz",
- "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==",
- "dev": true
- },
- "node_modules/prelude-ls": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
- "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
- "dev": true,
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/pretty-format": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.0.6.tgz",
- "integrity": "sha512-8tGD7gBIENgzqA+UBzObyWqQ5B778VIFZA/S66cclyd5YkFLYs2Js7gxDKf0MXtTc9zcS7t1xhdfcElJ3YIvkQ==",
- "dev": true,
- "dependencies": {
- "@jest/types": "^27.0.6",
- "ansi-regex": "^5.0.0",
- "ansi-styles": "^5.0.0",
- "react-is": "^17.0.1"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/pretty-format/node_modules/ansi-styles": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
- "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/process-nextick-args": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
- "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
- },
- "node_modules/progress": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
- "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
- "dev": true,
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/prompts": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.1.tgz",
- "integrity": "sha512-EQyfIuO2hPDsX1L/blblV+H7I0knhgAd82cVneCwcdND9B8AuCDuRcBH6yIcG4dFzlOUqbazQqwGjx5xmsNLuQ==",
- "dev": true,
- "dependencies": {
- "kleur": "^3.0.3",
- "sisteransi": "^1.0.5"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/prop-types": {
- "version": "15.7.2",
- "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz",
- "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==",
- "dependencies": {
- "loose-envify": "^1.4.0",
- "object-assign": "^4.1.1",
- "react-is": "^16.8.1"
- }
- },
- "node_modules/prop-types-exact": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/prop-types-exact/-/prop-types-exact-1.2.0.tgz",
- "integrity": "sha512-K+Tk3Kd9V0odiXFP9fwDHUYRyvK3Nun3GVyPapSIs5OBkITAm15W0CPFD/YKTkMUAbc0b9CUwRQp2ybiBIq+eA==",
- "dependencies": {
- "has": "^1.0.3",
- "object.assign": "^4.1.0",
- "reflect.ownkeys": "^0.2.0"
- }
- },
- "node_modules/prop-types/node_modules/react-is": {
- "version": "16.13.1",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
- },
- "node_modules/psl": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
- "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==",
- "dev": true
- },
- "node_modules/punycode": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
- "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/queue-microtask": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
- "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ]
- },
- "node_modules/randombytes": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
- "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
- "dev": true,
- "dependencies": {
- "safe-buffer": "^5.1.0"
- }
- },
- "node_modules/re-resizable": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/re-resizable/-/re-resizable-6.9.0.tgz",
- "integrity": "sha512-3cUDG81ylyqI0Pdgle/RHwwRYq0ORZzsUaySOCO8IbEtNyaRtrIHYm/jMQ5pjcNiKCxR3vsSymIQZHwJq4gg2Q==",
- "dependencies": {
- "fast-memoize": "^2.5.1"
- },
- "peerDependencies": {
- "react": "^16.13.1 || ^17.0.0",
- "react-dom": "^16.13.1 || ^17.0.0"
- }
- },
- "node_modules/react": {
- "version": "16.14.0",
- "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz",
- "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==",
- "dependencies": {
- "loose-envify": "^1.1.0",
- "object-assign": "^4.1.1",
- "prop-types": "^15.6.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/react-addons-shallow-compare": {
- "version": "15.6.3",
- "resolved": "https://registry.npmjs.org/react-addons-shallow-compare/-/react-addons-shallow-compare-15.6.3.tgz",
- "integrity": "sha512-EDJbgKTtGRLhr3wiGDXK/+AEJ59yqGS+tKE6mue0aNXT6ZMR7VJbbzIiT6akotmHg1BLj46ElJSb+NBMp80XBg==",
- "dependencies": {
- "object-assign": "^4.1.0"
- }
- },
- "node_modules/react-autosize-textarea": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/react-autosize-textarea/-/react-autosize-textarea-7.1.0.tgz",
- "integrity": "sha512-BHpjCDkuOlllZn3nLazY2F8oYO1tS2jHnWhcjTWQdcKiiMU6gHLNt/fzmqMSyerR0eTdKtfSIqtSeTtghNwS+g==",
- "dependencies": {
- "autosize": "^4.0.2",
- "line-height": "^0.3.1",
- "prop-types": "^15.5.6"
- },
- "peerDependencies": {
- "react": "^0.14.0 || ^15.0.0 || ^16.0.0",
- "react-dom": "^0.14.0 || ^15.0.0 || ^16.0.0"
- }
- },
- "node_modules/react-dates": {
- "version": "17.2.0",
- "resolved": "https://registry.npmjs.org/react-dates/-/react-dates-17.2.0.tgz",
- "integrity": "sha512-RDlerU8DdRRrlYS0MQ7Z9igPWABGLDwz6+ykBNff67RM3Sset2TDqeuOr+R5o00Ggn5U47GeLsGcSDxlZd9cHw==",
- "dependencies": {
- "airbnb-prop-types": "^2.10.0",
- "consolidated-events": "^1.1.1 || ^2.0.0",
- "is-touch-device": "^1.0.1",
- "lodash": "^4.1.1",
- "object.assign": "^4.1.0",
- "object.values": "^1.0.4",
- "prop-types": "^15.6.1",
- "react-addons-shallow-compare": "^15.6.2",
- "react-moment-proptypes": "^1.6.0",
- "react-outside-click-handler": "^1.2.0",
- "react-portal": "^4.1.5",
- "react-with-styles": "^3.2.0",
- "react-with-styles-interface-css": "^4.0.2"
- },
- "peerDependencies": {
- "moment": "^2.18.1",
- "react": "^0.14 || ^15.5.4 || ^16.1.1",
- "react-dom": "^0.14 || ^15.5.4 || ^16.1.1"
- }
- },
- "node_modules/react-dom": {
- "version": "17.0.2",
- "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz",
- "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==",
- "dependencies": {
- "loose-envify": "^1.1.0",
- "object-assign": "^4.1.1",
- "scheduler": "^0.20.2"
- },
- "peerDependencies": {
- "react": "17.0.2"
- }
- },
- "node_modules/react-easy-crop": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/react-easy-crop/-/react-easy-crop-3.5.2.tgz",
- "integrity": "sha512-cwSGO/wk42XDpEyrdAcnQ6OJetVDZZO2ry1i19+kSGZQ750aN06RU9y9z95B5QI6sW3SnaWQRKv5r5GSqVV//g==",
- "dependencies": {
- "normalize-wheel": "^1.0.1",
- "tslib": "2.0.1"
- },
- "peerDependencies": {
- "react": ">=16.4.0",
- "react-dom": ">=16.4.0"
- }
- },
- "node_modules/react-easy-crop/node_modules/tslib": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.1.tgz",
- "integrity": "sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ=="
- },
- "node_modules/react-is": {
- "version": "17.0.2",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
- "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w=="
- },
- "node_modules/react-moment-proptypes": {
- "version": "1.8.1",
- "resolved": "https://registry.npmjs.org/react-moment-proptypes/-/react-moment-proptypes-1.8.1.tgz",
- "integrity": "sha512-Er940DxWoObfIqPrZNfwXKugjxMIuk1LAuEzn23gytzV6hKS/sw108wibi9QubfMN4h+nrlje8eUCSbQRJo2fQ==",
- "dependencies": {
- "moment": ">=1.6.0"
- },
- "peerDependencies": {
- "moment": ">=1.6.0"
- }
- },
- "node_modules/react-native-url-polyfill": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/react-native-url-polyfill/-/react-native-url-polyfill-1.3.0.tgz",
- "integrity": "sha512-w9JfSkvpqqlix9UjDvJjm1EjSt652zVQ6iwCIj1cVVkwXf4jQhQgTNXY6EVTwuAmUjg6BC6k9RHCBynoLFo3IQ==",
- "dependencies": {
- "whatwg-url-without-unicode": "8.0.0-3"
- },
- "peerDependencies": {
- "react-native": "*"
- }
- },
- "node_modules/react-outside-click-handler": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/react-outside-click-handler/-/react-outside-click-handler-1.3.0.tgz",
- "integrity": "sha512-Te/7zFU0oHpAnctl//pP3hEAeobfeHMyygHB8MnjP6sX5OR8KHT1G3jmLsV3U9RnIYo+Yn+peJYWu+D5tUS8qQ==",
- "dependencies": {
- "airbnb-prop-types": "^2.15.0",
- "consolidated-events": "^1.1.1 || ^2.0.0",
- "document.contains": "^1.0.1",
- "object.values": "^1.1.0",
- "prop-types": "^15.7.2"
- },
- "peerDependencies": {
- "react": "^0.14 || >=15",
- "react-dom": "^0.14 || >=15"
- }
- },
- "node_modules/react-portal": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/react-portal/-/react-portal-4.2.1.tgz",
- "integrity": "sha512-fE9kOBagwmTXZ3YGRYb4gcMy+kSA+yLO0xnPankjRlfBv4uCpFXqKPfkpsGQQR15wkZ9EssnvTOl1yMzbkxhPQ==",
- "dependencies": {
- "prop-types": "^15.5.8"
- },
- "peerDependencies": {
- "react": "^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"
- }
- },
- "node_modules/react-resize-aware": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/react-resize-aware/-/react-resize-aware-3.1.0.tgz",
- "integrity": "sha512-bIhHlxVTX7xKUz14ksXMEHjzCZPTpQZKZISY3nbTD273pDKPABGFNFBP6Tr42KECxzC5YQiKpMchjTVJCqaxpA==",
- "peerDependencies": {
- "react": "^16.8.0"
- }
- },
- "node_modules/react-spring": {
- "version": "8.0.27",
- "resolved": "https://registry.npmjs.org/react-spring/-/react-spring-8.0.27.tgz",
- "integrity": "sha512-nDpWBe3ZVezukNRandTeLSPcwwTMjNVu1IDq9qA/AMiUqHuRN4BeSWvKr3eIxxg1vtiYiOLy4FqdfCP5IoP77g==",
- "dependencies": {
- "@babel/runtime": "^7.3.1",
- "prop-types": "^15.5.8"
- },
- "peerDependencies": {
- "react": ">= 16.8.0",
- "react-dom": ">= 16.8.0"
- }
- },
- "node_modules/react-use-gesture": {
- "version": "9.1.3",
- "resolved": "https://registry.npmjs.org/react-use-gesture/-/react-use-gesture-9.1.3.tgz",
- "integrity": "sha512-CdqA2SmS/fj3kkS2W8ZU8wjTbVBAIwDWaRprX7OKaj7HlGwBasGEFggmk5qNklknqk9zK/h8D355bEJFTpqEMg==",
- "peerDependencies": {
- "react": ">= 16.8.0"
- }
- },
- "node_modules/react-with-direction": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/react-with-direction/-/react-with-direction-1.3.1.tgz",
- "integrity": "sha512-aGcM21ZzhqeXFvDCfPj0rVNYuaVXfTz5D3Rbn0QMz/unZe+CCiLHthrjQWO7s6qdfXORgYFtmS7OVsRgSk5LXQ==",
- "dependencies": {
- "airbnb-prop-types": "^2.10.0",
- "brcast": "^2.0.2",
- "deepmerge": "^1.5.2",
- "direction": "^1.0.2",
- "hoist-non-react-statics": "^3.3.0",
- "object.assign": "^4.1.0",
- "object.values": "^1.0.4",
- "prop-types": "^15.6.2"
- },
- "peerDependencies": {
- "react": "^0.14 || ^15 || ^16",
- "react-dom": "^0.14 || ^15 || ^16"
- }
- },
- "node_modules/react-with-direction/node_modules/deepmerge": {
- "version": "1.5.2",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.5.2.tgz",
- "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/react-with-styles": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/react-with-styles/-/react-with-styles-3.2.3.tgz",
- "integrity": "sha512-MTI1UOvMHABRLj5M4WpODfwnveHaip6X7QUMI2x6zovinJiBXxzhA9AJP7MZNaKqg1JRFtHPXZdroUC8KcXwlQ==",
- "dependencies": {
- "hoist-non-react-statics": "^3.2.1",
- "object.assign": "^4.1.0",
- "prop-types": "^15.6.2",
- "react-with-direction": "^1.3.0"
- },
- "peerDependencies": {
- "react": ">=0.14",
- "react-with-direction": "^1.1.0"
- }
- },
- "node_modules/react-with-styles-interface-css": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/react-with-styles-interface-css/-/react-with-styles-interface-css-4.0.3.tgz",
- "integrity": "sha512-wE43PIyjal2dexxyyx4Lhbcb+E42amoYPnkunRZkb9WTA+Z+9LagbyxwsI352NqMdFmghR0opg29dzDO4/YXbw==",
- "dependencies": {
- "array.prototype.flat": "^1.2.1",
- "global-cache": "^1.2.1"
- },
- "peerDependencies": {
- "react-with-styles": "^3.0.0"
- }
- },
- "node_modules/read-pkg": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
- "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=",
- "dev": true,
- "dependencies": {
- "load-json-file": "^4.0.0",
- "normalize-package-data": "^2.3.2",
- "path-type": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz",
- "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=",
- "dev": true,
- "dependencies": {
- "find-up": "^2.0.0",
- "read-pkg": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
- "dev": true,
- "dependencies": {
- "locate-path": "^2.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
- "dev": true,
- "dependencies": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "dev": true,
- "dependencies": {
- "p-try": "^1.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
- "dev": true,
- "dependencies": {
- "p-limit": "^1.1.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg/node_modules/path-type": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
- "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
- "dev": true,
- "dependencies": {
- "pify": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg/node_modules/pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/readable-stream": {
- "version": "2.3.7",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
- "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "node_modules/reakit": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/reakit/-/reakit-1.3.8.tgz",
- "integrity": "sha512-8SVejx6FUaFi2+Q9eXoDAd4wWi/xAn6v8JgXH8x2xnzye8pb6v5bYvegACVpYVZnrS5w/JUgMTGh1Xy8MkkPww==",
- "dependencies": {
- "@popperjs/core": "^2.5.4",
- "body-scroll-lock": "^3.1.5",
- "reakit-system": "^0.15.1",
- "reakit-utils": "^0.15.1",
- "reakit-warning": "^0.6.1"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/reakit"
- },
- "peerDependencies": {
- "react": "^16.8.0 || ^17.0.0",
- "react-dom": "^16.8.0 || ^17.0.0"
- }
- },
- "node_modules/reakit-system": {
- "version": "0.15.1",
- "resolved": "https://registry.npmjs.org/reakit-system/-/reakit-system-0.15.1.tgz",
- "integrity": "sha512-PkqfAyEohtcEu/gUvKriCv42NywDtUgvocEN3147BI45dOFAB89nrT7wRIbIcKJiUT598F+JlPXAZZVLWhc1Kg==",
- "dependencies": {
- "reakit-utils": "^0.15.1"
- },
- "peerDependencies": {
- "react": "^16.8.0 || ^17.0.0",
- "react-dom": "^16.8.0 || ^17.0.0"
- }
- },
- "node_modules/reakit-utils": {
- "version": "0.15.1",
- "resolved": "https://registry.npmjs.org/reakit-utils/-/reakit-utils-0.15.1.tgz",
- "integrity": "sha512-6cZgKGvOkAMQgkwU9jdYbHfkuIN1Pr+vwcB19plLvcTfVN0Or10JhIuj9X+JaPZyI7ydqTDFaKNdUcDP69o/+Q==",
- "peerDependencies": {
- "react": "^16.8.0 || ^17.0.0",
- "react-dom": "^16.8.0 || ^17.0.0"
- }
- },
- "node_modules/reakit-warning": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/reakit-warning/-/reakit-warning-0.6.1.tgz",
- "integrity": "sha512-poFUV0EyxB+CcV9uTNBAFmcgsnR2DzAbOTkld4Ul+QOKSeEHZB3b3+MoZQgcYHmbvG19Na1uWaM7ES+/Eyr8tQ==",
- "dependencies": {
- "reakit-utils": "^0.15.1"
- },
- "peerDependencies": {
- "react": "^16.8.0 || ^17.0.0"
- }
- },
- "node_modules/rechoir": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz",
- "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==",
- "dev": true,
- "dependencies": {
- "resolve": "^1.9.0"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/redux": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/redux/-/redux-4.1.0.tgz",
- "integrity": "sha512-uI2dQN43zqLWCt6B/BMGRMY6db7TTY4qeHHfGeKb3EOhmOKjU3KdWvNLJyqaHRksv/ErdNH7cFZWg9jXtewy4g==",
- "dependencies": {
- "@babel/runtime": "^7.9.2"
- }
- },
- "node_modules/redux-multi": {
- "version": "0.1.12",
- "resolved": "https://registry.npmjs.org/redux-multi/-/redux-multi-0.1.12.tgz",
- "integrity": "sha1-KOH+XklnLLxb2KB/Cyrq8O+DVcI="
- },
- "node_modules/reflect.ownkeys": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/reflect.ownkeys/-/reflect.ownkeys-0.2.0.tgz",
- "integrity": "sha1-dJrO7H8/34tj+SegSAnpDFwLNGA="
- },
- "node_modules/regenerate": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
- "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
- "dev": true
- },
- "node_modules/regenerate-unicode-properties": {
- "version": "8.2.0",
- "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz",
- "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==",
- "dev": true,
- "dependencies": {
- "regenerate": "^1.4.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/regenerator-runtime": {
- "version": "0.13.9",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz",
- "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA=="
- },
- "node_modules/regenerator-transform": {
- "version": "0.14.5",
- "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz",
- "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==",
- "dev": true,
- "dependencies": {
- "@babel/runtime": "^7.8.4"
- }
- },
- "node_modules/regexp.prototype.flags": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz",
- "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==",
- "dev": true,
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/regexpp": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz",
- "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
- "dev": true,
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/mysticatea"
- }
- },
- "node_modules/regexpu-core": {
- "version": "4.7.1",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz",
- "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==",
- "dev": true,
- "dependencies": {
- "regenerate": "^1.4.0",
- "regenerate-unicode-properties": "^8.2.0",
- "regjsgen": "^0.5.1",
- "regjsparser": "^0.6.4",
- "unicode-match-property-ecmascript": "^1.0.4",
- "unicode-match-property-value-ecmascript": "^1.2.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/regjsgen": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz",
- "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==",
- "dev": true
- },
- "node_modules/regjsparser": {
- "version": "0.6.9",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.9.tgz",
- "integrity": "sha512-ZqbNRz1SNjLAiYuwY0zoXW8Ne675IX5q+YHioAGbCw4X96Mjl2+dcX9B2ciaeyYjViDAfvIjFpQjJgLttTEERQ==",
- "dev": true,
- "dependencies": {
- "jsesc": "~0.5.0"
- },
- "bin": {
- "regjsparser": "bin/parser"
- }
- },
- "node_modules/regjsparser/node_modules/jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
- "dev": true,
- "bin": {
- "jsesc": "bin/jsesc"
- }
- },
- "node_modules/rememo": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/rememo/-/rememo-3.0.0.tgz",
- "integrity": "sha512-eWtut/7pqMRnSccbexb647iPjN7ir6Tmf4RG92ZVlykFEkHqGYy9tWnpHH3I+FS+WQ6lQ1i1iDgarYzGKgTcRQ=="
- },
- "node_modules/require-directory": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
- "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/require-from-string": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
- "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/require-main-filename": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
- "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
- },
- "node_modules/resolve": {
- "version": "1.20.0",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz",
- "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==",
- "dependencies": {
- "is-core-module": "^2.2.0",
- "path-parse": "^1.0.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/resolve-cwd": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
- "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
- "dev": true,
- "dependencies": {
- "resolve-from": "^5.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/resolve-from": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
- "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/rimraf": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
- "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
- "dev": true,
- "dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- }
- },
- "node_modules/run-parallel": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
- "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "dependencies": {
- "queue-microtask": "^1.2.2"
- }
- },
- "node_modules/rungen": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/rungen/-/rungen-0.3.2.tgz",
- "integrity": "sha1-QAwJ6+kU57F+C27zJjQA/Cq8fLM="
- },
- "node_modules/safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
- },
- "node_modules/safer-buffer": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
- },
- "node_modules/saxes": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz",
- "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==",
- "dev": true,
- "dependencies": {
- "xmlchars": "^2.2.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/scheduler": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz",
- "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==",
- "dependencies": {
- "loose-envify": "^1.1.0",
- "object-assign": "^4.1.1"
- }
- },
- "node_modules/schema-utils": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
- "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
- "dev": true,
- "dependencies": {
- "@types/json-schema": "^7.0.5",
- "ajv": "^6.12.4",
- "ajv-keywords": "^3.5.2"
- },
- "engines": {
- "node": ">= 8.9.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- }
- },
- "node_modules/select": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz",
- "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0="
- },
- "node_modules/semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true,
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/serialize-javascript": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz",
- "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==",
- "dev": true,
- "dependencies": {
- "randombytes": "^2.1.0"
- }
- },
- "node_modules/set-blocking": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
- "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc="
- },
- "node_modules/set-immediate-shim": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
- "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/shallow-clone": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
- "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
- "dev": true,
- "dependencies": {
- "kind-of": "^6.0.2"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/shebang-command": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
- "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
- "dev": true,
- "dependencies": {
- "shebang-regex": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/shebang-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
- "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/showdown": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/showdown/-/showdown-1.9.1.tgz",
- "integrity": "sha512-9cGuS382HcvExtf5AHk7Cb4pAeQQ+h0eTr33V1mu+crYWV4KvWAw6el92bDrqGEk5d46Ai/fhbEUwqJ/mTCNEA==",
- "dependencies": {
- "yargs": "^14.2"
- },
- "bin": {
- "showdown": "bin/showdown.js"
- }
- },
- "node_modules/showdown/node_modules/ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/showdown/node_modules/ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dependencies": {
- "color-convert": "^1.9.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/showdown/node_modules/cliui": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
- "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
- "dependencies": {
- "string-width": "^3.1.0",
- "strip-ansi": "^5.2.0",
- "wrap-ansi": "^5.1.0"
- }
- },
- "node_modules/showdown/node_modules/color-convert": {
- "version": "1.9.3",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
- "dependencies": {
- "color-name": "1.1.3"
- }
- },
- "node_modules/showdown/node_modules/color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
- },
- "node_modules/showdown/node_modules/emoji-regex": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
- "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA=="
- },
- "node_modules/showdown/node_modules/find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "dependencies": {
- "locate-path": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/showdown/node_modules/is-fullwidth-code-point": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/showdown/node_modules/locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
- "dependencies": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/showdown/node_modules/p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "dependencies": {
- "p-limit": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/showdown/node_modules/path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/showdown/node_modules/string-width": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
- "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
- "dependencies": {
- "emoji-regex": "^7.0.1",
- "is-fullwidth-code-point": "^2.0.0",
- "strip-ansi": "^5.1.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/showdown/node_modules/strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dependencies": {
- "ansi-regex": "^4.1.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/showdown/node_modules/wrap-ansi": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
- "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
- "dependencies": {
- "ansi-styles": "^3.2.0",
- "string-width": "^3.0.0",
- "strip-ansi": "^5.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/showdown/node_modules/y18n": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
- "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="
- },
- "node_modules/showdown/node_modules/yargs": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz",
- "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==",
- "dependencies": {
- "cliui": "^5.0.0",
- "decamelize": "^1.2.0",
- "find-up": "^3.0.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^3.0.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^15.0.1"
- }
- },
- "node_modules/showdown/node_modules/yargs-parser": {
- "version": "15.0.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.3.tgz",
- "integrity": "sha512-/MVEVjTXy/cGAjdtQf8dW3V9b97bPN7rNn8ETj6BmAQL7ibC7O1Q9SPJbGjgh3SlwoBNXMzj/ZGIj8mBgl12YA==",
- "dependencies": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
- },
- "node_modules/side-channel": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
- "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
- "dev": true,
- "dependencies": {
- "call-bind": "^1.0.0",
- "get-intrinsic": "^1.0.2",
- "object-inspect": "^1.9.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/signal-exit": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
- "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
- "dev": true
- },
- "node_modules/simple-html-tokenizer": {
- "version": "0.5.11",
- "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.5.11.tgz",
- "integrity": "sha512-C2WEK/Z3HoSFbYq8tI7ni3eOo/NneSPRoPpcM7WdLjFOArFuyXEjAoCdOC3DgMfRyziZQ1hCNR4mrNdWEvD0og=="
- },
- "node_modules/sisteransi": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
- "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==",
- "dev": true
- },
- "node_modules/slash": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/slice-ansi": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
- "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "astral-regex": "^2.0.0",
- "is-fullwidth-code-point": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/slice-ansi?sponsor=1"
- }
- },
- "node_modules/source-list-map": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
- "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==",
- "dev": true
- },
- "node_modules/source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/source-map-support": {
- "version": "0.5.19",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz",
- "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==",
- "dev": true,
- "dependencies": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- },
- "node_modules/source-map-support/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/spdx-correct": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
- "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
- "dev": true,
- "dependencies": {
- "spdx-expression-parse": "^3.0.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "node_modules/spdx-exceptions": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
- "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
- "dev": true
- },
- "node_modules/spdx-expression-parse": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
- "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
- "dev": true,
- "dependencies": {
- "spdx-exceptions": "^2.1.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "node_modules/spdx-license-ids": {
- "version": "3.0.9",
- "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz",
- "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==",
- "dev": true
- },
- "node_modules/sprintf-js": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz",
- "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug=="
- },
- "node_modules/stack-utils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz",
- "integrity": "sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==",
- "dev": true,
- "dependencies": {
- "escape-string-regexp": "^2.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/stack-utils/node_modules/escape-string-regexp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
- "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dependencies": {
- "safe-buffer": "~5.1.0"
- }
- },
- "node_modules/string-length": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz",
- "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==",
- "dev": true,
- "dependencies": {
- "char-regex": "^1.0.2",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/string-width": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz",
- "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==",
- "dev": true,
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/string-width/node_modules/emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
- "dev": true
- },
- "node_modules/string.prototype.matchall": {
- "version": "4.0.5",
- "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz",
- "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==",
- "dev": true,
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.2",
- "get-intrinsic": "^1.1.1",
- "has-symbols": "^1.0.2",
- "internal-slot": "^1.0.3",
- "regexp.prototype.flags": "^1.3.1",
- "side-channel": "^1.0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/string.prototype.trimend": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz",
- "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/string.prototype.trimstart": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz",
- "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/strip-ansi": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
- "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
- "dev": true,
- "dependencies": {
- "ansi-regex": "^5.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/strip-bom": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
- "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/strip-final-newline": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
- "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/strip-json-comments": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
- "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
- "dev": true,
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/style-value-types": {
- "version": "4.1.4",
- "resolved": "https://registry.npmjs.org/style-value-types/-/style-value-types-4.1.4.tgz",
- "integrity": "sha512-LCJL6tB+vPSUoxgUBt9juXIlNJHtBMy8jkXzUJSBzeHWdBu6lhzHqCvLVkXFGsFIlNa2ln1sQHya/gzaFmB2Lg==",
- "dependencies": {
- "hey-listen": "^1.0.8",
- "tslib": "^2.1.0"
- }
- },
- "node_modules/stylis": {
- "version": "4.0.10",
- "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.10.tgz",
- "integrity": "sha512-m3k+dk7QeJw660eIKRRn3xPF6uuvHs/FFzjX3HQ5ove0qYsiygoAhwn5a3IYKaZPo5LrYD0rfVmtv1gNY1uYwg=="
- },
- "node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/supports-hyperlinks": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz",
- "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0",
- "supports-color": "^7.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/symbol-tree": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz",
- "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
- "dev": true
- },
- "node_modules/table": {
- "version": "6.7.1",
- "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz",
- "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==",
- "dev": true,
- "dependencies": {
- "ajv": "^8.0.1",
- "lodash.clonedeep": "^4.5.0",
- "lodash.truncate": "^4.4.2",
- "slice-ansi": "^4.0.0",
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10.0.0"
- }
- },
- "node_modules/table/node_modules/ajv": {
- "version": "8.6.2",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz",
- "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==",
- "dev": true,
- "dependencies": {
- "fast-deep-equal": "^3.1.1",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/epoberezkin"
- }
- },
- "node_modules/table/node_modules/json-schema-traverse": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
- "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
- "dev": true
- },
- "node_modules/tannin": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/tannin/-/tannin-1.2.0.tgz",
- "integrity": "sha512-U7GgX/RcSeUETbV7gYgoz8PD7Ni4y95pgIP/Z6ayI3CfhSujwKEBlGFTCRN+Aqnuyf4AN2yHL+L8x+TCGjb9uA==",
- "dependencies": {
- "@tannin/plural-forms": "^1.1.0"
- }
- },
- "node_modules/tapable": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.0.tgz",
- "integrity": "sha512-FBk4IesMV1rBxX2tfiK8RAmogtWn53puLOQlvO8XuwlgxcYbP4mVPS9Ph4aeamSyyVjOl24aYWAuc8U5kCVwMw==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/terminal-link": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz",
- "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==",
- "dev": true,
- "dependencies": {
- "ansi-escapes": "^4.2.1",
- "supports-hyperlinks": "^2.0.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/terser": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.1.tgz",
- "integrity": "sha512-b3e+d5JbHAe/JSjwsC3Zn55wsBIM7AsHLjKxT31kGCldgbpFePaFo+PiddtO6uwRZWRw7sPXmAN8dTW61xmnSg==",
- "dev": true,
- "dependencies": {
- "commander": "^2.20.0",
- "source-map": "~0.7.2",
- "source-map-support": "~0.5.19"
- },
- "bin": {
- "terser": "bin/terser"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/terser-webpack-plugin": {
- "version": "5.1.4",
- "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.4.tgz",
- "integrity": "sha512-C2WkFwstHDhVEmsmlCxrXUtVklS+Ir1A7twrYzrDrQQOIMOaVAYykaoo/Aq1K0QRkMoY2hhvDQY1cm4jnIMFwA==",
- "dev": true,
- "dependencies": {
- "jest-worker": "^27.0.2",
- "p-limit": "^3.1.0",
- "schema-utils": "^3.0.0",
- "serialize-javascript": "^6.0.0",
- "source-map": "^0.6.1",
- "terser": "^5.7.0"
- },
- "engines": {
- "node": ">= 10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- },
- "peerDependencies": {
- "webpack": "^5.1.0"
- }
- },
- "node_modules/terser-webpack-plugin/node_modules/p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "dev": true,
- "dependencies": {
- "yocto-queue": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/terser-webpack-plugin/node_modules/schema-utils": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
- "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
- "dev": true,
- "dependencies": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- },
- "engines": {
- "node": ">= 10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- }
- },
- "node_modules/terser-webpack-plugin/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/terser/node_modules/source-map": {
- "version": "0.7.3",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
- "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
- "dev": true,
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/test-exclude": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
- "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
- "dev": true,
- "dependencies": {
- "@istanbuljs/schema": "^0.1.2",
- "glob": "^7.1.4",
- "minimatch": "^3.0.4"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/text-table": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
- "dev": true
- },
- "node_modules/throat": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz",
- "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==",
- "dev": true
- },
- "node_modules/tiny-emitter": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
- "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q=="
- },
- "node_modules/tinycolor2": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.2.tgz",
- "integrity": "sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA==",
- "engines": {
- "node": "*"
- }
- },
- "node_modules/tmpl": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz",
- "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=",
- "dev": true
- },
- "node_modules/to-fast-properties": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
- "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
- "dependencies": {
- "is-number": "^7.0.0"
- },
- "engines": {
- "node": ">=8.0"
- }
- },
- "node_modules/tough-cookie": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz",
- "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==",
- "dev": true,
- "dependencies": {
- "psl": "^1.1.33",
- "punycode": "^2.1.1",
- "universalify": "^0.1.2"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/tr46": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz",
- "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==",
- "dev": true,
- "dependencies": {
- "punycode": "^2.1.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/traverse": {
- "version": "0.6.6",
- "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz",
- "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc="
- },
- "node_modules/tsconfig-paths": {
- "version": "3.10.1",
- "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz",
- "integrity": "sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==",
- "dev": true,
- "dependencies": {
- "json5": "^2.2.0",
- "minimist": "^1.2.0",
- "strip-bom": "^3.0.0"
- }
- },
- "node_modules/tsconfig-paths/node_modules/strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/tslib": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz",
- "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg=="
- },
- "node_modules/turbo-combine-reducers": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/turbo-combine-reducers/-/turbo-combine-reducers-1.0.2.tgz",
- "integrity": "sha512-gHbdMZlA6Ym6Ur5pSH/UWrNQMIM9IqTH6SoL1DbHpqEdQ8i+cFunSmSlFykPt0eGQwZ4d/XTHOl74H0/kFBVWw=="
- },
- "node_modules/type-check": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
- "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
- "dev": true,
- "dependencies": {
- "prelude-ls": "^1.2.1"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/type-detect": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
- "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/type-fest": {
- "version": "0.21.3",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
- "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/typedarray-to-buffer": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
- "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
- "dev": true,
- "dependencies": {
- "is-typedarray": "^1.0.0"
- }
- },
- "node_modules/unbox-primitive": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz",
- "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==",
- "dependencies": {
- "function-bind": "^1.1.1",
- "has-bigints": "^1.0.1",
- "has-symbols": "^1.0.2",
- "which-boxed-primitive": "^1.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/unicode-canonical-property-names-ecmascript": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz",
- "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-match-property-ecmascript": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz",
- "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==",
- "dev": true,
- "dependencies": {
- "unicode-canonical-property-names-ecmascript": "^1.0.4",
- "unicode-property-aliases-ecmascript": "^1.0.4"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-match-property-value-ecmascript": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz",
- "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-property-aliases-ecmascript": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz",
- "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true,
- "engines": {
- "node": ">= 4.0.0"
- }
- },
- "node_modules/uri-js": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
- "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
- "dev": true,
- "dependencies": {
- "punycode": "^2.1.0"
- }
- },
- "node_modules/use-memo-one": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/use-memo-one/-/use-memo-one-1.1.2.tgz",
- "integrity": "sha512-u2qFKtxLsia/r8qG0ZKkbytbztzRb317XCkT7yP8wxL0tZ/CzK2G+WWie5vWvpyeP7+YoPIwbJoIHJ4Ba4k0oQ==",
- "peerDependencies": {
- "react": "^16.8.0 || ^17.0.0"
- }
- },
- "node_modules/util-deprecate": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
- },
- "node_modules/utility-types": {
- "version": "3.10.0",
- "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz",
- "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==",
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/uuid": {
- "version": "8.3.2",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
- "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
- "bin": {
- "uuid": "dist/bin/uuid"
- }
- },
- "node_modules/v8-compile-cache": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
- "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
- "dev": true
- },
- "node_modules/v8-to-istanbul": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz",
- "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==",
- "dev": true,
- "dependencies": {
- "@types/istanbul-lib-coverage": "^2.0.1",
- "convert-source-map": "^1.6.0",
- "source-map": "^0.7.3"
- },
- "engines": {
- "node": ">=10.12.0"
- }
- },
- "node_modules/v8-to-istanbul/node_modules/source-map": {
- "version": "0.7.3",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
- "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
- "dev": true,
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/validate-npm-package-license": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
- "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
- "dev": true,
- "dependencies": {
- "spdx-correct": "^3.0.0",
- "spdx-expression-parse": "^3.0.0"
- }
- },
- "node_modules/w3c-hr-time": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz",
- "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==",
- "dev": true,
- "dependencies": {
- "browser-process-hrtime": "^1.0.0"
- }
- },
- "node_modules/w3c-xmlserializer": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz",
- "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==",
- "dev": true,
- "dependencies": {
- "xml-name-validator": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/walker": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz",
- "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=",
- "dev": true,
- "dependencies": {
- "makeerror": "1.0.x"
- }
- },
- "node_modules/watchpack": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.2.0.tgz",
- "integrity": "sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==",
- "dev": true,
- "dependencies": {
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.1.2"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/webidl-conversions": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz",
- "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==",
- "dev": true,
- "engines": {
- "node": ">=10.4"
- }
- },
- "node_modules/webpack": {
- "version": "5.46.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.46.0.tgz",
- "integrity": "sha512-qxD0t/KTedJbpcXUmvMxY5PUvXDbF8LsThCzqomeGaDlCA6k998D8yYVwZMvO8sSM3BTEOaD4uzFniwpHaTIJw==",
- "dev": true,
- "dependencies": {
- "@types/eslint-scope": "^3.7.0",
- "@types/estree": "^0.0.50",
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/wasm-edit": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1",
- "acorn": "^8.4.1",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.8.0",
- "es-module-lexer": "^0.7.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.4",
- "json-parse-better-errors": "^1.0.2",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.1.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.1.3",
- "watchpack": "^2.2.0",
- "webpack-sources": "^2.3.1"
- },
- "bin": {
- "webpack": "bin/webpack.js"
- },
- "engines": {
- "node": ">=10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- },
- "peerDependenciesMeta": {
- "webpack-cli": {
- "optional": true
- }
- }
- },
- "node_modules/webpack-cli": {
- "version": "4.7.2",
- "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.7.2.tgz",
- "integrity": "sha512-mEoLmnmOIZQNiRl0ebnjzQ74Hk0iKS5SiEEnpq3dRezoyR3yPaeQZCMCe+db4524pj1Pd5ghZXjT41KLzIhSLw==",
- "dev": true,
- "dependencies": {
- "@discoveryjs/json-ext": "^0.5.0",
- "@webpack-cli/configtest": "^1.0.4",
- "@webpack-cli/info": "^1.3.0",
- "@webpack-cli/serve": "^1.5.1",
- "colorette": "^1.2.1",
- "commander": "^7.0.0",
- "execa": "^5.0.0",
- "fastest-levenshtein": "^1.0.12",
- "import-local": "^3.0.2",
- "interpret": "^2.2.0",
- "rechoir": "^0.7.0",
- "v8-compile-cache": "^2.2.0",
- "webpack-merge": "^5.7.3"
- },
- "bin": {
- "webpack-cli": "bin/cli.js"
- },
- "engines": {
- "node": ">=10.13.0"
- },
- "peerDependencies": {
- "webpack": "4.x.x || 5.x.x"
- },
- "peerDependenciesMeta": {
- "@webpack-cli/generators": {
- "optional": true
- },
- "@webpack-cli/migrate": {
- "optional": true
- },
- "webpack-bundle-analyzer": {
- "optional": true
- },
- "webpack-dev-server": {
- "optional": true
- }
- }
- },
- "node_modules/webpack-cli/node_modules/commander": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
- "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
- "dev": true,
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/webpack-merge": {
- "version": "5.8.0",
- "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz",
- "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==",
- "dev": true,
- "dependencies": {
- "clone-deep": "^4.0.1",
- "wildcard": "^2.0.0"
- },
- "engines": {
- "node": ">=10.0.0"
- }
- },
- "node_modules/webpack-sources": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.1.tgz",
- "integrity": "sha512-y9EI9AO42JjEcrTJFOYmVywVZdKVUfOvDUPsJea5GIr1JOEGFVqwlY2K098fFoIjOkDzHn2AjRvM8dsBZu+gCA==",
- "dev": true,
- "dependencies": {
- "source-list-map": "^2.0.1",
- "source-map": "^0.6.1"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/webpack-sources/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/webpack-stats-plugin": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/webpack-stats-plugin/-/webpack-stats-plugin-1.0.3.tgz",
- "integrity": "sha512-tV/SQHl6lKfBahJcNDmz8JG1rpWPB9NEDQSMIoL74oVAotdxYljpgIsgLzgc1N9QrtA9KEA0moJVwQtNZv2aDA==",
- "dev": true
- },
- "node_modules/webpack/node_modules/acorn": {
- "version": "8.4.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.1.tgz",
- "integrity": "sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==",
- "dev": true,
- "bin": {
- "acorn": "bin/acorn"
- },
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/webpack/node_modules/schema-utils": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
- "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
- "dev": true,
- "dependencies": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- },
- "engines": {
- "node": ">= 10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- }
- },
- "node_modules/whatwg-encoding": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz",
- "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==",
- "dev": true,
- "dependencies": {
- "iconv-lite": "0.4.24"
- }
- },
- "node_modules/whatwg-encoding/node_modules/iconv-lite": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
- "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
- "dev": true,
- "dependencies": {
- "safer-buffer": ">= 2.1.2 < 3"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/whatwg-mimetype": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz",
- "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==",
- "dev": true
- },
- "node_modules/whatwg-url": {
- "version": "8.7.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz",
- "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==",
- "dev": true,
- "dependencies": {
- "lodash": "^4.7.0",
- "tr46": "^2.1.0",
- "webidl-conversions": "^6.1.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/whatwg-url-without-unicode": {
- "version": "8.0.0-3",
- "resolved": "https://registry.npmjs.org/whatwg-url-without-unicode/-/whatwg-url-without-unicode-8.0.0-3.tgz",
- "integrity": "sha512-HoKuzZrUlgpz35YO27XgD28uh/WJH4B0+3ttFqRo//lmq+9T/mIOJ6kqmINI9HpUpz1imRC/nR/lxKpJiv0uig==",
- "dependencies": {
- "buffer": "^5.4.3",
- "punycode": "^2.1.1",
- "webidl-conversions": "^5.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/whatwg-url-without-unicode/node_modules/webidl-conversions": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz",
- "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/which": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
- "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
- "dev": true,
- "dependencies": {
- "isexe": "^2.0.0"
- },
- "bin": {
- "node-which": "bin/node-which"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/which-boxed-primitive": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
- "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
- "dependencies": {
- "is-bigint": "^1.0.1",
- "is-boolean-object": "^1.1.0",
- "is-number-object": "^1.0.4",
- "is-string": "^1.0.5",
- "is-symbol": "^1.0.3"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/which-module": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
- "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho="
- },
- "node_modules/wildcard": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz",
- "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==",
- "dev": true
- },
- "node_modules/word-wrap": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
- "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/wrap-ansi": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/wrappy": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
- "dev": true
- },
- "node_modules/write-file-atomic": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
- "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
- "dev": true,
- "dependencies": {
- "imurmurhash": "^0.1.4",
- "is-typedarray": "^1.0.0",
- "signal-exit": "^3.0.2",
- "typedarray-to-buffer": "^3.1.5"
- }
- },
- "node_modules/ws": {
- "version": "7.5.3",
- "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz",
- "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==",
- "dev": true,
- "engines": {
- "node": ">=8.3.0"
- },
- "peerDependencies": {
- "bufferutil": "^4.0.1",
- "utf-8-validate": "^5.0.2"
- },
- "peerDependenciesMeta": {
- "bufferutil": {
- "optional": true
- },
- "utf-8-validate": {
- "optional": true
- }
- }
- },
- "node_modules/xml-name-validator": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz",
- "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==",
- "dev": true
- },
- "node_modules/xmlchars": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz",
- "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==",
- "dev": true
- },
- "node_modules/y18n": {
- "version": "5.0.8",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
- "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
- "dev": true,
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
- "node_modules/yaml": {
- "version": "1.10.2",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
- "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "dev": true,
- "dependencies": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/yargs-parser": {
- "version": "20.2.9",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
- "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
- "dev": true,
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/yocto-queue": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
- "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- }
- },
- "dependencies": {
- "@babel/code-frame": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz",
- "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==",
- "requires": {
- "@babel/highlight": "^7.14.5"
- }
- },
- "@babel/compat-data": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.7.tgz",
- "integrity": "sha512-nS6dZaISCXJ3+518CWiBfEr//gHyMO02uDxBkXTKZDN5POruCnOZ1N4YBRZDCabwF8nZMWBpRxIicmXtBs+fvw==",
- "dev": true
- },
- "@babel/core": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.8.tgz",
- "integrity": "sha512-/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.14.5",
- "@babel/generator": "^7.14.8",
- "@babel/helper-compilation-targets": "^7.14.5",
- "@babel/helper-module-transforms": "^7.14.8",
- "@babel/helpers": "^7.14.8",
- "@babel/parser": "^7.14.8",
- "@babel/template": "^7.14.5",
- "@babel/traverse": "^7.14.8",
- "@babel/types": "^7.14.8",
- "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": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.14.7.tgz",
- "integrity": "sha512-6WPwZqO5priAGIwV6msJcdc9TsEPzYeYdS/Xuoap+/ihkgN6dzHp2bcAAwyWZ5bLzk0vvjDmKvRwkqNaiJ8BiQ==",
- "dev": true,
- "requires": {
- "eslint-scope": "^5.1.1",
- "eslint-visitor-keys": "^2.1.0",
- "semver": "^6.3.0"
- }
- },
- "@babel/generator": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.8.tgz",
- "integrity": "sha512-cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.14.8",
- "jsesc": "^2.5.1",
- "source-map": "^0.5.0"
- }
- },
- "@babel/helper-annotate-as-pure": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz",
- "integrity": "sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-builder-binary-assignment-operator-visitor": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.14.5.tgz",
- "integrity": "sha512-YTA/Twn0vBXDVGJuAX6PwW7x5zQei1luDDo2Pl6q1qZ7hVNl0RZrhHCQG/ArGpR29Vl7ETiB8eJyrvpuRp300w==",
- "dev": true,
- "requires": {
- "@babel/helper-explode-assignable-expression": "^7.14.5",
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-compilation-targets": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz",
- "integrity": "sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.14.5",
- "@babel/helper-validator-option": "^7.14.5",
- "browserslist": "^4.16.6",
- "semver": "^6.3.0"
- }
- },
- "@babel/helper-create-class-features-plugin": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.8.tgz",
- "integrity": "sha512-bpYvH8zJBWzeqi1o+co8qOrw+EXzQ/0c74gVmY205AWXy9nifHrOg77y+1zwxX5lXE7Icq4sPlSQ4O2kWBrteQ==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-function-name": "^7.14.5",
- "@babel/helper-member-expression-to-functions": "^7.14.7",
- "@babel/helper-optimise-call-expression": "^7.14.5",
- "@babel/helper-replace-supers": "^7.14.5",
- "@babel/helper-split-export-declaration": "^7.14.5"
- }
- },
- "@babel/helper-create-regexp-features-plugin": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.5.tgz",
- "integrity": "sha512-TLawwqpOErY2HhWbGJ2nZT5wSkR192QpN+nBg1THfBfftrlvOh+WbhrxXCH4q4xJ9Gl16BGPR/48JA+Ryiho/A==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "regexpu-core": "^4.7.1"
- }
- },
- "@babel/helper-define-polyfill-provider": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.3.tgz",
- "integrity": "sha512-RH3QDAfRMzj7+0Nqu5oqgO5q9mFtQEVvCRsi8qCEfzLR9p2BHfn5FzhSB2oj1fF7I2+DcTORkYaQ6aTR9Cofew==",
- "dev": true,
- "requires": {
- "@babel/helper-compilation-targets": "^7.13.0",
- "@babel/helper-module-imports": "^7.12.13",
- "@babel/helper-plugin-utils": "^7.13.0",
- "@babel/traverse": "^7.13.0",
- "debug": "^4.1.1",
- "lodash.debounce": "^4.0.8",
- "resolve": "^1.14.2",
- "semver": "^6.1.2"
- }
- },
- "@babel/helper-explode-assignable-expression": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.14.5.tgz",
- "integrity": "sha512-Htb24gnGJdIGT4vnRKMdoXiOIlqOLmdiUYpAQ0mYfgVT/GDm8GOYhgi4GL+hMKrkiPRohO4ts34ELFsGAPQLDQ==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-function-name": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz",
- "integrity": "sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==",
- "dev": true,
- "requires": {
- "@babel/helper-get-function-arity": "^7.14.5",
- "@babel/template": "^7.14.5",
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-get-function-arity": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz",
- "integrity": "sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-hoist-variables": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz",
- "integrity": "sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-member-expression-to-functions": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.7.tgz",
- "integrity": "sha512-TMUt4xKxJn6ccjcOW7c4hlwyJArizskAhoSTOCkA0uZ+KghIaci0Qg9R043kUMWI9mtQfgny+NQ5QATnZ+paaA==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-module-imports": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz",
- "integrity": "sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==",
- "requires": {
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-module-transforms": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.8.tgz",
- "integrity": "sha512-RyE+NFOjXn5A9YU1dkpeBaduagTlZ0+fccnIcAGbv1KGUlReBj7utF7oEth8IdIBQPcux0DDgW5MFBH2xu9KcA==",
- "dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.14.5",
- "@babel/helper-replace-supers": "^7.14.5",
- "@babel/helper-simple-access": "^7.14.8",
- "@babel/helper-split-export-declaration": "^7.14.5",
- "@babel/helper-validator-identifier": "^7.14.8",
- "@babel/template": "^7.14.5",
- "@babel/traverse": "^7.14.8",
- "@babel/types": "^7.14.8"
- }
- },
- "@babel/helper-optimise-call-expression": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz",
- "integrity": "sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-plugin-utils": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz",
- "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ=="
- },
- "@babel/helper-remap-async-to-generator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.14.5.tgz",
- "integrity": "sha512-rLQKdQU+HYlxBwQIj8dk4/0ENOUEhA/Z0l4hN8BexpvmSMN9oA9EagjnhnDpNsRdWCfjwa4mn/HyBXO9yhQP6A==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-wrap-function": "^7.14.5",
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-replace-supers": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz",
- "integrity": "sha512-3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==",
- "dev": true,
- "requires": {
- "@babel/helper-member-expression-to-functions": "^7.14.5",
- "@babel/helper-optimise-call-expression": "^7.14.5",
- "@babel/traverse": "^7.14.5",
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-simple-access": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz",
- "integrity": "sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.14.8"
- }
- },
- "@babel/helper-skip-transparent-expression-wrappers": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.14.5.tgz",
- "integrity": "sha512-dmqZB7mrb94PZSAOYtr+ZN5qt5owZIAgqtoTuqiFbHFtxgEcmQlRJVI+bO++fciBunXtB6MK7HrzrfcAzIz2NQ==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-split-export-declaration": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz",
- "integrity": "sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helper-validator-identifier": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz",
- "integrity": "sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow=="
- },
- "@babel/helper-validator-option": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz",
- "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==",
- "dev": true
- },
- "@babel/helper-wrap-function": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.14.5.tgz",
- "integrity": "sha512-YEdjTCq+LNuNS1WfxsDCNpgXkJaIyqco6DAelTUjT4f2KIWC1nBcaCaSdHTBqQVLnTBexBcVcFhLSU1KnYuePQ==",
- "dev": true,
- "requires": {
- "@babel/helper-function-name": "^7.14.5",
- "@babel/template": "^7.14.5",
- "@babel/traverse": "^7.14.5",
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/helpers": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.8.tgz",
- "integrity": "sha512-ZRDmI56pnV+p1dH6d+UN6GINGz7Krps3+270qqI9UJ4wxYThfAIcI5i7j5vXC4FJ3Wap+S9qcebxeYiqn87DZw==",
- "dev": true,
- "requires": {
- "@babel/template": "^7.14.5",
- "@babel/traverse": "^7.14.8",
- "@babel/types": "^7.14.8"
- }
- },
- "@babel/highlight": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz",
- "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==",
- "requires": {
- "@babel/helper-validator-identifier": "^7.14.5",
- "chalk": "^2.0.0",
- "js-tokens": "^4.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "requires": {
- "color-convert": "^1.9.0"
- }
- },
- "chalk": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
- "requires": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- }
- },
- "color-convert": {
- "version": "1.9.3",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
- "requires": {
- "color-name": "1.1.3"
- }
- },
- "color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
- },
- "escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
- },
- "has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0="
- },
- "supports-color": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
- "requires": {
- "has-flag": "^3.0.0"
- }
- }
- }
- },
- "@babel/parser": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.8.tgz",
- "integrity": "sha512-syoCQFOoo/fzkWDeM0dLEZi5xqurb5vuyzwIMNZRNun+N/9A4cUZeQaE7dTrB8jGaKuJRBtEOajtnmw0I5hvvA==",
- "dev": true
- },
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5.tgz",
- "integrity": "sha512-ZoJS2XCKPBfTmL122iP6NM9dOg+d4lc9fFk3zxc8iDjvt8Pk4+TlsHSKhIPf6X+L5ORCdBzqMZDjL/WHj7WknQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5",
- "@babel/plugin-proposal-optional-chaining": "^7.14.5"
- }
- },
- "@babel/plugin-proposal-async-generator-functions": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.7.tgz",
- "integrity": "sha512-RK8Wj7lXLY3bqei69/cc25gwS5puEc3dknoFPFbqfy3XxYQBQFvu4ioWpafMBAB+L9NyptQK4nMOa5Xz16og8Q==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-remap-async-to-generator": "^7.14.5",
- "@babel/plugin-syntax-async-generators": "^7.8.4"
- }
- },
- "@babel/plugin-proposal-class-properties": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz",
- "integrity": "sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-proposal-class-static-block": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.14.5.tgz",
- "integrity": "sha512-KBAH5ksEnYHCegqseI5N9skTdxgJdmDoAOc0uXa+4QMYKeZD0w5IARh4FMlTNtaHhbB8v+KzMdTgxMMzsIy6Yg==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-class-static-block": "^7.14.5"
- }
- },
- "@babel/plugin-proposal-dynamic-import": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.5.tgz",
- "integrity": "sha512-ExjiNYc3HDN5PXJx+bwC50GIx/KKanX2HiggnIUAYedbARdImiCU4RhhHfdf0Kd7JNXGpsBBBCOm+bBVy3Gb0g==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-export-namespace-from": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.5.tgz",
- "integrity": "sha512-g5POA32bXPMmSBu5Dx/iZGLGnKmKPc5AiY7qfZgurzrCYgIztDlHFbznSNCoQuv57YQLnQfaDi7dxCtLDIdXdA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-json-strings": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.5.tgz",
- "integrity": "sha512-NSq2fczJYKVRIsUJyNxrVUMhB27zb7N7pOFGQOhBKJrChbGcgEAqyZrmZswkPk18VMurEeJAaICbfm57vUeTbQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-json-strings": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-logical-assignment-operators": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.5.tgz",
- "integrity": "sha512-YGn2AvZAo9TwyhlLvCCWxD90Xq8xJ4aSgaX3G5D/8DW94L8aaT+dS5cSP+Z06+rCJERGSr9GxMBZ601xoc2taw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
- }
- },
- "@babel/plugin-proposal-nullish-coalescing-operator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.5.tgz",
- "integrity": "sha512-gun/SOnMqjSb98Nkaq2rTKMwervfdAoz6NphdY0vTfuzMfryj+tDGb2n6UkDKwez+Y8PZDhE3D143v6Gepp4Hg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-numeric-separator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.5.tgz",
- "integrity": "sha512-yiclALKe0vyZRZE0pS6RXgjUOt87GWv6FYa5zqj15PvhOGFO69R5DusPlgK/1K5dVnCtegTiWu9UaBSrLLJJBg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4"
- }
- },
- "@babel/plugin-proposal-object-rest-spread": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.7.tgz",
- "integrity": "sha512-082hsZz+sVabfmDWo1Oct1u1AgbKbUAyVgmX4otIc7bdsRgHBXwTwb3DpDmD4Eyyx6DNiuz5UAATT655k+kL5g==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.14.7",
- "@babel/helper-compilation-targets": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-transform-parameters": "^7.14.5"
- }
- },
- "@babel/plugin-proposal-optional-catch-binding": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.5.tgz",
- "integrity": "sha512-3Oyiixm0ur7bzO5ybNcZFlmVsygSIQgdOa7cTfOYCMY+wEPAYhZAJxi3mixKFCTCKUhQXuCTtQ1MzrpL3WT8ZQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-optional-chaining": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.5.tgz",
- "integrity": "sha512-ycz+VOzo2UbWNI1rQXxIuMOzrDdHGrI23fRiz/Si2R4kv2XZQ1BK8ccdHwehMKBlcH/joGW/tzrUmo67gbJHlQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-private-methods": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.14.5.tgz",
- "integrity": "sha512-838DkdUA1u+QTCplatfq4B7+1lnDa/+QMI89x5WZHBcnNv+47N8QEj2k9I2MUU9xIv8XJ4XvPCviM/Dj7Uwt9g==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-proposal-private-property-in-object": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.14.5.tgz",
- "integrity": "sha512-62EyfyA3WA0mZiF2e2IV9mc9Ghwxcg8YTu8BS4Wss4Y3PY725OmS9M0qLORbJwLqFtGh+jiE4wAmocK2CTUK2Q==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-create-class-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5"
- }
- },
- "@babel/plugin-proposal-unicode-property-regex": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.14.5.tgz",
- "integrity": "sha512-6axIeOU5LnY471KenAB9vI8I5j7NQ2d652hIYwVyRfgaZT5UpiqFKCuVXCDMSrU+3VFafnu2c5m3lrWIlr6A5Q==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-async-generators": {
- "version": "7.8.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
- "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-bigint": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
- "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-class-properties": {
- "version": "7.12.13",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
- "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.12.13"
- }
- },
- "@babel/plugin-syntax-class-static-block": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
- "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-dynamic-import": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
- "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-export-namespace-from": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
- "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.3"
- }
- },
- "@babel/plugin-syntax-import-meta": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
- "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.10.4"
- }
- },
- "@babel/plugin-syntax-json-strings": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
- "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-jsx": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.14.5.tgz",
- "integrity": "sha512-ohuFIsOMXJnbOMRfX7/w7LocdR6R7whhuRD4ax8IipLcLPlZGJKkBxgHp++U4N/vKyU16/YDQr2f5seajD3jIw==",
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-logical-assignment-operators": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
- "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.10.4"
- }
- },
- "@babel/plugin-syntax-nullish-coalescing-operator": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
- "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-numeric-separator": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
- "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.10.4"
- }
- },
- "@babel/plugin-syntax-object-rest-spread": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
- "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-optional-catch-binding": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
- "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-optional-chaining": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
- "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-private-property-in-object": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
- "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-top-level-await": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
- "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-typescript": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz",
- "integrity": "sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-arrow-functions": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz",
- "integrity": "sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-async-to-generator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz",
- "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==",
- "dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-remap-async-to-generator": "^7.14.5"
- }
- },
- "@babel/plugin-transform-block-scoped-functions": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz",
- "integrity": "sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-block-scoping": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.5.tgz",
- "integrity": "sha512-LBYm4ZocNgoCqyxMLoOnwpsmQ18HWTQvql64t3GvMUzLQrNoV1BDG0lNftC8QKYERkZgCCT/7J5xWGObGAyHDw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-classes": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.5.tgz",
- "integrity": "sha512-J4VxKAMykM06K/64z9rwiL6xnBHgB1+FVspqvlgCdwD1KUbQNfszeKVVOMh59w3sztHYIZDgnhOC4WbdEfHFDA==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-function-name": "^7.14.5",
- "@babel/helper-optimise-call-expression": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-replace-supers": "^7.14.5",
- "@babel/helper-split-export-declaration": "^7.14.5",
- "globals": "^11.1.0"
- }
- },
- "@babel/plugin-transform-computed-properties": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz",
- "integrity": "sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-destructuring": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.7.tgz",
- "integrity": "sha512-0mDE99nK+kVh3xlc5vKwB6wnP9ecuSj+zQCa/n0voENtP/zymdT4HH6QEb65wjjcbqr1Jb/7z9Qp7TF5FtwYGw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-dotall-regex": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.14.5.tgz",
- "integrity": "sha512-loGlnBdj02MDsFaHhAIJzh7euK89lBrGIdM9EAtHFo6xKygCUGuuWe07o1oZVk287amtW1n0808sQM99aZt3gw==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-duplicate-keys": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.14.5.tgz",
- "integrity": "sha512-iJjbI53huKbPDAsJ8EmVmvCKeeq21bAze4fu9GBQtSLqfvzj2oRuHVx4ZkDwEhg1htQ+5OBZh/Ab0XDf5iBZ7A==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-exponentiation-operator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.14.5.tgz",
- "integrity": "sha512-jFazJhMBc9D27o9jDnIE5ZErI0R0m7PbKXVq77FFvqFbzvTMuv8jaAwLZ5PviOLSFttqKIW0/wxNSDbjLk0tYA==",
- "dev": true,
- "requires": {
- "@babel/helper-builder-binary-assignment-operator-visitor": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-for-of": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.14.5.tgz",
- "integrity": "sha512-CfmqxSUZzBl0rSjpoQSFoR9UEj3HzbGuGNL21/iFTmjb5gFggJp3ph0xR1YBhexmLoKRHzgxuFvty2xdSt6gTA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-function-name": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.14.5.tgz",
- "integrity": "sha512-vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ==",
- "dev": true,
- "requires": {
- "@babel/helper-function-name": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-literals": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz",
- "integrity": "sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-member-expression-literals": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.14.5.tgz",
- "integrity": "sha512-WkNXxH1VXVTKarWFqmso83xl+2V3Eo28YY5utIkbsmXoItO8Q3aZxN4BTS2k0hz9dGUloHK26mJMyQEYfkn/+Q==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-modules-amd": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.5.tgz",
- "integrity": "sha512-3lpOU8Vxmp3roC4vzFpSdEpGUWSMsHFreTWOMMLzel2gNGfHE5UWIh/LN6ghHs2xurUp4jRFYMUIZhuFbody1g==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "babel-plugin-dynamic-import-node": "^2.3.3"
- }
- },
- "@babel/plugin-transform-modules-commonjs": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.5.tgz",
- "integrity": "sha512-en8GfBtgnydoao2PS+87mKyw62k02k7kJ9ltbKe0fXTHrQmG6QZZflYuGI1VVG7sVpx4E1n7KBpNlPb8m78J+A==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-simple-access": "^7.14.5",
- "babel-plugin-dynamic-import-node": "^2.3.3"
- }
- },
- "@babel/plugin-transform-modules-systemjs": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.14.5.tgz",
- "integrity": "sha512-mNMQdvBEE5DcMQaL5LbzXFMANrQjd2W7FPzg34Y4yEz7dBgdaC+9B84dSO+/1Wba98zoDbInctCDo4JGxz1VYA==",
- "dev": true,
- "requires": {
- "@babel/helper-hoist-variables": "^7.14.5",
- "@babel/helper-module-transforms": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-validator-identifier": "^7.14.5",
- "babel-plugin-dynamic-import-node": "^2.3.3"
- }
- },
- "@babel/plugin-transform-modules-umd": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.5.tgz",
- "integrity": "sha512-RfPGoagSngC06LsGUYyM9QWSXZ8MysEjDJTAea1lqRjNECE3y0qIJF/qbvJxc4oA4s99HumIMdXOrd+TdKaAAA==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-named-capturing-groups-regex": {
- "version": "7.14.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.14.7.tgz",
- "integrity": "sha512-DTNOTaS7TkW97xsDMrp7nycUVh6sn/eq22VaxWfEdzuEbRsiaOU0pqU7DlyUGHVsbQbSghvjKRpEl+nUCKGQSg==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.14.5"
- }
- },
- "@babel/plugin-transform-new-target": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.14.5.tgz",
- "integrity": "sha512-Nx054zovz6IIRWEB49RDRuXGI4Gy0GMgqG0cII9L3MxqgXz/+rgII+RU58qpo4g7tNEx1jG7rRVH4ihZoP4esQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-object-super": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz",
- "integrity": "sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-replace-supers": "^7.14.5"
- }
- },
- "@babel/plugin-transform-parameters": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.5.tgz",
- "integrity": "sha512-Tl7LWdr6HUxTmzQtzuU14SqbgrSKmaR77M0OKyq4njZLQTPfOvzblNKyNkGwOfEFCEx7KeYHQHDI0P3F02IVkA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-property-literals": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.14.5.tgz",
- "integrity": "sha512-r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-react-display-name": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.14.5.tgz",
- "integrity": "sha512-07aqY1ChoPgIxsuDviptRpVkWCSbXWmzQqcgy65C6YSFOfPFvb/DX3bBRHh7pCd/PMEEYHYWUTSVkCbkVainYQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-react-jsx": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.14.5.tgz",
- "integrity": "sha512-7RylxNeDnxc1OleDm0F5Q/BSL+whYRbOAR+bwgCxIr0L32v7UFh/pz1DLMZideAUxKT6eMoS2zQH6fyODLEi8Q==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-module-imports": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/plugin-syntax-jsx": "^7.14.5",
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/plugin-transform-react-jsx-development": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.14.5.tgz",
- "integrity": "sha512-rdwG/9jC6QybWxVe2UVOa7q6cnTpw8JRRHOxntG/h6g/guAOe6AhtQHJuJh5FwmnXIT1bdm5vC2/5huV8ZOorQ==",
- "dev": true,
- "requires": {
- "@babel/plugin-transform-react-jsx": "^7.14.5"
- }
- },
- "@babel/plugin-transform-react-pure-annotations": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.14.5.tgz",
- "integrity": "sha512-3X4HpBJimNxW4rhUy/SONPyNQHp5YRr0HhJdT2OH1BRp0of7u3Dkirc7x9FRJMKMqTBI079VZ1hzv7Ouuz///g==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-regenerator": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.14.5.tgz",
- "integrity": "sha512-NVIY1W3ITDP5xQl50NgTKlZ0GrotKtLna08/uGY6ErQt6VEQZXla86x/CTddm5gZdcr+5GSsvMeTmWA5Ii6pkg==",
- "dev": true,
- "requires": {
- "regenerator-transform": "^0.14.2"
- }
- },
- "@babel/plugin-transform-reserved-words": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.14.5.tgz",
- "integrity": "sha512-cv4F2rv1nD4qdexOGsRQXJrOcyb5CrgjUH9PKrrtyhSDBNWGxd0UIitjyJiWagS+EbUGjG++22mGH1Pub8D6Vg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-shorthand-properties": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz",
- "integrity": "sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-spread": {
- "version": "7.14.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.14.6.tgz",
- "integrity": "sha512-Zr0x0YroFJku7n7+/HH3A2eIrGMjbmAIbJSVv0IZ+t3U2WUQUA64S/oeied2e+MaGSjmt4alzBCsK9E8gh+fag==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5"
- }
- },
- "@babel/plugin-transform-sticky-regex": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.14.5.tgz",
- "integrity": "sha512-Z7F7GyvEMzIIbwnziAZmnSNpdijdr4dWt+FJNBnBLz5mwDFkqIXU9wmBcWWad3QeJF5hMTkRe4dAq2sUZiG+8A==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-template-literals": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz",
- "integrity": "sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-typeof-symbol": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.14.5.tgz",
- "integrity": "sha512-lXzLD30ffCWseTbMQzrvDWqljvZlHkXU+CnseMhkMNqU1sASnCsz3tSzAaH3vCUXb9PHeUb90ZT1BdFTm1xxJw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-unicode-escapes": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.14.5.tgz",
- "integrity": "sha512-crTo4jATEOjxj7bt9lbYXcBAM3LZaUrbP2uUdxb6WIorLmjNKSpHfIybgY4B8SRpbf8tEVIWH3Vtm7ayCrKocA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-unicode-regex": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.14.5.tgz",
- "integrity": "sha512-UygduJpC5kHeCiRw/xDVzC+wj8VaYSoKl5JNVmbP7MadpNinAm3SvZCxZ42H37KZBKztz46YC73i9yV34d0Tzw==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/preset-env": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.8.tgz",
- "integrity": "sha512-a9aOppDU93oArQ51H+B8M1vH+tayZbuBqzjOhntGetZVa+4tTu5jp+XTwqHGG2lxslqomPYVSjIxQkFwXzgnxg==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.14.7",
- "@babel/helper-compilation-targets": "^7.14.5",
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-validator-option": "^7.14.5",
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.14.5",
- "@babel/plugin-proposal-async-generator-functions": "^7.14.7",
- "@babel/plugin-proposal-class-properties": "^7.14.5",
- "@babel/plugin-proposal-class-static-block": "^7.14.5",
- "@babel/plugin-proposal-dynamic-import": "^7.14.5",
- "@babel/plugin-proposal-export-namespace-from": "^7.14.5",
- "@babel/plugin-proposal-json-strings": "^7.14.5",
- "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5",
- "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5",
- "@babel/plugin-proposal-numeric-separator": "^7.14.5",
- "@babel/plugin-proposal-object-rest-spread": "^7.14.7",
- "@babel/plugin-proposal-optional-catch-binding": "^7.14.5",
- "@babel/plugin-proposal-optional-chaining": "^7.14.5",
- "@babel/plugin-proposal-private-methods": "^7.14.5",
- "@babel/plugin-proposal-private-property-in-object": "^7.14.5",
- "@babel/plugin-proposal-unicode-property-regex": "^7.14.5",
- "@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-json-strings": "^7.8.3",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
- "@babel/plugin-syntax-top-level-await": "^7.14.5",
- "@babel/plugin-transform-arrow-functions": "^7.14.5",
- "@babel/plugin-transform-async-to-generator": "^7.14.5",
- "@babel/plugin-transform-block-scoped-functions": "^7.14.5",
- "@babel/plugin-transform-block-scoping": "^7.14.5",
- "@babel/plugin-transform-classes": "^7.14.5",
- "@babel/plugin-transform-computed-properties": "^7.14.5",
- "@babel/plugin-transform-destructuring": "^7.14.7",
- "@babel/plugin-transform-dotall-regex": "^7.14.5",
- "@babel/plugin-transform-duplicate-keys": "^7.14.5",
- "@babel/plugin-transform-exponentiation-operator": "^7.14.5",
- "@babel/plugin-transform-for-of": "^7.14.5",
- "@babel/plugin-transform-function-name": "^7.14.5",
- "@babel/plugin-transform-literals": "^7.14.5",
- "@babel/plugin-transform-member-expression-literals": "^7.14.5",
- "@babel/plugin-transform-modules-amd": "^7.14.5",
- "@babel/plugin-transform-modules-commonjs": "^7.14.5",
- "@babel/plugin-transform-modules-systemjs": "^7.14.5",
- "@babel/plugin-transform-modules-umd": "^7.14.5",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.7",
- "@babel/plugin-transform-new-target": "^7.14.5",
- "@babel/plugin-transform-object-super": "^7.14.5",
- "@babel/plugin-transform-parameters": "^7.14.5",
- "@babel/plugin-transform-property-literals": "^7.14.5",
- "@babel/plugin-transform-regenerator": "^7.14.5",
- "@babel/plugin-transform-reserved-words": "^7.14.5",
- "@babel/plugin-transform-shorthand-properties": "^7.14.5",
- "@babel/plugin-transform-spread": "^7.14.6",
- "@babel/plugin-transform-sticky-regex": "^7.14.5",
- "@babel/plugin-transform-template-literals": "^7.14.5",
- "@babel/plugin-transform-typeof-symbol": "^7.14.5",
- "@babel/plugin-transform-unicode-escapes": "^7.14.5",
- "@babel/plugin-transform-unicode-regex": "^7.14.5",
- "@babel/preset-modules": "^0.1.4",
- "@babel/types": "^7.14.8",
- "babel-plugin-polyfill-corejs2": "^0.2.2",
- "babel-plugin-polyfill-corejs3": "^0.2.2",
- "babel-plugin-polyfill-regenerator": "^0.2.2",
- "core-js-compat": "^3.15.0",
- "semver": "^6.3.0"
- }
- },
- "@babel/preset-modules": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.4.tgz",
- "integrity": "sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/plugin-proposal-unicode-property-regex": "^7.4.4",
- "@babel/plugin-transform-dotall-regex": "^7.4.4",
- "@babel/types": "^7.4.4",
- "esutils": "^2.0.2"
- }
- },
- "@babel/preset-react": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.14.5.tgz",
- "integrity": "sha512-XFxBkjyObLvBaAvkx1Ie95Iaq4S/GUEIrejyrntQ/VCMKUYvKLoyKxOBzJ2kjA3b6rC9/KL6KXfDC2GqvLiNqQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5",
- "@babel/helper-validator-option": "^7.14.5",
- "@babel/plugin-transform-react-display-name": "^7.14.5",
- "@babel/plugin-transform-react-jsx": "^7.14.5",
- "@babel/plugin-transform-react-jsx-development": "^7.14.5",
- "@babel/plugin-transform-react-pure-annotations": "^7.14.5"
- }
- },
- "@babel/runtime": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz",
- "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==",
- "requires": {
- "regenerator-runtime": "^0.13.4"
- }
- },
- "@babel/runtime-corejs3": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.14.8.tgz",
- "integrity": "sha512-4dMD5QRBkumn45oweR0SxoNtt15oz3BUBAQ8cIx7HJqZTtE8zjpM0My8aHJHVnyf4XfRg6DNzaE1080WLBiC1w==",
- "dev": true,
- "requires": {
- "core-js-pure": "^3.15.0",
- "regenerator-runtime": "^0.13.4"
- }
- },
- "@babel/template": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz",
- "integrity": "sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.14.5",
- "@babel/parser": "^7.14.5",
- "@babel/types": "^7.14.5"
- }
- },
- "@babel/traverse": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.8.tgz",
- "integrity": "sha512-kexHhzCljJcFNn1KYAQ6A5wxMRzq9ebYpEDV4+WdNyr3i7O44tanbDOR/xjiG2F3sllan+LgwK+7OMk0EmydHg==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.14.5",
- "@babel/generator": "^7.14.8",
- "@babel/helper-function-name": "^7.14.5",
- "@babel/helper-hoist-variables": "^7.14.5",
- "@babel/helper-split-export-declaration": "^7.14.5",
- "@babel/parser": "^7.14.8",
- "@babel/types": "^7.14.8",
- "debug": "^4.1.0",
- "globals": "^11.1.0"
- }
- },
- "@babel/types": {
- "version": "7.14.8",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.8.tgz",
- "integrity": "sha512-iob4soQa7dZw8nodR/KlOQkPh9S4I8RwCxwRIFuiMRYjOzH/KJzdUfDgz6cGi5dDaclXF4P2PAhCdrBJNIg68Q==",
- "requires": {
- "@babel/helper-validator-identifier": "^7.14.8",
- "to-fast-properties": "^2.0.0"
- }
- },
- "@bcoe/v8-coverage": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
- "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
- "dev": true
- },
- "@discoveryjs/json-ext": {
- "version": "0.5.3",
- "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.3.tgz",
- "integrity": "sha512-Fxt+AfXgjMoin2maPIYzFZnQjAXjAL0PHscM5pRTtatFqB+vZxAM9tLp2Optnuw3QOQC40jTNeGYFOMvyf7v9g==",
- "dev": true
- },
- "@emotion/babel-plugin": {
- "version": "11.3.0",
- "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.3.0.tgz",
- "integrity": "sha512-UZKwBV2rADuhRp+ZOGgNWg2eYgbzKzQXfQPtJbu/PLy8onurxlNCLvxMQEvlr1/GudguPI5IU9qIY1+2z1M5bA==",
- "requires": {
- "@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",
- "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.3"
- }
- },
- "@emotion/cache": {
- "version": "11.4.0",
- "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.4.0.tgz",
- "integrity": "sha512-Zx70bjE7LErRO9OaZrhf22Qye1y4F7iDl+ITjet0J+i+B88PrAOBkKvaAWhxsZf72tDLajwCgfCjJ2dvH77C3g==",
- "requires": {
- "@emotion/memoize": "^0.7.4",
- "@emotion/sheet": "^1.0.0",
- "@emotion/utils": "^1.0.0",
- "@emotion/weak-memoize": "^0.2.5",
- "stylis": "^4.0.3"
- }
- },
- "@emotion/css": {
- "version": "11.1.3",
- "resolved": "https://registry.npmjs.org/@emotion/css/-/css-11.1.3.tgz",
- "integrity": "sha512-RSQP59qtCNTf5NWD6xM08xsQdCZmVYnX/panPYvB6LQAPKQB6GL49Njf0EMbS3CyDtrlWsBcmqBtysFvfWT3rA==",
- "requires": {
- "@emotion/babel-plugin": "^11.0.0",
- "@emotion/cache": "^11.1.3",
- "@emotion/serialize": "^1.0.0",
- "@emotion/sheet": "^1.0.0",
- "@emotion/utils": "^1.0.0"
- }
- },
- "@emotion/hash": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz",
- "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow=="
- },
- "@emotion/is-prop-valid": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.1.0.tgz",
- "integrity": "sha512-9RkilvXAufQHsSsjQ3PIzSns+pxuX4EW8EbGeSPjZMHuMx6z/MOzb9LpqNieQX4F3mre3NWS2+X3JNRHTQztUQ==",
- "requires": {
- "@emotion/memoize": "^0.7.4"
- }
- },
- "@emotion/memoize": {
- "version": "0.7.5",
- "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz",
- "integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ=="
- },
- "@emotion/react": {
- "version": "11.4.0",
- "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.4.0.tgz",
- "integrity": "sha512-4XklWsl9BdtatLoJpSjusXhpKv9YVteYKh9hPKP1Sxl+mswEFoUe0WtmtWjxEjkA51DQ2QRMCNOvKcSlCQ7ivg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@emotion/cache": "^11.4.0",
- "@emotion/serialize": "^1.0.2",
- "@emotion/sheet": "^1.0.1",
- "@emotion/utils": "^1.0.0",
- "@emotion/weak-memoize": "^0.2.5",
- "hoist-non-react-statics": "^3.3.1"
- }
- },
- "@emotion/serialize": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.2.tgz",
- "integrity": "sha512-95MgNJ9+/ajxU7QIAruiOAdYNjxZX7G2mhgrtDWswA21VviYIRP1R5QilZ/bDY42xiKsaktP4egJb3QdYQZi1A==",
- "requires": {
- "@emotion/hash": "^0.8.0",
- "@emotion/memoize": "^0.7.4",
- "@emotion/unitless": "^0.7.5",
- "@emotion/utils": "^1.0.0",
- "csstype": "^3.0.2"
- }
- },
- "@emotion/sheet": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.0.1.tgz",
- "integrity": "sha512-GbIvVMe4U+Zc+929N1V7nW6YYJtidj31lidSmdYcWozwoBIObXBnaJkKNDjZrLm9Nc0BR+ZyHNaRZxqNZbof5g=="
- },
- "@emotion/styled": {
- "version": "11.3.0",
- "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.3.0.tgz",
- "integrity": "sha512-fUoLcN3BfMiLlRhJ8CuPUMEyKkLEoM+n+UyAbnqGEsCd5IzKQ7VQFLtzpJOaCD2/VR2+1hXQTnSZXVJeiTNltA==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@emotion/babel-plugin": "^11.3.0",
- "@emotion/is-prop-valid": "^1.1.0",
- "@emotion/serialize": "^1.0.2",
- "@emotion/utils": "^1.0.0"
- }
- },
- "@emotion/unitless": {
- "version": "0.7.5",
- "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz",
- "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg=="
- },
- "@emotion/utils": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.0.0.tgz",
- "integrity": "sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA=="
- },
- "@emotion/weak-memoize": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz",
- "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA=="
- },
- "@eslint/eslintrc": {
- "version": "0.4.3",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz",
- "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==",
- "dev": true,
- "requires": {
- "ajv": "^6.12.4",
- "debug": "^4.1.1",
- "espree": "^7.3.0",
- "globals": "^13.9.0",
- "ignore": "^4.0.6",
- "import-fresh": "^3.2.1",
- "js-yaml": "^3.13.1",
- "minimatch": "^3.0.4",
- "strip-json-comments": "^3.1.1"
- },
- "dependencies": {
- "globals": {
- "version": "13.10.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz",
- "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==",
- "dev": true,
- "requires": {
- "type-fest": "^0.20.2"
- }
- },
- "type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "dev": true
- }
- }
- },
- "@humanwhocodes/config-array": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz",
- "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==",
- "dev": true,
- "requires": {
- "@humanwhocodes/object-schema": "^1.2.0",
- "debug": "^4.1.1",
- "minimatch": "^3.0.4"
- }
- },
- "@humanwhocodes/object-schema": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz",
- "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==",
- "dev": true
- },
- "@istanbuljs/load-nyc-config": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
- "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
- "dev": true,
- "requires": {
- "camelcase": "^5.3.1",
- "find-up": "^4.1.0",
- "get-package-type": "^0.1.0",
- "js-yaml": "^3.13.1",
- "resolve-from": "^5.0.0"
- }
- },
- "@istanbuljs/schema": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
- "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
- "dev": true
- },
- "@jest/console": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.0.6.tgz",
- "integrity": "sha512-fMlIBocSHPZ3JxgWiDNW/KPj6s+YRd0hicb33IrmelCcjXo/pXPwvuiKFmZz+XuqI/1u7nbUK10zSsWL/1aegg==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "jest-message-util": "^27.0.6",
- "jest-util": "^27.0.6",
- "slash": "^3.0.0"
- }
- },
- "@jest/core": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.0.6.tgz",
- "integrity": "sha512-SsYBm3yhqOn5ZLJCtccaBcvD/ccTLCeuDv8U41WJH/V1MW5eKUkeMHT9U+Pw/v1m1AIWlnIW/eM2XzQr0rEmow==",
- "dev": true,
- "requires": {
- "@jest/console": "^27.0.6",
- "@jest/reporters": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/transform": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@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.0.6",
- "jest-config": "^27.0.6",
- "jest-haste-map": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-regex-util": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-resolve-dependencies": "^27.0.6",
- "jest-runner": "^27.0.6",
- "jest-runtime": "^27.0.6",
- "jest-snapshot": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-validate": "^27.0.6",
- "jest-watcher": "^27.0.6",
- "micromatch": "^4.0.4",
- "p-each-series": "^2.1.0",
- "rimraf": "^3.0.0",
- "slash": "^3.0.0",
- "strip-ansi": "^6.0.0"
- },
- "dependencies": {
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- }
- }
- },
- "@jest/environment": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.0.6.tgz",
- "integrity": "sha512-4XywtdhwZwCpPJ/qfAkqExRsERW+UaoSRStSHCCiQTUpoYdLukj+YJbQSFrZjhlUDRZeNiU9SFH0u7iNimdiIg==",
- "dev": true,
- "requires": {
- "@jest/fake-timers": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "jest-mock": "^27.0.6"
- }
- },
- "@jest/fake-timers": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.0.6.tgz",
- "integrity": "sha512-sqd+xTWtZ94l3yWDKnRTdvTeZ+A/V7SSKrxsrOKSqdyddb9CeNRF8fbhAU0D7ZJBpTTW2nbp6MftmKJDZfW2LQ==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "@sinonjs/fake-timers": "^7.0.2",
- "@types/node": "*",
- "jest-message-util": "^27.0.6",
- "jest-mock": "^27.0.6",
- "jest-util": "^27.0.6"
- }
- },
- "@jest/globals": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.0.6.tgz",
- "integrity": "sha512-DdTGCP606rh9bjkdQ7VvChV18iS7q0IMJVP1piwTWyWskol4iqcVwthZmoJEf7obE1nc34OpIyoVGPeqLC+ryw==",
- "dev": true,
- "requires": {
- "@jest/environment": "^27.0.6",
- "@jest/types": "^27.0.6",
- "expect": "^27.0.6"
- }
- },
- "@jest/reporters": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.0.6.tgz",
- "integrity": "sha512-TIkBt09Cb2gptji3yJXb3EE+eVltW6BjO7frO7NEfjI9vSIYoISi5R3aI3KpEDXlB1xwB+97NXIqz84qYeYsfA==",
- "dev": true,
- "requires": {
- "@bcoe/v8-coverage": "^0.2.3",
- "@jest/console": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/transform": "^27.0.6",
- "@jest/types": "^27.0.6",
- "chalk": "^4.0.0",
- "collect-v8-coverage": "^1.0.0",
- "exit": "^0.1.2",
- "glob": "^7.1.2",
- "graceful-fs": "^4.2.4",
- "istanbul-lib-coverage": "^3.0.0",
- "istanbul-lib-instrument": "^4.0.3",
- "istanbul-lib-report": "^3.0.0",
- "istanbul-lib-source-maps": "^4.0.0",
- "istanbul-reports": "^3.0.2",
- "jest-haste-map": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-worker": "^27.0.6",
- "slash": "^3.0.0",
- "source-map": "^0.6.0",
- "string-length": "^4.0.1",
- "terminal-link": "^2.0.0",
- "v8-to-istanbul": "^8.0.0"
- },
- "dependencies": {
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- }
- }
- },
- "@jest/source-map": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.0.6.tgz",
- "integrity": "sha512-Fek4mi5KQrqmlY07T23JRi0e7Z9bXTOOD86V/uS0EIW4PClvPDqZOyFlLpNJheS6QI0FNX1CgmPjtJ4EA/2M+g==",
- "dev": true,
- "requires": {
- "callsites": "^3.0.0",
- "graceful-fs": "^4.2.4",
- "source-map": "^0.6.0"
- },
- "dependencies": {
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- }
- }
- },
- "@jest/test-result": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.0.6.tgz",
- "integrity": "sha512-ja/pBOMTufjX4JLEauLxE3LQBPaI2YjGFtXexRAjt1I/MbfNlMx0sytSX3tn5hSLzQsR3Qy2rd0hc1BWojtj9w==",
- "dev": true,
- "requires": {
- "@jest/console": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/istanbul-lib-coverage": "^2.0.0",
- "collect-v8-coverage": "^1.0.0"
- }
- },
- "@jest/test-sequencer": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.0.6.tgz",
- "integrity": "sha512-bISzNIApazYOlTHDum9PwW22NOyDa6VI31n6JucpjTVM0jD6JDgqEZ9+yn575nDdPF0+4csYDxNNW13NvFQGZA==",
- "dev": true,
- "requires": {
- "@jest/test-result": "^27.0.6",
- "graceful-fs": "^4.2.4",
- "jest-haste-map": "^27.0.6",
- "jest-runtime": "^27.0.6"
- }
- },
- "@jest/transform": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.0.6.tgz",
- "integrity": "sha512-rj5Dw+mtIcntAUnMlW/Vju5mr73u8yg+irnHwzgtgoeI6cCPOvUwQ0D1uQtc/APmWgvRweEb1g05pkUpxH3iCA==",
- "dev": true,
- "requires": {
- "@babel/core": "^7.1.0",
- "@jest/types": "^27.0.6",
- "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.0.6",
- "jest-regex-util": "^27.0.6",
- "jest-util": "^27.0.6",
- "micromatch": "^4.0.4",
- "pirates": "^4.0.1",
- "slash": "^3.0.0",
- "source-map": "^0.6.1",
- "write-file-atomic": "^3.0.0"
- },
- "dependencies": {
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- }
- }
- },
- "@jest/types": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.0.6.tgz",
- "integrity": "sha512-aSquT1qa9Pik26JK5/3rvnYb4bGtm1VFNesHKmNTwmPIgOrixvhL2ghIvFRNEpzy3gU+rUgjIF/KodbkFAl++g==",
- "dev": true,
- "requires": {
- "@types/istanbul-lib-coverage": "^2.0.0",
- "@types/istanbul-reports": "^3.0.0",
- "@types/node": "*",
- "@types/yargs": "^16.0.0",
- "chalk": "^4.0.0"
- }
- },
- "@popperjs/core": {
- "version": "2.9.2",
- "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.9.2.tgz",
- "integrity": "sha512-VZMYa7+fXHdwIq1TDhSXoVmSPEGM/aa+6Aiq3nVVJ9bXr24zScr+NlKFKC3iPljA7ho/GAZr+d2jOf5GIRC30Q=="
- },
- "@sinonjs/commons": {
- "version": "1.8.3",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz",
- "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==",
- "dev": true,
- "requires": {
- "type-detect": "4.0.8"
- }
- },
- "@sinonjs/fake-timers": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz",
- "integrity": "sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==",
- "dev": true,
- "requires": {
- "@sinonjs/commons": "^1.7.0"
- }
- },
- "@tannin/compile": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@tannin/compile/-/compile-1.1.0.tgz",
- "integrity": "sha512-n8m9eNDfoNZoxdvWiTfW/hSPhehzLJ3zW7f8E7oT6mCROoMNWCB4TYtv041+2FMAxweiE0j7i1jubQU4MEC/Gg==",
- "requires": {
- "@tannin/evaluate": "^1.2.0",
- "@tannin/postfix": "^1.1.0"
- }
- },
- "@tannin/evaluate": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@tannin/evaluate/-/evaluate-1.2.0.tgz",
- "integrity": "sha512-3ioXvNowbO/wSrxsDG5DKIMxC81P0QrQTYai8zFNY+umuoHWRPbQ/TuuDEOju9E+jQDXmj6yI5GyejNuh8I+eg=="
- },
- "@tannin/plural-forms": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@tannin/plural-forms/-/plural-forms-1.1.0.tgz",
- "integrity": "sha512-xl9R2mDZO/qiHam1AgMnAES6IKIg7OBhcXqy6eDsRCdXuxAFPcjrej9HMjyCLE0DJ/8cHf0i5OQTstuBRhpbHw==",
- "requires": {
- "@tannin/compile": "^1.1.0"
- }
- },
- "@tannin/postfix": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@tannin/postfix/-/postfix-1.1.0.tgz",
- "integrity": "sha512-oocsqY7g0cR+Gur5jRQLSrX2OtpMLMse1I10JQBm8CdGMrDkh1Mg2gjsiquMHRtBs4Qwu5wgEp5GgIYHk4SNPw=="
- },
- "@tootallnate/once": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz",
- "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",
- "dev": true
- },
- "@types/babel__core": {
- "version": "7.1.15",
- "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.15.tgz",
- "integrity": "sha512-bxlMKPDbY8x5h6HBwVzEOk2C8fb6SLfYQ5Jw3uBYuYF1lfWk/kbLd81la82vrIkBb0l+JdmrZaDikPrNxpS/Ew==",
- "dev": true,
- "requires": {
- "@babel/parser": "^7.1.0",
- "@babel/types": "^7.0.0",
- "@types/babel__generator": "*",
- "@types/babel__template": "*",
- "@types/babel__traverse": "*"
- }
- },
- "@types/babel__generator": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.3.tgz",
- "integrity": "sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.0.0"
- }
- },
- "@types/babel__template": {
- "version": "7.4.1",
- "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz",
- "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==",
- "dev": true,
- "requires": {
- "@babel/parser": "^7.1.0",
- "@babel/types": "^7.0.0"
- }
- },
- "@types/babel__traverse": {
- "version": "7.14.2",
- "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz",
- "integrity": "sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.3.0"
- }
- },
- "@types/eslint": {
- "version": "7.28.0",
- "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.28.0.tgz",
- "integrity": "sha512-07XlgzX0YJUn4iG1ocY4IX9DzKSmMGUs6ESKlxWhZRaa0fatIWaHWUVapcuGa8r5HFnTqzj+4OCjd5f7EZ/i/A==",
- "dev": true,
- "requires": {
- "@types/estree": "*",
- "@types/json-schema": "*"
- }
- },
- "@types/eslint-scope": {
- "version": "3.7.1",
- "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.1.tgz",
- "integrity": "sha512-SCFeogqiptms4Fg29WpOTk5nHIzfpKCemSN63ksBQYKTcXoJEmJagV+DhVmbapZzY4/5YaOV1nZwrsU79fFm1g==",
- "dev": true,
- "requires": {
- "@types/eslint": "*",
- "@types/estree": "*"
- }
- },
- "@types/estree": {
- "version": "0.0.50",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz",
- "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==",
- "dev": true
- },
- "@types/glob": {
- "version": "7.1.4",
- "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.4.tgz",
- "integrity": "sha512-w+LsMxKyYQm347Otw+IfBXOv9UWVjpHpCDdbBMt8Kz/xbvCYNjP+0qPh91Km3iKfSRLBB0P7fAMf0KHrPu+MyA==",
- "dev": true,
- "requires": {
- "@types/minimatch": "*",
- "@types/node": "*"
- }
- },
- "@types/graceful-fs": {
- "version": "4.1.5",
- "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz",
- "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==",
- "dev": true,
- "requires": {
- "@types/node": "*"
- }
- },
- "@types/istanbul-lib-coverage": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz",
- "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==",
- "dev": true
- },
- "@types/istanbul-lib-report": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
- "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==",
- "dev": true,
- "requires": {
- "@types/istanbul-lib-coverage": "*"
- }
- },
- "@types/istanbul-reports": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
- "dev": true,
- "requires": {
- "@types/istanbul-lib-report": "*"
- }
- },
- "@types/json-schema": {
- "version": "7.0.8",
- "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz",
- "integrity": "sha512-YSBPTLTVm2e2OoQIDYx8HaeWJ5tTToLH67kXR7zYNGupXMEHa2++G8k+DczX2cFVgalypqtyZIcU19AFcmOpmg==",
- "dev": true
- },
- "@types/lodash": {
- "version": "4.14.149",
- "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.149.tgz",
- "integrity": "sha512-ijGqzZt/b7BfzcK9vTrS6MFljQRPn5BFWOx8oE0GYxribu6uV+aA9zZuXI1zc/etK9E8nrgdoF2+LgUw7+9tJQ=="
- },
- "@types/minimatch": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
- "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==",
- "dev": true
- },
- "@types/mousetrap": {
- "version": "1.6.8",
- "resolved": "https://registry.npmjs.org/@types/mousetrap/-/mousetrap-1.6.8.tgz",
- "integrity": "sha512-zTqjvgCUT5EoXqbqmd8iJMb4NJqyV/V7pK7AIKq7qcaAsJIpGlTVJS1HQM6YkdHCdnkNSbhcQI7MXYxFfE3iCA=="
- },
- "@types/node": {
- "version": "16.4.1",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-16.4.1.tgz",
- "integrity": "sha512-UW7cbLqf/Wu5XH2RKKY1cHwUNLicIDRLMraYKz+HHAerJ0ZffUEk+fMnd8qU2JaS6cAy0r8tsaf7yqHASf/Y0Q==",
- "dev": true
- },
- "@types/parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA=="
- },
- "@types/prettier": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.3.2.tgz",
- "integrity": "sha512-eI5Yrz3Qv4KPUa/nSIAi0h+qX0XyewOliug5F2QAtuRg6Kjg6jfmxe1GIwoIRhZspD1A0RP8ANrPwvEXXtRFog==",
- "dev": true
- },
- "@types/prop-types": {
- "version": "15.7.4",
- "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz",
- "integrity": "sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ=="
- },
- "@types/react": {
- "version": "16.14.11",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-16.14.11.tgz",
- "integrity": "sha512-Don0MtsZZ3fjwTJ2BsoqkyOy7e176KplEAKOpr/4XDdzinlyJBn9yfsKn5mcSgn4kh1B22+3tBnzBC1z63ybtQ==",
- "requires": {
- "@types/prop-types": "*",
- "@types/scheduler": "*",
- "csstype": "^3.0.2"
- }
- },
- "@types/react-dom": {
- "version": "16.9.14",
- "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-16.9.14.tgz",
- "integrity": "sha512-FIX2AVmPTGP30OUJ+0vadeIFJJ07Mh1m+U0rxfgyW34p3rTlXI+nlenvAxNn4BP36YyI9IJ/+UJ7Wu22N1pI7A==",
- "requires": {
- "@types/react": "^16"
- }
- },
- "@types/scheduler": {
- "version": "0.16.2",
- "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
- "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew=="
- },
- "@types/stack-utils": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz",
- "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==",
- "dev": true
- },
- "@types/yargs": {
- "version": "16.0.4",
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz",
- "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==",
- "dev": true,
- "requires": {
- "@types/yargs-parser": "*"
- }
- },
- "@types/yargs-parser": {
- "version": "20.2.1",
- "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz",
- "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==",
- "dev": true
- },
- "@webassemblyjs/ast": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz",
- "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==",
- "dev": true,
- "requires": {
- "@webassemblyjs/helper-numbers": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1"
- }
- },
- "@webassemblyjs/floating-point-hex-parser": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz",
- "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==",
- "dev": true
- },
- "@webassemblyjs/helper-api-error": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz",
- "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==",
- "dev": true
- },
- "@webassemblyjs/helper-buffer": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz",
- "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==",
- "dev": true
- },
- "@webassemblyjs/helper-numbers": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz",
- "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==",
- "dev": true,
- "requires": {
- "@webassemblyjs/floating-point-hex-parser": "1.11.1",
- "@webassemblyjs/helper-api-error": "1.11.1",
- "@xtuc/long": "4.2.2"
- }
- },
- "@webassemblyjs/helper-wasm-bytecode": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz",
- "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==",
- "dev": true
- },
- "@webassemblyjs/helper-wasm-section": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz",
- "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1"
- }
- },
- "@webassemblyjs/ieee754": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz",
- "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==",
- "dev": true,
- "requires": {
- "@xtuc/ieee754": "^1.2.0"
- }
- },
- "@webassemblyjs/leb128": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz",
- "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==",
- "dev": true,
- "requires": {
- "@xtuc/long": "4.2.2"
- }
- },
- "@webassemblyjs/utf8": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz",
- "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==",
- "dev": true
- },
- "@webassemblyjs/wasm-edit": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz",
- "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/helper-wasm-section": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1",
- "@webassemblyjs/wasm-opt": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1",
- "@webassemblyjs/wast-printer": "1.11.1"
- }
- },
- "@webassemblyjs/wasm-gen": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz",
- "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/ieee754": "1.11.1",
- "@webassemblyjs/leb128": "1.11.1",
- "@webassemblyjs/utf8": "1.11.1"
- }
- },
- "@webassemblyjs/wasm-opt": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz",
- "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1"
- }
- },
- "@webassemblyjs/wasm-parser": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz",
- "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-api-error": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/ieee754": "1.11.1",
- "@webassemblyjs/leb128": "1.11.1",
- "@webassemblyjs/utf8": "1.11.1"
- }
- },
- "@webassemblyjs/wast-printer": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz",
- "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.11.1",
- "@xtuc/long": "4.2.2"
- }
- },
- "@webpack-cli/configtest": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.4.tgz",
- "integrity": "sha512-cs3XLy+UcxiP6bj0A6u7MLLuwdXJ1c3Dtc0RkKg+wiI1g/Ti1om8+/2hc2A2B60NbBNAbMgyBMHvyymWm/j4wQ==",
- "dev": true
- },
- "@webpack-cli/info": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.3.0.tgz",
- "integrity": "sha512-ASiVB3t9LOKHs5DyVUcxpraBXDOKubYu/ihHhU+t1UPpxsivg6Od2E2qU4gJCekfEddzRBzHhzA/Acyw/mlK/w==",
- "dev": true,
- "requires": {
- "envinfo": "^7.7.3"
- }
- },
- "@webpack-cli/serve": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.5.1.tgz",
- "integrity": "sha512-4vSVUiOPJLmr45S8rMGy7WDvpWxfFxfP/Qx/cxZFCfvoypTYpPPL1X8VIZMe0WTA+Jr7blUxwUSEZNkjoMTgSw==",
- "dev": true
- },
- "@wordpress/a11y": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/a11y/-/a11y-3.2.0.tgz",
- "integrity": "sha512-D2t0fn6ffNbw/9hiwrgjo7Op8GyAsGsHvNqkZhw9FulUqzQ+BsFKhSIcs6I0nI+nsZ6DZV8Cjv1h2EBn1tE0oQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/dom-ready": "^3.2.0",
- "@wordpress/i18n": "^4.2.0"
- }
- },
- "@wordpress/annotations": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/annotations/-/annotations-2.2.0.tgz",
- "integrity": "sha512-p6ttEaNBROJsPwtKnHGfg8Hqb9hVoG9GjtFBQiClMG258E/faWQ5gG1Cchmih6aunUtlXPdV3ErK9mQ8qbdlTg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/data": "^5.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "uuid": "^8.3.0"
- }
- },
- "@wordpress/api-fetch": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/api-fetch/-/api-fetch-5.2.0.tgz",
- "integrity": "sha512-VwDjdQ+afrCrRsBSfvdWpurZRvoMgewThWdNuvf+Oip0mEZgJTMqtulm4XkS/oZ+NJozE+tIlN2u1oGQD3NBng==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/url": "^3.2.0"
- }
- },
- "@wordpress/autop": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/autop/-/autop-3.2.0.tgz",
- "integrity": "sha512-CN3rDpmdQ5tsgU5P+DyCJTs51svHRW+sbeuNeBbbwRYERGri5jQRnbPznNpgSe+tUtLI9oBAGN5CFJwt/CQL3A==",
- "requires": {
- "@babel/runtime": "^7.13.10"
- }
- },
- "@wordpress/blob": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blob/-/blob-3.2.0.tgz",
- "integrity": "sha512-GpRYGyGwY581toqexQpvKIHVY5/Fa7pR7GeR23exb5t9yL6TyEMs9yZqZut2w0PxPVA7uPDjUZ1QwCvqME0KaA==",
- "requires": {
- "@babel/runtime": "^7.13.10"
- }
- },
- "@wordpress/block-directory": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-directory/-/block-directory-2.2.0.tgz",
- "integrity": "sha512-MMM//5f3OphygjGFBHXjrA+YlMpJeUQk2s2Tcn/POA9Pv6ri/CTBfZvHbKgfrVkAzOyp77DV9mxGAFD1fvuxNw==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/edit-post": "^4.2.0",
- "@wordpress/editor": "^10.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/plugins": "^3.2.0",
- "@wordpress/url": "^3.2.0",
- "lodash": "^4.17.21"
- },
- "dependencies": {
- "@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- }
- }
- },
- "@wordpress/block-editor": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-6.2.0.tgz",
- "integrity": "sha512-9jSpF2c6GN95g/Mt3XTNb9GF9irpv4sEaaH5KicvP9JTE1/AZcPG43HOoX+nYoiCwCu45BbAWnisJa7stvMMbw==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "@wordpress/token-list": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/warning": "^2.2.0",
- "@wordpress/wordcount": "^3.2.0",
- "classnames": "^2.3.1",
- "css-mediaquery": "^0.1.2",
- "diff": "^4.0.2",
- "dom-scroll-into-view": "^1.2.1",
- "inherits": "^2.0.3",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "react-autosize-textarea": "^7.1.0",
- "react-spring": "^8.0.19",
- "redux-multi": "^0.1.12",
- "rememo": "^3.0.0",
- "tinycolor2": "^1.4.2",
- "traverse": "^0.6.6"
- },
- "dependencies": {
- "@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- }
- }
- },
- "@wordpress/block-library": {
- "version": "3.2.18",
- "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-3.2.18.tgz",
- "integrity": "sha512-f61TICHWTIjvWnf8X5NvzYUDZ+RdJ944JLxWKJEhWGljk5iw0Cis+fZbPGK0QQoo8PzKXxqsTNj0oKRYpq92Pw==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.1.1",
- "@wordpress/api-fetch": "^5.1.1",
- "@wordpress/autop": "^3.1.1",
- "@wordpress/blob": "^3.1.1",
- "@wordpress/block-editor": "^6.1.13",
- "@wordpress/blocks": "^9.1.7",
- "@wordpress/components": "^14.1.10",
- "@wordpress/compose": "^4.1.5",
- "@wordpress/core-data": "^3.1.11",
- "@wordpress/data": "^5.1.5",
- "@wordpress/date": "^4.1.1",
- "@wordpress/deprecated": "^3.1.1",
- "@wordpress/dom": "^3.1.4",
- "@wordpress/element": "^3.1.1",
- "@wordpress/escape-html": "^2.1.1",
- "@wordpress/hooks": "^3.1.1",
- "@wordpress/i18n": "^4.1.1",
- "@wordpress/icons": "^4.0.2",
- "@wordpress/is-shallow-equal": "^4.1.1",
- "@wordpress/keycodes": "^3.1.1",
- "@wordpress/notices": "^3.1.5",
- "@wordpress/primitives": "^2.1.1",
- "@wordpress/reusable-blocks": "^2.1.16",
- "@wordpress/rich-text": "^4.1.5",
- "@wordpress/server-side-render": "^2.1.11",
- "@wordpress/url": "^3.1.1",
- "@wordpress/viewport": "^3.1.5",
- "classnames": "^2.2.5",
- "fast-average-color": "4.3.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "micromodal": "^0.4.6",
- "moment": "^2.22.1",
- "react-easy-crop": "^3.0.0",
- "tinycolor2": "^1.4.2"
- }
- },
- "@wordpress/block-serialization-default-parser": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-serialization-default-parser/-/block-serialization-default-parser-4.2.0.tgz",
- "integrity": "sha512-VC47s7ZamzI/GgLNld3a4fjprtpjfr5agOi2AyY+ywRQVXzbTF7k4DI00pIqXLeyWYKnObak1xPdftCjhZi5CQ==",
- "requires": {
- "@babel/runtime": "^7.13.10"
- }
- },
- "@wordpress/block-serialization-spec-parser": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-serialization-spec-parser/-/block-serialization-spec-parser-4.2.0.tgz",
- "integrity": "sha512-QPu0jdZXXYYQ5N/UFHIM1Zbk+0faGMj4bh9c7UOIjmk5Vm3CSncd7mB6IvxzB9xrFVx++vmyBceNnZjlplOWpA==",
- "requires": {
- "pegjs": "^0.10.0",
- "phpegjs": "^1.0.0-beta7"
- }
- },
- "@wordpress/blocks": {
- "version": "9.1.7",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-9.1.7.tgz",
- "integrity": "sha512-mar6I4F5sXIWSxE7bJkqanMo9cvYnS49Tg7hR0vY0gZAPTMmSeuL0Lz5i5fvquhURZtnyfryJ4qEvWix3B8/2w==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.1.1",
- "@wordpress/blob": "^3.1.1",
- "@wordpress/block-serialization-default-parser": "^4.1.1",
- "@wordpress/compose": "^4.1.5",
- "@wordpress/data": "^5.1.5",
- "@wordpress/deprecated": "^3.1.1",
- "@wordpress/dom": "^3.1.4",
- "@wordpress/element": "^3.1.1",
- "@wordpress/hooks": "^3.1.1",
- "@wordpress/html-entities": "^3.1.1",
- "@wordpress/i18n": "^4.1.1",
- "@wordpress/icons": "^4.0.2",
- "@wordpress/is-shallow-equal": "^4.1.1",
- "@wordpress/shortcode": "^3.1.1",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- },
- "@wordpress/components": {
- "version": "14.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-14.2.0.tgz",
- "integrity": "sha512-a06jjuBQMcIyrfXBfk4Hyu9BLQkT1rQm3tbOIE9Ur/cV8K0os0DrMUPZlNZ37IeOORzXhz89/L5mopvRttGLJQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@emotion/cache": "^11.1.3",
- "@emotion/css": "^11.1.3",
- "@emotion/react": "^11.1.5",
- "@emotion/styled": "^11.3.0",
- "@emotion/utils": "1.0.0",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/warning": "^2.2.0",
- "classnames": "^2.3.1",
- "dom-scroll-into-view": "^1.2.1",
- "downshift": "^6.0.15",
- "gradient-parser": "^0.1.5",
- "highlight-words-core": "^1.2.2",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "moment": "^2.22.1",
- "re-resizable": "^6.4.0",
- "react-dates": "^17.1.1",
- "react-resize-aware": "^3.1.0",
- "react-spring": "^8.0.20",
- "react-use-gesture": "^9.0.0",
- "reakit": "^1.3.8",
- "rememo": "^3.0.0",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- },
- "@wordpress/compose": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-4.2.0.tgz",
- "integrity": "sha512-8CJ4wzTXT9ZP+uIvN1d2cPBv06ZmhUh+UKzSf7v1o7T28SaYRcoZbsvDD2dnXbS2ZwWPIYAD9waNLWjCBq/izA==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@types/lodash": "4.14.149",
- "@types/mousetrap": "^1.6.8",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/priority-queue": "^2.2.0",
- "clipboard": "^2.0.1",
- "lodash": "^4.17.21",
- "mousetrap": "^1.6.5",
- "react-resize-aware": "^3.1.0",
- "use-memo-one": "^1.1.1"
- }
- },
- "@wordpress/core-data": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/core-data/-/core-data-3.2.0.tgz",
- "integrity": "sha512-YZCvNpumxegXM4emyuiSg+aUx9Xk2ElV7RqpmJFm04Tgw+ekli2WDTjt3B5q0HG8UUaSlwfIRvzka6BRYOrlCQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/url": "^3.2.0",
- "equivalent-key-map": "^0.2.2",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "uuid": "^8.3.0"
- },
- "dependencies": {
- "@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- }
- }
- },
- "@wordpress/customize-widgets": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@wordpress/customize-widgets/-/customize-widgets-1.1.0.tgz",
- "integrity": "sha512-HyHE4c2ov0/PfVqmFtQkgR8AtulT7lie+Gy5KFY21uiv/W6a/l3QIotsc8QKVUq+x1OFMJA4ogP79w9Vvd57OQ==",
- "requires": {
- "@babel/runtime": "^7.11.2",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/block-library": "^4.0.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/media-utils": "^2.2.0",
- "@wordpress/widgets": "^1.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21"
- },
- "dependencies": {
- "@wordpress/block-library": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-4.0.0.tgz",
- "integrity": "sha512-VWXvMAsAHQqQ3dIcXwRocal0Sz7P2bAZOPeERZFoGdtaWp2DCam/CjQ5mOzWDce2YW9/rrFYdmPFu4s2iFRHRw==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/escape-html": "^2.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "classnames": "^2.3.1",
- "fast-average-color": "4.3.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "micromodal": "^0.4.6",
- "moment": "^2.22.1",
- "react-easy-crop": "^3.0.0",
- "tinycolor2": "^1.4.2"
- }
- },
- "@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- }
- }
- },
- "@wordpress/data": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/data/-/data-5.2.0.tgz",
- "integrity": "sha512-NlPIC8PdKnPly9CnynQS1di59Af3eiCZrQgZm1VssfA620NDoJA5p3dlDYj/Ts4Ryzp78HCi7wjhkmbsHpnd6g==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/priority-queue": "^2.2.0",
- "@wordpress/redux-routine": "^4.2.0",
- "equivalent-key-map": "^0.2.2",
- "is-promise": "^4.0.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "turbo-combine-reducers": "^1.0.2",
- "use-memo-one": "^1.1.1"
- }
- },
- "@wordpress/data-controls": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/data-controls/-/data-controls-2.2.0.tgz",
- "integrity": "sha512-5jvOXoYf8EBNHg/ITkcSSqnb/nPHx1hbGrnjQKk6Iu2xNbQmAlfAxY0bc9fIHqFAWmiurbM/dJOuCIC6YebtFg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0"
- }
- },
- "@wordpress/date": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-4.2.0.tgz",
- "integrity": "sha512-BLOBh6IAIm2s2YZxOT+dd6HQcsm5UxCSWio9YUrCNGK6P6wrYNA7y0l6XF70LMOIXrp/cMMcQDEL1NPn6T0Sjw==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "moment": "^2.22.1",
- "moment-timezone": "^0.5.31"
- }
- },
- "@wordpress/dependency-extraction-webpack-plugin": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-3.2.0.tgz",
- "integrity": "sha512-2+Z9D5HgJyWSwqs0DNRjzP/zaXagLHVsCiMPzFOSrmp3hUpdMmvEhXvwr1m5TEb2QDvqqfy296OraSbTEymGrA==",
- "dev": true,
- "requires": {
- "json2php": "^0.0.4",
- "webpack-sources": "^2.2.0"
- }
- },
- "@wordpress/deprecated": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-3.2.0.tgz",
- "integrity": "sha512-LeMdcQ8mdG3yJ3pbDYFfph4vplNuqmBKFMxJigmAj4uoopILh4RH6KxVCNgeGQ34YJ1DkA8GpqSd3G82JB2yEg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/hooks": "^3.2.0"
- }
- },
- "@wordpress/dom": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/dom/-/dom-3.2.0.tgz",
- "integrity": "sha512-U/kzPY3K51V1zo8rchMcvQFNvwKDw+8bspgcCO5vFZfaxfQYPY5mFzbYfH6PZVgGsP3LwmmvF3brhrXkv+8y0w==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "lodash": "^4.17.21"
- }
- },
- "@wordpress/dom-ready": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/dom-ready/-/dom-ready-3.2.0.tgz",
- "integrity": "sha512-LWoe/nfMN8KPulnusMfeN2lyUG2iyHMSxL/E6szBtM0QMPfTXtHqiyus2y2aYs8nMLQLIOXlHPaTqrTxK3iJoQ==",
- "requires": {
- "@babel/runtime": "^7.13.10"
- }
- },
- "@wordpress/edit-post": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/edit-post/-/edit-post-4.2.0.tgz",
- "integrity": "sha512-h0Iv+EH6x9ueSoWgeQbejwwwLhOogY555tMg/oN31WhGXo8Cnk35SWJvEcT94WSx7g81Hd6qUhqIb/4tfwjguw==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/block-library": "^4.0.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/editor": "^10.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/interface": "^3.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/media-utils": "^2.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/plugins": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "@wordpress/warning": "^2.2.0",
- "classnames": "^2.3.1",
- "framer-motion": "^4.1.3",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "rememo": "^3.0.0",
- "uuid": "8.3.0"
- },
- "dependencies": {
- "@wordpress/block-library": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-4.0.0.tgz",
- "integrity": "sha512-VWXvMAsAHQqQ3dIcXwRocal0Sz7P2bAZOPeERZFoGdtaWp2DCam/CjQ5mOzWDce2YW9/rrFYdmPFu4s2iFRHRw==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/escape-html": "^2.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "classnames": "^2.3.1",
- "fast-average-color": "4.3.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "micromodal": "^0.4.6",
- "moment": "^2.22.1",
- "react-easy-crop": "^3.0.0",
- "tinycolor2": "^1.4.2"
- }
- },
- "@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- },
- "uuid": {
- "version": "8.3.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.0.tgz",
- "integrity": "sha512-fX6Z5o4m6XsXBdli9g7DtWgAx+osMsRRZFKma1mIUsLCz6vRvv+pz5VNbyu9UEDzpMWulZfvpgb/cmDXVulYFQ=="
- }
- }
- },
- "@wordpress/edit-site": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/edit-site/-/edit-site-2.2.0.tgz",
- "integrity": "sha512-tKm6FtuFJztkwIdBxmfZtatlu/U43jbm0ohaGl1oMliOthRGGM2Hz4RizVlUQ/aT3nA8zxBBgyd5h96GHsqtBQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/block-library": "^4.0.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/editor": "^10.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/interface": "^3.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/media-utils": "^2.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/plugins": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "classnames": "^2.3.1",
- "downloadjs": "^1.4.7",
- "file-saver": "^2.0.2",
- "jszip": "^3.2.2",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0"
- },
- "dependencies": {
- "@wordpress/block-library": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-4.0.0.tgz",
- "integrity": "sha512-VWXvMAsAHQqQ3dIcXwRocal0Sz7P2bAZOPeERZFoGdtaWp2DCam/CjQ5mOzWDce2YW9/rrFYdmPFu4s2iFRHRw==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/escape-html": "^2.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "classnames": "^2.3.1",
- "fast-average-color": "4.3.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "micromodal": "^0.4.6",
- "moment": "^2.22.1",
- "react-easy-crop": "^3.0.0",
- "tinycolor2": "^1.4.2"
- }
- },
- "@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- }
- }
- },
- "@wordpress/edit-widgets": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/edit-widgets/-/edit-widgets-2.2.0.tgz",
- "integrity": "sha512-ddmZjbWpGy+fQSDqqUXoJzqfGOGiGsalWpWF0NceexCTJjdhCfYfvPsMuLr+hKiII8Ugsgs0JYHSHZwxw5Ya8w==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/block-library": "^4.0.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/interface": "^3.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/media-utils": "^2.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/plugins": "^3.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/widgets": "^1.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "uuid": "^8.3.0"
- },
- "dependencies": {
- "@wordpress/block-library": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-4.0.0.tgz",
- "integrity": "sha512-VWXvMAsAHQqQ3dIcXwRocal0Sz7P2bAZOPeERZFoGdtaWp2DCam/CjQ5mOzWDce2YW9/rrFYdmPFu4s2iFRHRw==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/escape-html": "^2.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/primitives": "^2.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "classnames": "^2.3.1",
- "fast-average-color": "4.3.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "micromodal": "^0.4.6",
- "moment": "^2.22.1",
- "react-easy-crop": "^3.0.0",
- "tinycolor2": "^1.4.2"
- }
- },
- "@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- }
- }
- },
- "@wordpress/editor": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/editor/-/editor-10.2.0.tgz",
- "integrity": "sha512-nJ9D2+vF16kfzFXehQcndGYUjSC/0F1I0WQoQYxwH5ZKCkWqwcySFg0U4UzKGUMYkTPw/TvOgHXBcFuaF/nuIg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/data-controls": "^2.2.0",
- "@wordpress/date": "^4.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keyboard-shortcuts": "^2.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/media-utils": "^2.2.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/reusable-blocks": "^2.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/server-side-render": "^2.2.0",
- "@wordpress/url": "^3.2.0",
- "@wordpress/wordcount": "^3.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "react-autosize-textarea": "^7.1.0",
- "rememo": "^3.0.0"
- },
- "dependencies": {
- "@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- }
- }
- },
- "@wordpress/element": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-3.2.0.tgz",
- "integrity": "sha512-YXJhtBF8FnFYwA9X6Dvs4k6yJf5wy1lhU04VNJVzoUDwCt/pK747RGePIPDdUWVd3X/TlyNH2yLRtcCyOC/SzQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@types/react": "^16.9.0",
- "@types/react-dom": "^16.9.0",
- "@wordpress/escape-html": "^2.2.0",
- "lodash": "^4.17.21",
- "react": "^17.0.1",
- "react-dom": "^17.0.1"
- },
- "dependencies": {
- "react": {
- "version": "17.0.2",
- "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
- "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
- "requires": {
- "loose-envify": "^1.1.0",
- "object-assign": "^4.1.1"
- }
- }
- }
- },
- "@wordpress/escape-html": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.2.0.tgz",
- "integrity": "sha512-10U0qkEgNa+htpBCpBDJScV+9uhaUXaIZWJVhExtr8kG3omxO/pCwlRUd7r/ad7ZjuIoaLhdqzLgXT4JQCZ8uQ==",
- "requires": {
- "@babel/runtime": "^7.13.10"
- }
- },
- "@wordpress/format-library": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/format-library/-/format-library-2.2.0.tgz",
- "integrity": "sha512-8lroxAvBnP5yufgpc0hl0SG+DICc5PdR2ftdY9pptWZF0sqmWknhja5vta/UMFhfT9gMW2jFffGmFJ2mltWYWQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/keycodes": "^3.2.0",
- "@wordpress/rich-text": "^4.2.0",
- "@wordpress/url": "^3.2.0",
- "lodash": "^4.17.21"
- }
- },
- "@wordpress/hooks": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-3.2.0.tgz",
- "integrity": "sha512-nVR6V9kPxl8+aYQzQJdoDt+aKBKHHD0zplcYZbu2MHxjmHMvppAeL9mjzVhQZj/3n10NR2Ftk94mHQzHWfhCCg==",
- "requires": {
- "@babel/runtime": "^7.13.10"
- }
- },
- "@wordpress/html-entities": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/html-entities/-/html-entities-3.2.0.tgz",
- "integrity": "sha512-FqSeueZzsQfW4TBNKD2iaL8VaFNVI8Gi+QZJfscXRFprY9jef30Zh5ZoT90HN9/SQibuT9lvY6USqapJ+ysG+g==",
- "requires": {
- "@babel/runtime": "^7.13.10"
- }
- },
- "@wordpress/i18n": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-4.2.0.tgz",
- "integrity": "sha512-MGnDQObV0Ot5GJz54QI5Vg1A07Wkq4as4nIPhYW3q1xtxHCKIoDsbVqIXHqv3WTFHVvIAlt9KWbVuP38/6GENw==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/hooks": "^3.2.0",
- "gettext-parser": "^1.3.1",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "sprintf-js": "^1.1.1",
- "tannin": "^1.2.0"
- }
- },
- "@wordpress/icons": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-4.1.0.tgz",
- "integrity": "sha512-1FpEjT9kJbr0cWbgdgIwd2DoeerWijcVx3qCZ/WMFKNElBH9lfZLuWPI1hpX102HGWFcEi3VlbVpdBGeCeYQWg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/element": "^3.2.0",
- "@wordpress/primitives": "^2.2.0"
- }
- },
- "@wordpress/interface": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/interface/-/interface-3.2.0.tgz",
- "integrity": "sha512-sDl7v+2XJUmGeRA3FuswhIxc2f1bObBooVCICZsxcsPjWheO4jMWQK0Ju0eKAQS0OtHvIy96H3hSa3Wf66GD7w==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/plugins": "^3.2.0",
- "@wordpress/viewport": "^3.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21"
- }
- },
- "@wordpress/is-shallow-equal": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-4.2.0.tgz",
- "integrity": "sha512-9Oy7f3HFLMNfry4LLwYmfx4tROmusPAOfanv9F/MgzSBfMH7eyxU2JZd4KrP7IbPb59UfoUa8GhaLsnqKm66og==",
- "requires": {
- "@babel/runtime": "^7.13.10"
- }
- },
- "@wordpress/keyboard-shortcuts": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/keyboard-shortcuts/-/keyboard-shortcuts-2.2.0.tgz",
- "integrity": "sha512-YSp6jkpsLGQAMwU0l400/t/kmronvdvTWzXuHolSktcy4uklg+yJjmufzGv7W22rdrjR8FmBEDST9jtFgZxjyA==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0"
- }
- },
- "@wordpress/keycodes": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/keycodes/-/keycodes-3.2.0.tgz",
- "integrity": "sha512-wWnt6cPImjuFwHJKB5jIPxPE1KESpdrXF5zRpQIAosT92pLg4clkVMXdgNuwjG6ckyj5xA3c/f7KvV5Lx79dcg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/i18n": "^4.2.0",
- "lodash": "^4.17.21"
- }
- },
- "@wordpress/list-reusable-blocks": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/list-reusable-blocks/-/list-reusable-blocks-2.2.0.tgz",
- "integrity": "sha512-Z9OZHqt5EbzZo5fJM28oP6ZZwSUMetr+YoLBeVxQf41ZLaq54vPhv7bSakVpkrYiooOmY+SzPn7AJvUIPhysaQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "lodash": "^4.17.21"
- }
- },
- "@wordpress/media-utils": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/media-utils/-/media-utils-2.2.0.tgz",
- "integrity": "sha512-CpxRnzqLmW81i6VJ4r4rikSiaDxvLoTqAI+58++zm4DNohWVKk9GzAXRGAt6BHU1XCvoO+57TORdHXV6RXIi6Q==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "lodash": "^4.17.21"
- }
- },
- "@wordpress/notices": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/notices/-/notices-3.2.0.tgz",
- "integrity": "sha512-n3m9EvE+/eBbsHhKhe8o/q0tG2GtIlVQuG4QqIPYyK1nK+qEh8gLH022DLrqsDNJuWVCkuJx+7l6mJDI64t6Ng==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/a11y": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "lodash": "^4.17.21"
- }
- },
- "@wordpress/nux": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/nux/-/nux-4.2.0.tgz",
- "integrity": "sha512-tV/dlKunouAOgRBs4epRfoQUlffbsD0sUNXwniYawOhEar0n+whv5ncnu4iOnqI3eJnTDRMl4ZU1f9HpgW27zQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0"
- }
- },
- "@wordpress/plugins": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/plugins/-/plugins-3.2.0.tgz",
- "integrity": "sha512-yKD+XFhbJTrkspqf0/W74bvrpl2JAEefeINEmmnG94zwBEJh27Iuh67Ow84zV63GRLcHZRSb8fGsNToU983+Ow==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/icons": "^4.1.0",
- "lodash": "^4.17.21",
- "memize": "^1.1.0"
- }
- },
- "@wordpress/primitives": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-2.2.0.tgz",
- "integrity": "sha512-WupgR+tt6fKGZE1UKy2gz3wDdpRL9MWQbVuetXv/7TPAz2ofOS2fZIsXNrl4D0HkA82gYh8w8s2TXK0XNyAAow==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/element": "^3.2.0",
- "classnames": "^2.3.1"
- }
- },
- "@wordpress/priority-queue": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/priority-queue/-/priority-queue-2.2.0.tgz",
- "integrity": "sha512-Y3uK6y7Nu4x8ItN+SgG2nFp60sy0OTe01q/cnAnRuzs1wSaY3NgbrwidLS9gYVcXrgHn/XfEE3ynYOpGjQektQ==",
- "requires": {
- "@babel/runtime": "^7.13.10"
- }
- },
- "@wordpress/react-i18n": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/react-i18n/-/react-i18n-2.2.0.tgz",
- "integrity": "sha512-oLhRV4h+NTa6WAnMtpfsr46DL+ZjvhtVadECCbv80RvSS9Bj3ZfVC6n0iZM1UCAlFszGmd4BjUhQ//F38AS3hA==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "utility-types": "^3.10.0"
- }
- },
- "@wordpress/redux-routine": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/redux-routine/-/redux-routine-4.2.0.tgz",
- "integrity": "sha512-vYHI6/O9g0sh0VGNwQlk+AozBHvCoayjUqmoC1ggr4yL5rQeSBJbyiLGJ0WPA8T3YF0HHdefMM4PZfTEdgce5w==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "is-promise": "^4.0.0",
- "lodash": "^4.17.21",
- "redux": "^4.1.0",
- "rungen": "^0.3.2"
- }
- },
- "@wordpress/reusable-blocks": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/reusable-blocks/-/reusable-blocks-2.2.0.tgz",
- "integrity": "sha512-4rUm2w14tpqH4uNqrlXhaWk5AKd1SkSgyDZ+ME79YE3nfGD0abUZZpuElZjiSGlwxU9MIc6k2or88wcnvdAvrQ==",
- "requires": {
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/url": "^3.2.0",
- "lodash": "^4.17.21"
- },
- "dependencies": {
- "@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- }
- }
- },
- "@wordpress/rich-text": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/rich-text/-/rich-text-4.2.0.tgz",
- "integrity": "sha512-e+wfrkKtZIcFZJZLxkrikiXbxlr6nuGg+V94uKMLrzJEWdw7w/8l3dNhWHRGPkldXIEGrF/mV40ibjUa2p3Sfg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/escape-html": "^2.2.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/keycodes": "^3.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21",
- "memize": "^1.1.0",
- "rememo": "^3.0.0"
- }
- },
- "@wordpress/server-side-render": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/server-side-render/-/server-side-render-2.2.0.tgz",
- "integrity": "sha512-7nJBM8NKgvylzetEgm89vuBXr9KvdtMaUfRvqEfNzV3at9xcnD+8or8zvdWF0y6fVON1e4brpbRMQTOV/aCZVQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/url": "^3.2.0",
- "lodash": "^4.17.21"
- },
- "dependencies": {
- "@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- }
- }
- },
- "@wordpress/shortcode": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/shortcode/-/shortcode-3.2.0.tgz",
- "integrity": "sha512-RueB1KqY+5rjxdAjDkwbyjmcLmifjFOJTWgQcwuyU/+6lL/BoX31CYkLI1gQ7+LQi+XFV3olqzh0wMZDz/R5qQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "lodash": "^4.17.21",
- "memize": "^1.1.0"
- }
- },
- "@wordpress/token-list": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/token-list/-/token-list-2.2.0.tgz",
- "integrity": "sha512-0z6MhRv/pqxQcvTSeMAL69vcaxJ2J8U1Q5VeavHWnhtZ+nRglYNoE0yMLrEaeutoHeXOfWpY6baC91AgLDKE8A==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "lodash": "^4.17.21"
- }
- },
- "@wordpress/url": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/url/-/url-3.2.0.tgz",
- "integrity": "sha512-CfFyI0jUzvDmbzSS6mmSrHhv4dC8i5aw3hAGZIYcLDERR81U3sPb3C4s90Y0Pr8LMzuHZZqg0QaMcSBMgkOEVQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "lodash": "^4.17.21",
- "react-native-url-polyfill": "^1.1.2"
- }
- },
- "@wordpress/viewport": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/viewport/-/viewport-3.2.0.tgz",
- "integrity": "sha512-wprefD4TaSSU0RYheLoIAlGRSwF7hKNhJpMS36SwQb+RmQrqRyvGWiIMeYypLkUVeFUukQ3AnCOcjppaOXYiLQ==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "lodash": "^4.17.21"
- }
- },
- "@wordpress/warning": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-2.2.0.tgz",
- "integrity": "sha512-rrlvdmeyqXSRfedi7Ig6vOa7sdz2us0vjiQ8qvPEC6k2vUBvPsJgk13htavxGmbXsVBSqTtjuLC6LfGHCPSmOg=="
- },
- "@wordpress/widgets": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/widgets/-/widgets-1.2.0.tgz",
- "integrity": "sha512-5D3PWysvkL6TFXLvetD+QWyxvGGHuU9UCme7lLtMxGGcgu1YhbtVhn9OcQJwKyRWGs7ACoJQc0DvtcPnHio7GA==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/api-fetch": "^5.2.0",
- "@wordpress/block-editor": "^6.2.0",
- "@wordpress/blocks": "^10.0.0",
- "@wordpress/components": "^14.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/core-data": "^3.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/notices": "^3.2.0",
- "@wordpress/url": "^3.2.0",
- "classnames": "^2.3.1",
- "lodash": "^4.17.21"
- },
- "dependencies": {
- "@wordpress/blocks": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-10.0.0.tgz",
- "integrity": "sha512-AiCaU0BQQnMRI5ZvClbI4zXAI3PZ+agtKoJLSkFP9gZrffWcptOsZqnGu7NVoNkPT47PwJtImCLh1j3JSSAFvg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@wordpress/autop": "^3.2.0",
- "@wordpress/blob": "^3.2.0",
- "@wordpress/block-serialization-default-parser": "^4.2.0",
- "@wordpress/compose": "^4.2.0",
- "@wordpress/data": "^5.2.0",
- "@wordpress/deprecated": "^3.2.0",
- "@wordpress/dom": "^3.2.0",
- "@wordpress/element": "^3.2.0",
- "@wordpress/hooks": "^3.2.0",
- "@wordpress/html-entities": "^3.2.0",
- "@wordpress/i18n": "^4.2.0",
- "@wordpress/icons": "^4.1.0",
- "@wordpress/is-shallow-equal": "^4.2.0",
- "@wordpress/shortcode": "^3.2.0",
- "hpq": "^1.3.0",
- "lodash": "^4.17.21",
- "rememo": "^3.0.0",
- "showdown": "^1.9.1",
- "simple-html-tokenizer": "^0.5.7",
- "tinycolor2": "^1.4.2",
- "uuid": "^8.3.0"
- }
- }
- }
- },
- "@wordpress/wordcount": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@wordpress/wordcount/-/wordcount-3.2.0.tgz",
- "integrity": "sha512-Aby+Il9J9RVvLQgZdf2oVgMQcjR3Oc9k6q1vbXQLB2t71iSqvPs6J0a6XqDwcpd3geHuMt2bjL4YBsZhJLaaXA==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "lodash": "^4.17.21"
- }
- },
- "@xtuc/ieee754": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
- "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
- "dev": true
- },
- "@xtuc/long": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
- "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
- "dev": true
- },
- "abab": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz",
- "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==",
- "dev": true
- },
- "acorn": {
- "version": "7.4.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
- "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
- "dev": true
- },
- "acorn-globals": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz",
- "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==",
- "dev": true,
- "requires": {
- "acorn": "^7.1.1",
- "acorn-walk": "^7.1.1"
- }
- },
- "acorn-jsx": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
- "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
- "dev": true
- },
- "acorn-walk": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
- "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
- "dev": true
- },
- "agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
- "dev": true,
- "requires": {
- "debug": "4"
- }
- },
- "airbnb-prop-types": {
- "version": "2.16.0",
- "resolved": "https://registry.npmjs.org/airbnb-prop-types/-/airbnb-prop-types-2.16.0.tgz",
- "integrity": "sha512-7WHOFolP/6cS96PhKNrslCLMYAI8yB1Pp6u6XmxozQOiZbsI5ycglZr5cHhBFfuRcQQjzCMith5ZPZdYiJCxUg==",
- "requires": {
- "array.prototype.find": "^2.1.1",
- "function.prototype.name": "^1.1.2",
- "is-regex": "^1.1.0",
- "object-is": "^1.1.2",
- "object.assign": "^4.1.0",
- "object.entries": "^1.1.2",
- "prop-types": "^15.7.2",
- "prop-types-exact": "^1.2.0",
- "react-is": "^16.13.1"
- },
- "dependencies": {
- "react-is": {
- "version": "16.13.1",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
- }
- }
- },
- "ajv": {
- "version": "6.12.6",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
- "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
- "dev": true,
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- }
- },
- "ajv-keywords": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
- "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
- "dev": true
- },
- "ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
- "dev": true
- },
- "ansi-escapes": {
- "version": "4.3.2",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
- "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
- "dev": true,
- "requires": {
- "type-fest": "^0.21.3"
- }
- },
- "ansi-regex": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
- "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
- "dev": true
- },
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "anymatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
- "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
- "dev": true,
- "requires": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
- }
- },
- "argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
- "dev": true,
- "requires": {
- "sprintf-js": "~1.0.2"
- },
- "dependencies": {
- "sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
- "dev": true
- }
- }
- },
- "aria-query": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz",
- "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.10.2",
- "@babel/runtime-corejs3": "^7.10.2"
- }
- },
- "array-includes": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz",
- "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.0-next.2",
- "get-intrinsic": "^1.1.1",
- "is-string": "^1.0.5"
- }
- },
- "array-union": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
- "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
- "dev": true,
- "requires": {
- "array-uniq": "^1.0.1"
- }
- },
- "array-uniq": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
- "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
- "dev": true
- },
- "array.prototype.find": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/array.prototype.find/-/array.prototype.find-2.1.1.tgz",
- "integrity": "sha512-mi+MYNJYLTx2eNYy+Yh6raoQacCsNeeMUaspFPh9Y141lFSsWxxB8V9mM2ye+eqiRs917J6/pJ4M9ZPzenWckA==",
- "requires": {
- "define-properties": "^1.1.3",
- "es-abstract": "^1.17.4"
- }
- },
- "array.prototype.flat": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz",
- "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==",
- "requires": {
- "call-bind": "^1.0.0",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.0-next.1"
- }
- },
- "array.prototype.flatmap": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz",
- "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.0",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.0-next.1",
- "function-bind": "^1.1.1"
- }
- },
- "ast-types-flow": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz",
- "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=",
- "dev": true
- },
- "astral-regex": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
- "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
- "dev": true
- },
- "asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
- "dev": true
- },
- "autoprefixer": {
- "version": "10.3.1",
- "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.3.1.tgz",
- "integrity": "sha512-L8AmtKzdiRyYg7BUXJTzigmhbQRCXFKz6SA1Lqo0+AR2FBbQ4aTAPFSDlOutnFkjhiz8my4agGXog1xlMjPJ6A==",
- "dev": true,
- "requires": {
- "browserslist": "^4.16.6",
- "caniuse-lite": "^1.0.30001243",
- "colorette": "^1.2.2",
- "fraction.js": "^4.1.1",
- "normalize-range": "^0.1.2",
- "postcss-value-parser": "^4.1.0"
- }
- },
- "autosize": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/autosize/-/autosize-4.0.4.tgz",
- "integrity": "sha512-5yxLQ22O0fCRGoxGfeLSNt3J8LB1v+umtpMnPW6XjkTWXKoN0AmXAIhelJcDtFT/Y/wYWmfE+oqU10Q0b8FhaQ=="
- },
- "axe-core": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.3.1.tgz",
- "integrity": "sha512-3WVgVPs/7OnKU3s+lqMtkv3wQlg3WxK1YifmpJSDO0E1aPBrZWlrrTO6cxRqCXLuX2aYgCljqXIQd0VnRidV0g==",
- "dev": true
- },
- "axobject-query": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz",
- "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==",
- "dev": true
- },
- "babel-jest": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.0.6.tgz",
- "integrity": "sha512-iTJyYLNc4wRofASmofpOc5NK9QunwMk+TLFgGXsTFS8uEqmd8wdI7sga0FPe2oVH3b5Agt/EAK1QjPEuKL8VfA==",
- "dev": true,
- "requires": {
- "@jest/transform": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/babel__core": "^7.1.14",
- "babel-plugin-istanbul": "^6.0.0",
- "babel-preset-jest": "^27.0.6",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.4",
- "slash": "^3.0.0"
- }
- },
- "babel-loader": {
- "version": "8.2.2",
- "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.2.tgz",
- "integrity": "sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g==",
- "dev": true,
- "requires": {
- "find-cache-dir": "^3.3.1",
- "loader-utils": "^1.4.0",
- "make-dir": "^3.1.0",
- "schema-utils": "^2.6.5"
- }
- },
- "babel-plugin-dynamic-import-node": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
- "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==",
- "dev": true,
- "requires": {
- "object.assign": "^4.1.0"
- }
- },
- "babel-plugin-istanbul": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz",
- "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@istanbuljs/load-nyc-config": "^1.0.0",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-instrument": "^4.0.0",
- "test-exclude": "^6.0.0"
- }
- },
- "babel-plugin-jest-hoist": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.6.tgz",
- "integrity": "sha512-CewFeM9Vv2gM7Yr9n5eyyLVPRSiBnk6lKZRjgwYnGKSl9M14TMn2vkN02wTF04OGuSDLEzlWiMzvjXuW9mB6Gw==",
- "dev": true,
- "requires": {
- "@babel/template": "^7.3.3",
- "@babel/types": "^7.3.3",
- "@types/babel__core": "^7.0.0",
- "@types/babel__traverse": "^7.0.6"
- }
- },
- "babel-plugin-macros": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz",
- "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==",
- "requires": {
- "@babel/runtime": "^7.7.2",
- "cosmiconfig": "^6.0.0",
- "resolve": "^1.12.0"
- }
- },
- "babel-plugin-polyfill-corejs2": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.2.tgz",
- "integrity": "sha512-kISrENsJ0z5dNPq5eRvcctITNHYXWOA4DUZRFYCz3jYCcvTb/A546LIddmoGNMVYg2U38OyFeNosQwI9ENTqIQ==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.13.11",
- "@babel/helper-define-polyfill-provider": "^0.2.2",
- "semver": "^6.1.1"
- }
- },
- "babel-plugin-polyfill-corejs3": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.3.tgz",
- "integrity": "sha512-rCOFzEIJpJEAU14XCcV/erIf/wZQMmMT5l5vXOpL5uoznyOGfDIjPj6FVytMvtzaKSTSVKouOCTPJ5OMUZH30g==",
- "dev": true,
- "requires": {
- "@babel/helper-define-polyfill-provider": "^0.2.2",
- "core-js-compat": "^3.14.0"
- }
- },
- "babel-plugin-polyfill-regenerator": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.2.tgz",
- "integrity": "sha512-Goy5ghsc21HgPDFtzRkSirpZVW35meGoTmTOb2bxqdl60ghub4xOidgNTHaZfQ2FaxQsKmwvXtOAkcIS4SMBWg==",
- "dev": true,
- "requires": {
- "@babel/helper-define-polyfill-provider": "^0.2.2"
- }
- },
- "babel-preset-current-node-syntax": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz",
- "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==",
- "dev": true,
- "requires": {
- "@babel/plugin-syntax-async-generators": "^7.8.4",
- "@babel/plugin-syntax-bigint": "^7.8.3",
- "@babel/plugin-syntax-class-properties": "^7.8.3",
- "@babel/plugin-syntax-import-meta": "^7.8.3",
- "@babel/plugin-syntax-json-strings": "^7.8.3",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-numeric-separator": "^7.8.3",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-syntax-top-level-await": "^7.8.3"
- }
- },
- "babel-preset-jest": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.0.6.tgz",
- "integrity": "sha512-WObA0/Biw2LrVVwZkF/2GqbOdzhKD6Fkdwhoy9ASIrOWr/zodcSpQh72JOkEn6NWyjmnPDjNSqaGN4KnpKzhXw==",
- "dev": true,
- "requires": {
- "babel-plugin-jest-hoist": "^27.0.6",
- "babel-preset-current-node-syntax": "^1.0.0"
- }
- },
- "balanced-match": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
- "dev": true
- },
- "base64-js": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
- "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
- },
- "big.js": {
- "version": "5.2.2",
- "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
- "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==",
- "dev": true
- },
- "body-scroll-lock": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/body-scroll-lock/-/body-scroll-lock-3.1.5.tgz",
- "integrity": "sha512-Yi1Xaml0EvNA0OYWxXiYNqY24AfWkbA6w5vxE7GWxtKfzIbZM+Qw+aSmkgsbWzbHiy/RCSkUZBplVxTA+E4jJg=="
- },
- "brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
- "requires": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
- "dev": true,
- "requires": {
- "fill-range": "^7.0.1"
- }
- },
- "brcast": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/brcast/-/brcast-2.0.2.tgz",
- "integrity": "sha512-Tfn5JSE7hrUlFcOoaLzVvkbgIemIorMIyoMr3TgvszWW7jFt2C9PdeMLtysYD9RU0MmU17b69+XJG1eRY2OBRg=="
- },
- "browser-process-hrtime": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz",
- "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==",
- "dev": true
- },
- "browserslist": {
- "version": "4.16.6",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz",
- "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==",
- "dev": true,
- "requires": {
- "caniuse-lite": "^1.0.30001219",
- "colorette": "^1.2.2",
- "electron-to-chromium": "^1.3.723",
- "escalade": "^3.1.1",
- "node-releases": "^1.1.71"
- }
- },
- "bser": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
- "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
- "dev": true,
- "requires": {
- "node-int64": "^0.4.0"
- }
- },
- "buffer": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
- "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
- "requires": {
- "base64-js": "^1.3.1",
- "ieee754": "^1.1.13"
- }
- },
- "buffer-from": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
- "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
- "dev": true
- },
- "call-bind": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
- "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
- "requires": {
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.0.2"
- }
- },
- "callsites": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="
- },
- "camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="
- },
- "caniuse-lite": {
- "version": "1.0.30001246",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001246.tgz",
- "integrity": "sha512-Tc+ff0Co/nFNbLOrziBXmMVtpt9S2c2Y+Z9Nk9Khj09J+0zR9ejvIW5qkZAErCbOrVODCx/MN+GpB5FNBs5GFA==",
- "dev": true
- },
- "chalk": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz",
- "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "char-regex": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz",
- "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==",
- "dev": true
- },
- "check-node-version": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/check-node-version/-/check-node-version-4.1.0.tgz",
- "integrity": "sha512-TSXGsyfW5/xY2QseuJn8/hleO2AU7HxVCdkc900jp1vcfzF840GkjvRT7CHl8sRtWn23n3X3k0cwH9RXeRwhfw==",
- "dev": true,
- "requires": {
- "chalk": "^3.0.0",
- "map-values": "^1.0.1",
- "minimist": "^1.2.0",
- "object-filter": "^1.0.2",
- "run-parallel": "^1.1.4",
- "semver": "^6.3.0"
- },
- "dependencies": {
- "chalk": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
- "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- }
- }
- },
- "chrome-trace-event": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
- "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==",
- "dev": true
- },
- "ci-info": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz",
- "integrity": "sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==",
- "dev": true
- },
- "cjs-module-lexer": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz",
- "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==",
- "dev": true
- },
- "classnames": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz",
- "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA=="
- },
- "clean-webpack-plugin": {
- "version": "4.0.0-alpha.0",
- "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-4.0.0-alpha.0.tgz",
- "integrity": "sha512-+X6mASBbGSVyw8L9/1rhQ+vS4uaQMopf194kX7Aes8qfezgCFL+qv5W0nwP3a0Tud5kUckARk8tFcoyOSKEjhg==",
- "dev": true,
- "requires": {
- "del": "^4.1.1"
- }
- },
- "clipboard": {
- "version": "2.0.8",
- "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.8.tgz",
- "integrity": "sha512-Y6WO0unAIQp5bLmk1zdThRhgJt/x3ks6f30s3oE3H1mgIEU33XyQjEf8gsf6DxC7NPX8Y1SsNWjUjL/ywLnnbQ==",
- "requires": {
- "good-listener": "^1.2.2",
- "select": "^1.1.2",
- "tiny-emitter": "^2.0.0"
- }
- },
- "cliui": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
- "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
- "dev": true,
- "requires": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^7.0.0"
- }
- },
- "clone-deep": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
- "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
- "dev": true,
- "requires": {
- "is-plain-object": "^2.0.4",
- "kind-of": "^6.0.2",
- "shallow-clone": "^3.0.0"
- }
- },
- "co": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
- "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
- "dev": true
- },
- "collect-v8-coverage": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz",
- "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==",
- "dev": true
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "colorette": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz",
- "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==",
- "dev": true
- },
- "combined-stream": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
- "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
- "dev": true,
- "requires": {
- "delayed-stream": "~1.0.0"
- }
- },
- "commander": {
- "version": "2.20.3",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
- "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
- "dev": true
- },
- "commondir": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
- "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
- "dev": true
- },
- "compute-scroll-into-view": {
- "version": "1.0.17",
- "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.17.tgz",
- "integrity": "sha512-j4dx+Fb0URmzbwwMUrhqWM2BEWHdFGx+qZ9qqASHRPqvTYdqvWnHg0H1hIbcyLnvgnoNAVMlwkepyqM3DaIFUg=="
- },
- "computed-style": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/computed-style/-/computed-style-0.1.4.tgz",
- "integrity": "sha1-fzRP2FhLLkJb7cpKGvwOMAuwXXQ="
- },
- "concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
- "dev": true
- },
- "confusing-browser-globals": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.10.tgz",
- "integrity": "sha512-gNld/3lySHwuhaVluJUKLePYirM3QNCKzVxqAdhJII9/WXKVX5PURzMVJspS1jTslSqjeuG4KMVTSouit5YPHA==",
- "dev": true
- },
- "consolidated-events": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/consolidated-events/-/consolidated-events-2.0.2.tgz",
- "integrity": "sha512-2/uRVMdRypf5z/TW/ncD/66l75P5hH2vM/GR8Jf8HLc2xnfJtmina6F6du8+v4Z2vTrMo7jC+W1tmEEuuELgkQ=="
- },
- "convert-source-map": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
- "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
- "requires": {
- "safe-buffer": "~5.1.1"
- }
- },
- "core-js-compat": {
- "version": "3.15.2",
- "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.15.2.tgz",
- "integrity": "sha512-Wp+BJVvwopjI+A1EFqm2dwUmWYXrvucmtIB2LgXn/Rb+gWPKYxtmb4GKHGKG/KGF1eK9jfjzT38DITbTOCX/SQ==",
- "dev": true,
- "requires": {
- "browserslist": "^4.16.6",
- "semver": "7.0.0"
- },
- "dependencies": {
- "semver": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz",
- "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==",
- "dev": true
- }
- }
- },
- "core-js-pure": {
- "version": "3.15.2",
- "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.15.2.tgz",
- "integrity": "sha512-D42L7RYh1J2grW8ttxoY1+17Y4wXZeKe7uyplAI3FkNQyI5OgBIAjUfFiTPfL1rs0qLpxaabITNbjKl1Sp82tA==",
- "dev": true
- },
- "core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
- },
- "cosmiconfig": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
- "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
- "requires": {
- "@types/parse-json": "^4.0.0",
- "import-fresh": "^3.1.0",
- "parse-json": "^5.0.0",
- "path-type": "^4.0.0",
- "yaml": "^1.7.2"
- }
- },
- "cross-spawn": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
- "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
- "dev": true,
- "requires": {
- "path-key": "^3.1.0",
- "shebang-command": "^2.0.0",
- "which": "^2.0.1"
- }
- },
- "css-mediaquery": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/css-mediaquery/-/css-mediaquery-0.1.2.tgz",
- "integrity": "sha1-aiw3NEkoYYYxxUvTPO3TAdoYvqA="
- },
- "cssom": {
- "version": "0.4.4",
- "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz",
- "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==",
- "dev": true
- },
- "cssstyle": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz",
- "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==",
- "dev": true,
- "requires": {
- "cssom": "~0.3.6"
- },
- "dependencies": {
- "cssom": {
- "version": "0.3.8",
- "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz",
- "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==",
- "dev": true
- }
- }
- },
- "csstype": {
- "version": "3.0.8",
- "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz",
- "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw=="
- },
- "damerau-levenshtein": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.7.tgz",
- "integrity": "sha512-VvdQIPGdWP0SqFXghj79Wf/5LArmreyMsGLa6FG6iC4t3j7j5s71TrwWmT/4akbDQIqjfACkLZmjXhA7g2oUZw==",
- "dev": true
- },
- "data-urls": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz",
- "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==",
- "dev": true,
- "requires": {
- "abab": "^2.0.3",
- "whatwg-mimetype": "^2.3.0",
- "whatwg-url": "^8.0.0"
- }
- },
- "debug": {
- "version": "4.3.2",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
- "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
- "dev": true,
- "requires": {
- "ms": "2.1.2"
- }
- },
- "decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
- },
- "decimal.js": {
- "version": "10.3.1",
- "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz",
- "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==",
- "dev": true
- },
- "dedent": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
- "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=",
- "dev": true
- },
- "deep-is": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
- "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
- "dev": true
- },
- "deepmerge": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
- "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
- "dev": true
- },
- "define-properties": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
- "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
- "requires": {
- "object-keys": "^1.0.12"
- }
- },
- "del": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz",
- "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==",
- "dev": true,
- "requires": {
- "@types/glob": "^7.1.1",
- "globby": "^6.1.0",
- "is-path-cwd": "^2.0.0",
- "is-path-in-cwd": "^2.0.0",
- "p-map": "^2.0.0",
- "pify": "^4.0.1",
- "rimraf": "^2.6.3"
- }
- },
- "delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
- "dev": true
- },
- "delegate": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz",
- "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw=="
- },
- "detect-newline": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
- "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
- "dev": true
- },
- "diff": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
- "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A=="
- },
- "diff-sequences": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.0.6.tgz",
- "integrity": "sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ==",
- "dev": true
- },
- "direction": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/direction/-/direction-1.0.4.tgz",
- "integrity": "sha512-GYqKi1aH7PJXxdhTeZBFrg8vUBeKXi+cNprXsC1kpJcbcVnV9wBsrOu1cQEdG0WeQwlfHiy3XvnKfIrJ2R0NzQ=="
- },
- "doctrine": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
- "dev": true,
- "requires": {
- "esutils": "^2.0.2"
- }
- },
- "document.contains": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/document.contains/-/document.contains-1.0.2.tgz",
- "integrity": "sha512-YcvYFs15mX8m3AO1QNQy3BlIpSMfNRj3Ujk2BEJxsZG+HZf7/hZ6jr7mDpXrF8q+ff95Vef5yjhiZxm8CGJr6Q==",
- "requires": {
- "define-properties": "^1.1.3"
- }
- },
- "dom-scroll-into-view": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/dom-scroll-into-view/-/dom-scroll-into-view-1.2.1.tgz",
- "integrity": "sha1-6PNnMt0ImwIBqI14Fdw/iObWbH4="
- },
- "domexception": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz",
- "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==",
- "dev": true,
- "requires": {
- "webidl-conversions": "^5.0.0"
- },
- "dependencies": {
- "webidl-conversions": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz",
- "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==",
- "dev": true
- }
- }
- },
- "dompurify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.3.0.tgz",
- "integrity": "sha512-VV5C6Kr53YVHGOBKO/F86OYX6/iLTw2yVSI721gKetxpHCK/V5TaLEf9ODjRgl1KLSWRMY6cUhAbv/c+IUnwQw=="
- },
- "downloadjs": {
- "version": "1.4.7",
- "resolved": "https://registry.npmjs.org/downloadjs/-/downloadjs-1.4.7.tgz",
- "integrity": "sha1-9p+W+UDg0FU9rCkROYZaPNAQHjw="
- },
- "downshift": {
- "version": "6.1.3",
- "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.3.tgz",
- "integrity": "sha512-RA1MuaNcTbt0j+sVLhSs8R2oZbBXYAtdQP/V+uHhT3DoDteZzJPjlC+LQVm9T07Wpvo84QXaZtUCePLDTDwGXg==",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "compute-scroll-into-view": "^1.0.17",
- "prop-types": "^15.7.2",
- "react-is": "^17.0.2"
- }
- },
- "electron-to-chromium": {
- "version": "1.3.785",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.785.tgz",
- "integrity": "sha512-WmCgAeURsMFiyoJ646eUaJQ7GNfvMRLXo+GamUyKVNEM4MqTAsXyC0f38JEB4N3BtbD0tlAKozGP5E2T9K3YGg==",
- "dev": true
- },
- "emittery": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz",
- "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==",
- "dev": true
- },
- "emoji-regex": {
- "version": "9.2.2",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
- "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
- "dev": true
- },
- "emojis-list": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
- "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
- "dev": true
- },
- "encoding": {
- "version": "0.1.13",
- "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
- "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
- "requires": {
- "iconv-lite": "^0.6.2"
- }
- },
- "enhanced-resolve": {
- "version": "5.8.2",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.2.tgz",
- "integrity": "sha512-F27oB3WuHDzvR2DOGNTaYy0D5o0cnrv8TeI482VM4kYgQd/FT9lUQwuNsJ0oOHtBUq7eiW5ytqzp7nBFknL+GA==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- }
- },
- "enquirer": {
- "version": "2.3.6",
- "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
- "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==",
- "dev": true,
- "requires": {
- "ansi-colors": "^4.1.1"
- }
- },
- "envinfo": {
- "version": "7.8.1",
- "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz",
- "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==",
- "dev": true
- },
- "equivalent-key-map": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/equivalent-key-map/-/equivalent-key-map-0.2.2.tgz",
- "integrity": "sha512-xvHeyCDbZzkpN4VHQj/n+j2lOwL0VWszG30X4cOrc9Y7Tuo2qCdZK/0AMod23Z5dCtNUbaju6p0rwOhHUk05ew=="
- },
- "error-ex": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
- "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
- "requires": {
- "is-arrayish": "^0.2.1"
- }
- },
- "es-abstract": {
- "version": "1.18.3",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz",
- "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==",
- "requires": {
- "call-bind": "^1.0.2",
- "es-to-primitive": "^1.2.1",
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.2",
- "is-callable": "^1.2.3",
- "is-negative-zero": "^2.0.1",
- "is-regex": "^1.1.3",
- "is-string": "^1.0.6",
- "object-inspect": "^1.10.3",
- "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"
- }
- },
- "es-module-lexer": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.7.1.tgz",
- "integrity": "sha512-MgtWFl5No+4S3TmhDmCz2ObFGm6lEpTnzbQi+Dd+pw4mlTIZTmM2iAs5gRlmx5zS9luzobCSBSI90JM/1/JgOw==",
- "dev": true
- },
- "es-to-primitive": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
- "requires": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- }
- },
- "escalade": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
- "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
- "dev": true
- },
- "escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="
- },
- "escodegen": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz",
- "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==",
- "dev": true,
- "requires": {
- "esprima": "^4.0.1",
- "estraverse": "^5.2.0",
- "esutils": "^2.0.2",
- "optionator": "^0.8.1",
- "source-map": "~0.6.1"
- },
- "dependencies": {
- "estraverse": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
- "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
- "dev": true
- },
- "levn": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
- "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
- "dev": true,
- "requires": {
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2"
- }
- },
- "optionator": {
- "version": "0.8.3",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
- "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
- "dev": true,
- "requires": {
- "deep-is": "~0.1.3",
- "fast-levenshtein": "~2.0.6",
- "levn": "~0.3.0",
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2",
- "word-wrap": "~1.2.3"
- }
- },
- "prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
- "dev": true
- },
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "optional": true
- },
- "type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
- "dev": true,
- "requires": {
- "prelude-ls": "~1.1.2"
- }
- }
- }
- },
- "eslint": {
- "version": "7.31.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.31.0.tgz",
- "integrity": "sha512-vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "7.12.11",
- "@eslint/eslintrc": "^0.4.3",
- "@humanwhocodes/config-array": "^0.5.0",
- "ajv": "^6.10.0",
- "chalk": "^4.0.0",
- "cross-spawn": "^7.0.2",
- "debug": "^4.0.1",
- "doctrine": "^3.0.0",
- "enquirer": "^2.3.5",
- "escape-string-regexp": "^4.0.0",
- "eslint-scope": "^5.1.1",
- "eslint-utils": "^2.1.0",
- "eslint-visitor-keys": "^2.0.0",
- "espree": "^7.3.1",
- "esquery": "^1.4.0",
- "esutils": "^2.0.2",
- "fast-deep-equal": "^3.1.3",
- "file-entry-cache": "^6.0.1",
- "functional-red-black-tree": "^1.0.1",
- "glob-parent": "^5.1.2",
- "globals": "^13.6.0",
- "ignore": "^4.0.6",
- "import-fresh": "^3.0.0",
- "imurmurhash": "^0.1.4",
- "is-glob": "^4.0.0",
- "js-yaml": "^3.13.1",
- "json-stable-stringify-without-jsonify": "^1.0.1",
- "levn": "^0.4.1",
- "lodash.merge": "^4.6.2",
- "minimatch": "^3.0.4",
- "natural-compare": "^1.4.0",
- "optionator": "^0.9.1",
- "progress": "^2.0.0",
- "regexpp": "^3.1.0",
- "semver": "^7.2.1",
- "strip-ansi": "^6.0.0",
- "strip-json-comments": "^3.1.0",
- "table": "^6.0.9",
- "text-table": "^0.2.0",
- "v8-compile-cache": "^2.0.3"
- },
- "dependencies": {
- "@babel/code-frame": {
- "version": "7.12.11",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz",
- "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==",
- "dev": true,
- "requires": {
- "@babel/highlight": "^7.10.4"
- }
- },
- "globals": {
- "version": "13.10.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz",
- "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==",
- "dev": true,
- "requires": {
- "type-fest": "^0.20.2"
- }
- },
- "semver": {
- "version": "7.3.5",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
- "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
- "dev": true,
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "dev": true
- }
- }
- },
- "eslint-config-airbnb": {
- "version": "18.2.1",
- "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-18.2.1.tgz",
- "integrity": "sha512-glZNDEZ36VdlZWoxn/bUR1r/sdFKPd1mHPbqUtkctgNG4yT2DLLtJ3D+yCV+jzZCc2V1nBVkmdknOJBZ5Hc0fg==",
- "dev": true,
- "requires": {
- "eslint-config-airbnb-base": "^14.2.1",
- "object.assign": "^4.1.2",
- "object.entries": "^1.1.2"
- }
- },
- "eslint-config-airbnb-base": {
- "version": "14.2.1",
- "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.2.1.tgz",
- "integrity": "sha512-GOrQyDtVEc1Xy20U7vsB2yAoB4nBlfH5HZJeatRXHleO+OS5Ot+MWij4Dpltw4/DyIkqUfqz1epfhVR5XWWQPA==",
- "dev": true,
- "requires": {
- "confusing-browser-globals": "^1.0.10",
- "object.assign": "^4.1.2",
- "object.entries": "^1.1.2"
- }
- },
- "eslint-import-resolver-node": {
- "version": "0.3.4",
- "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz",
- "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==",
- "dev": true,
- "requires": {
- "debug": "^2.6.9",
- "resolve": "^1.13.1"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
- }
- },
- "eslint-module-utils": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz",
- "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==",
- "dev": true,
- "requires": {
- "debug": "^3.2.7",
- "pkg-dir": "^2.0.0"
- },
- "dependencies": {
- "debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- }
- }
- },
- "eslint-plugin-import": {
- "version": "2.23.4",
- "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz",
- "integrity": "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==",
- "dev": true,
- "requires": {
- "array-includes": "^3.1.3",
- "array.prototype.flat": "^1.2.4",
- "debug": "^2.6.9",
- "doctrine": "^2.1.0",
- "eslint-import-resolver-node": "^0.3.4",
- "eslint-module-utils": "^2.6.1",
- "find-up": "^2.0.0",
- "has": "^1.0.3",
- "is-core-module": "^2.4.0",
- "minimatch": "^3.0.4",
- "object.values": "^1.1.3",
- "pkg-up": "^2.0.0",
- "read-pkg-up": "^3.0.0",
- "resolve": "^1.20.0",
- "tsconfig-paths": "^3.9.0"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "doctrine": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
- "dev": true,
- "requires": {
- "esutils": "^2.0.2"
- }
- },
- "find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
- "dev": true,
- "requires": {
- "locate-path": "^2.0.0"
- }
- },
- "locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
- "dev": true,
- "requires": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- },
- "p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "dev": true,
- "requires": {
- "p-try": "^1.0.0"
- }
- },
- "p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
- "dev": true,
- "requires": {
- "p-limit": "^1.1.0"
- }
- },
- "p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
- "dev": true
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true
- }
- }
- },
- "eslint-plugin-jsx-a11y": {
- "version": "6.4.1",
- "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.4.1.tgz",
- "integrity": "sha512-0rGPJBbwHoGNPU73/QCLP/vveMlM1b1Z9PponxO87jfr6tuH5ligXbDT6nHSSzBC8ovX2Z+BQu7Bk5D/Xgq9zg==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.11.2",
- "aria-query": "^4.2.2",
- "array-includes": "^3.1.1",
- "ast-types-flow": "^0.0.7",
- "axe-core": "^4.0.2",
- "axobject-query": "^2.2.0",
- "damerau-levenshtein": "^1.0.6",
- "emoji-regex": "^9.0.0",
- "has": "^1.0.3",
- "jsx-ast-utils": "^3.1.0",
- "language-tags": "^1.0.5"
- }
- },
- "eslint-plugin-react": {
- "version": "7.24.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.24.0.tgz",
- "integrity": "sha512-KJJIx2SYx7PBx3ONe/mEeMz4YE0Lcr7feJTCMyyKb/341NcjuAgim3Acgan89GfPv7nxXK2+0slu0CWXYM4x+Q==",
- "dev": true,
- "requires": {
- "array-includes": "^3.1.3",
- "array.prototype.flatmap": "^1.2.4",
- "doctrine": "^2.1.0",
- "has": "^1.0.3",
- "jsx-ast-utils": "^2.4.1 || ^3.0.0",
- "minimatch": "^3.0.4",
- "object.entries": "^1.1.4",
- "object.fromentries": "^2.0.4",
- "object.values": "^1.1.4",
- "prop-types": "^15.7.2",
- "resolve": "^2.0.0-next.3",
- "string.prototype.matchall": "^4.0.5"
- },
- "dependencies": {
- "doctrine": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
- "dev": true,
- "requires": {
- "esutils": "^2.0.2"
- }
- },
- "resolve": {
- "version": "2.0.0-next.3",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.3.tgz",
- "integrity": "sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==",
- "dev": true,
- "requires": {
- "is-core-module": "^2.2.0",
- "path-parse": "^1.0.6"
- }
- }
- }
- },
- "eslint-plugin-react-hooks": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz",
- "integrity": "sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==",
- "dev": true
- },
- "eslint-scope": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
- "dev": true,
- "requires": {
- "esrecurse": "^4.3.0",
- "estraverse": "^4.1.1"
- }
- },
- "eslint-utils": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz",
- "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==",
- "dev": true,
- "requires": {
- "eslint-visitor-keys": "^1.1.0"
- },
- "dependencies": {
- "eslint-visitor-keys": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
- "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
- "dev": true
- }
- }
- },
- "eslint-visitor-keys": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
- "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
- "dev": true
- },
- "espree": {
- "version": "7.3.1",
- "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz",
- "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==",
- "dev": true,
- "requires": {
- "acorn": "^7.4.0",
- "acorn-jsx": "^5.3.1",
- "eslint-visitor-keys": "^1.3.0"
- },
- "dependencies": {
- "eslint-visitor-keys": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
- "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
- "dev": true
- }
- }
- },
- "esprima": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
- "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
- "dev": true
- },
- "esquery": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
- "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
- "dev": true,
- "requires": {
- "estraverse": "^5.1.0"
- },
- "dependencies": {
- "estraverse": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
- "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
- "dev": true
- }
- }
- },
- "esrecurse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
- "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
- "dev": true,
- "requires": {
- "estraverse": "^5.2.0"
- },
- "dependencies": {
- "estraverse": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
- "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
- "dev": true
- }
- }
- },
- "estraverse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
- "dev": true
- },
- "esutils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
- "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
- "dev": true
- },
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true
- },
- "execa": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
- "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==",
- "dev": true,
- "requires": {
- "cross-spawn": "^7.0.3",
- "get-stream": "^6.0.0",
- "human-signals": "^2.1.0",
- "is-stream": "^2.0.0",
- "merge-stream": "^2.0.0",
- "npm-run-path": "^4.0.1",
- "onetime": "^5.1.2",
- "signal-exit": "^3.0.3",
- "strip-final-newline": "^2.0.0"
- }
- },
- "exit": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
- "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
- "dev": true
- },
- "expect": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/expect/-/expect-27.0.6.tgz",
- "integrity": "sha512-psNLt8j2kwg42jGBDSfAlU49CEZxejN1f1PlANWDZqIhBOVU/c2Pm888FcjWJzFewhIsNWfZJeLjUjtKGiPuSw==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "ansi-styles": "^5.0.0",
- "jest-get-type": "^27.0.6",
- "jest-matcher-utils": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-regex-util": "^27.0.6"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
- "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
- "dev": true
- }
- }
- },
- "fast-average-color": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/fast-average-color/-/fast-average-color-4.3.0.tgz",
- "integrity": "sha512-k8FXd6+JeXoItmdNqB3hMwFgArryjdYBLuzEM8fRY/oztd/051yhSHU6GUrMOfIQU9dDHyFDcIAkGrQKlYtpDA=="
- },
- "fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
- "dev": true
- },
- "fast-json-stable-stringify": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
- "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
- "dev": true
- },
- "fast-levenshtein": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
- "dev": true
- },
- "fast-memoize": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/fast-memoize/-/fast-memoize-2.5.2.tgz",
- "integrity": "sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw=="
- },
- "fastest-levenshtein": {
- "version": "1.0.12",
- "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz",
- "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==",
- "dev": true
- },
- "fb-watchman": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz",
- "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==",
- "dev": true,
- "requires": {
- "bser": "2.1.1"
- }
- },
- "file-entry-cache": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
- "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
- "dev": true,
- "requires": {
- "flat-cache": "^3.0.4"
- }
- },
- "file-saver": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz",
- "integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA=="
- },
- "fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
- "dev": true,
- "requires": {
- "to-regex-range": "^5.0.1"
- }
- },
- "find-cache-dir": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz",
- "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==",
- "dev": true,
- "requires": {
- "commondir": "^1.0.1",
- "make-dir": "^3.0.2",
- "pkg-dir": "^4.1.0"
- },
- "dependencies": {
- "pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "dev": true,
- "requires": {
- "find-up": "^4.0.0"
- }
- }
- }
- },
- "find-root": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
- "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng=="
- },
- "find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "requires": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "flat-cache": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
- "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
- "dev": true,
- "requires": {
- "flatted": "^3.1.0",
- "rimraf": "^3.0.2"
- },
- "dependencies": {
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- }
- }
- },
- "flatted": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.1.tgz",
- "integrity": "sha512-OMQjaErSFHmHqZe+PSidH5n8j3O0F2DdnVh8JB4j4eUQ2k6KvB0qGfrKIhapvez5JerBbmWkaLYUYWISaESoXg==",
- "dev": true
- },
- "form-data": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz",
- "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==",
- "dev": true,
- "requires": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.8",
- "mime-types": "^2.1.12"
- }
- },
- "fraction.js": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.1.1.tgz",
- "integrity": "sha512-MHOhvvxHTfRFpF1geTK9czMIZ6xclsEor2wkIGYYq+PxcQqT7vStJqjhe6S1TenZrMZzo+wlqOufBDVepUEgPg==",
- "dev": true
- },
- "framer-motion": {
- "version": "4.1.17",
- "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-4.1.17.tgz",
- "integrity": "sha512-thx1wvKzblzbs0XaK2X0G1JuwIdARcoNOW7VVwjO8BUltzXPyONGAElLu6CiCScsOQRI7FIk/45YTFtJw5Yozw==",
- "requires": {
- "@emotion/is-prop-valid": "^0.8.2",
- "framesync": "5.3.0",
- "hey-listen": "^1.0.8",
- "popmotion": "9.3.6",
- "style-value-types": "4.1.4",
- "tslib": "^2.1.0"
- },
- "dependencies": {
- "@emotion/is-prop-valid": {
- "version": "0.8.8",
- "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz",
- "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==",
- "optional": true,
- "requires": {
- "@emotion/memoize": "0.7.4"
- }
- },
- "@emotion/memoize": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz",
- "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==",
- "optional": true
- }
- }
- },
- "framesync": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/framesync/-/framesync-5.3.0.tgz",
- "integrity": "sha512-oc5m68HDO/tuK2blj7ZcdEBRx3p1PjrgHazL8GYEpvULhrtGIFbQArN6cQS2QhW8mitffaB+VYzMjDqBxxQeoA==",
- "requires": {
- "tslib": "^2.1.0"
- }
- },
- "fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
- "dev": true
- },
- "fsevents": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
- "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
- "dev": true,
- "optional": true
- },
- "function-bind": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
- },
- "function.prototype.name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.4.tgz",
- "integrity": "sha512-iqy1pIotY/RmhdFZygSSlW0wko2yxkSCKqsuv4pr8QESohpYyG/Z7B/XXvPRKTJS//960rgguE5mSRUsDdaJrQ==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.0-next.2",
- "functions-have-names": "^1.2.2"
- }
- },
- "functional-red-black-tree": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
- "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
- "dev": true
- },
- "functions-have-names": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.2.tgz",
- "integrity": "sha512-bLgc3asbWdwPbx2mNk2S49kmJCuQeu0nfmaOgbs8WIyzzkw3r4htszdIi9Q9EMezDPTYuJx2wvjZ/EwgAthpnA=="
- },
- "gensync": {
- "version": "1.0.0-beta.2",
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
- "dev": true
- },
- "get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
- },
- "get-intrinsic": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
- "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
- "requires": {
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.1"
- }
- },
- "get-package-type": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
- "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
- "dev": true
- },
- "get-stream": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
- "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
- "dev": true
- },
- "gettext-parser": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.4.0.tgz",
- "integrity": "sha512-sedZYLHlHeBop/gZ1jdg59hlUEcpcZJofLq2JFwJT1zTqAU3l2wFv6IsuwFHGqbiT9DWzMUW4/em2+hspnmMMA==",
- "requires": {
- "encoding": "^0.1.12",
- "safe-buffer": "^5.1.1"
- }
- },
- "glob": {
- "version": "7.1.7",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
- "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
- "glob-to-regexp": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
- "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
- "dev": true
- },
- "global-cache": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/global-cache/-/global-cache-1.2.1.tgz",
- "integrity": "sha512-EOeUaup5DgWKlCMhA9YFqNRIlZwoxt731jCh47WBV9fQqHgXhr3Fa55hfgIUqilIcPsfdNKN7LHjrNY+Km40KA==",
- "requires": {
- "define-properties": "^1.1.2",
- "is-symbol": "^1.0.1"
- }
- },
- "globals": {
- "version": "11.12.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
- "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
- "dev": true
- },
- "globby": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
- "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=",
- "dev": true,
- "requires": {
- "array-union": "^1.0.1",
- "glob": "^7.0.3",
- "object-assign": "^4.0.1",
- "pify": "^2.0.0",
- "pinkie-promise": "^2.0.0"
- },
- "dependencies": {
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true
- }
- }
- },
- "good-listener": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz",
- "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=",
- "requires": {
- "delegate": "^3.1.2"
- }
- },
- "graceful-fs": {
- "version": "4.2.6",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz",
- "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==",
- "dev": true
- },
- "gradient-parser": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-0.1.5.tgz",
- "integrity": "sha1-DH4heVWeXOfY1x9EI6+TcQCyJIw="
- },
- "has": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
- "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
- "requires": {
- "function-bind": "^1.1.1"
- }
- },
- "has-bigints": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz",
- "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA=="
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "has-symbols": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz",
- "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw=="
- },
- "hey-listen": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/hey-listen/-/hey-listen-1.0.8.tgz",
- "integrity": "sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q=="
- },
- "highlight-words-core": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/highlight-words-core/-/highlight-words-core-1.2.2.tgz",
- "integrity": "sha512-BXUKIkUuh6cmmxzi5OIbUJxrG8OAk2MqoL1DtO3Wo9D2faJg2ph5ntyuQeLqaHJmzER6H5tllCDA9ZnNe9BVGg=="
- },
- "hoist-non-react-statics": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
- "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
- "requires": {
- "react-is": "^16.7.0"
- },
- "dependencies": {
- "react-is": {
- "version": "16.13.1",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
- }
- }
- },
- "hosted-git-info": {
- "version": "2.8.9",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
- "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
- "dev": true
- },
- "hpq": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/hpq/-/hpq-1.3.0.tgz",
- "integrity": "sha512-fvYTvdCFOWQupGxqkahrkA+ERBuMdzkxwtUdKrxR6rmMd4Pfl+iZ1QiQYoaZ0B/v0y59MOMnz3XFUWbT50/NWA=="
- },
- "html-encoding-sniffer": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz",
- "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==",
- "dev": true,
- "requires": {
- "whatwg-encoding": "^1.0.5"
- }
- },
- "html-escaper": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
- "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
- "dev": true
- },
- "http-proxy-agent": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz",
- "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==",
- "dev": true,
- "requires": {
- "@tootallnate/once": "1",
- "agent-base": "6",
- "debug": "4"
- }
- },
- "https-proxy-agent": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz",
- "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==",
- "dev": true,
- "requires": {
- "agent-base": "6",
- "debug": "4"
- }
- },
- "human-signals": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
- "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
- "dev": true
- },
- "iconv-lite": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
- "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
- "requires": {
- "safer-buffer": ">= 2.1.2 < 3.0.0"
- }
- },
- "ieee754": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
- "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
- },
- "ignore": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
- "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
- "dev": true
- },
- "immediate": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",
- "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps="
- },
- "import-fresh": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
- "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
- "requires": {
- "parent-module": "^1.0.0",
- "resolve-from": "^4.0.0"
- },
- "dependencies": {
- "resolve-from": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
- "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g=="
- }
- }
- },
- "import-local": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz",
- "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==",
- "dev": true,
- "requires": {
- "pkg-dir": "^4.2.0",
- "resolve-cwd": "^3.0.0"
- },
- "dependencies": {
- "pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "dev": true,
- "requires": {
- "find-up": "^4.0.0"
- }
- }
- }
- },
- "imurmurhash": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
- "dev": true
- },
- "inflight": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
- "dev": true,
- "requires": {
- "once": "^1.3.0",
- "wrappy": "1"
- }
- },
- "inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
- },
- "internal-slot": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz",
- "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==",
- "dev": true,
- "requires": {
- "get-intrinsic": "^1.1.0",
- "has": "^1.0.3",
- "side-channel": "^1.0.4"
- }
- },
- "interpret": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz",
- "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==",
- "dev": true
- },
- "is-arrayish": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
- "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0="
- },
- "is-bigint": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz",
- "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA=="
- },
- "is-boolean-object": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz",
- "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==",
- "requires": {
- "call-bind": "^1.0.2"
- }
- },
- "is-callable": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz",
- "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ=="
- },
- "is-ci": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.0.tgz",
- "integrity": "sha512-kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ==",
- "dev": true,
- "requires": {
- "ci-info": "^3.1.1"
- }
- },
- "is-core-module": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz",
- "integrity": "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==",
- "requires": {
- "has": "^1.0.3"
- }
- },
- "is-date-object": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz",
- "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A=="
- },
- "is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
- "dev": true
- },
- "is-fullwidth-code-point": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
- "dev": true
- },
- "is-generator-fn": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz",
- "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==",
- "dev": true
- },
- "is-glob": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
- "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
- "dev": true,
- "requires": {
- "is-extglob": "^2.1.1"
- }
- },
- "is-negative-zero": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz",
- "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w=="
- },
- "is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true
- },
- "is-number-object": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz",
- "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw=="
- },
- "is-path-cwd": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz",
- "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==",
- "dev": true
- },
- "is-path-in-cwd": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz",
- "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==",
- "dev": true,
- "requires": {
- "is-path-inside": "^2.1.0"
- }
- },
- "is-path-inside": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz",
- "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==",
- "dev": true,
- "requires": {
- "path-is-inside": "^1.0.2"
- }
- },
- "is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dev": true,
- "requires": {
- "isobject": "^3.0.1"
- }
- },
- "is-potential-custom-element-name": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz",
- "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==",
- "dev": true
- },
- "is-promise": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz",
- "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ=="
- },
- "is-regex": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz",
- "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==",
- "requires": {
- "call-bind": "^1.0.2",
- "has-symbols": "^1.0.2"
- }
- },
- "is-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
- "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==",
- "dev": true
- },
- "is-string": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz",
- "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w=="
- },
- "is-symbol": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
- "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
- "requires": {
- "has-symbols": "^1.0.2"
- }
- },
- "is-touch-device": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-touch-device/-/is-touch-device-1.0.1.tgz",
- "integrity": "sha512-LAYzo9kMT1b2p19L/1ATGt2XcSilnzNlyvq6c0pbPRVisLbAPpLqr53tIJS00kvrTkj0HtR8U7+u8X0yR8lPSw=="
- },
- "is-typedarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
- "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
- "dev": true
- },
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
- },
- "isexe": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
- "dev": true
- },
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- },
- "istanbul-lib-coverage": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz",
- "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==",
- "dev": true
- },
- "istanbul-lib-instrument": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz",
- "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==",
- "dev": true,
- "requires": {
- "@babel/core": "^7.7.5",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-coverage": "^3.0.0",
- "semver": "^6.3.0"
- }
- },
- "istanbul-lib-report": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
- "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==",
- "dev": true,
- "requires": {
- "istanbul-lib-coverage": "^3.0.0",
- "make-dir": "^3.0.0",
- "supports-color": "^7.1.0"
- }
- },
- "istanbul-lib-source-maps": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz",
- "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==",
- "dev": true,
- "requires": {
- "debug": "^4.1.1",
- "istanbul-lib-coverage": "^3.0.0",
- "source-map": "^0.6.1"
- },
- "dependencies": {
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- }
- }
- },
- "istanbul-reports": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz",
- "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==",
- "dev": true,
- "requires": {
- "html-escaper": "^2.0.0",
- "istanbul-lib-report": "^3.0.0"
- }
- },
- "jest": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest/-/jest-27.0.6.tgz",
- "integrity": "sha512-EjV8aETrsD0wHl7CKMibKwQNQc3gIRBXlTikBmmHUeVMKaPFxdcUIBfoDqTSXDoGJIivAYGqCWVlzCSaVjPQsA==",
- "dev": true,
- "requires": {
- "@jest/core": "^27.0.6",
- "import-local": "^3.0.2",
- "jest-cli": "^27.0.6"
- }
- },
- "jest-changed-files": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.0.6.tgz",
- "integrity": "sha512-BuL/ZDauaq5dumYh5y20sn4IISnf1P9A0TDswTxUi84ORGtVa86ApuBHqICL0vepqAnZiY6a7xeSPWv2/yy4eA==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "execa": "^5.0.0",
- "throat": "^6.0.1"
- }
- },
- "jest-circus": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.0.6.tgz",
- "integrity": "sha512-OJlsz6BBeX9qR+7O9lXefWoc2m9ZqcZ5Ohlzz0pTEAG4xMiZUJoacY8f4YDHxgk0oKYxj277AfOk9w6hZYvi1Q==",
- "dev": true,
- "requires": {
- "@jest/environment": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "co": "^4.6.0",
- "dedent": "^0.7.0",
- "expect": "^27.0.6",
- "is-generator-fn": "^2.0.0",
- "jest-each": "^27.0.6",
- "jest-matcher-utils": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-runtime": "^27.0.6",
- "jest-snapshot": "^27.0.6",
- "jest-util": "^27.0.6",
- "pretty-format": "^27.0.6",
- "slash": "^3.0.0",
- "stack-utils": "^2.0.3",
- "throat": "^6.0.1"
- }
- },
- "jest-cli": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.0.6.tgz",
- "integrity": "sha512-qUUVlGb9fdKir3RDE+B10ULI+LQrz+MCflEH2UJyoUjoHHCbxDrMxSzjQAPUMsic4SncI62ofYCcAvW6+6rhhg==",
- "dev": true,
- "requires": {
- "@jest/core": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/types": "^27.0.6",
- "chalk": "^4.0.0",
- "exit": "^0.1.2",
- "graceful-fs": "^4.2.4",
- "import-local": "^3.0.2",
- "jest-config": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-validate": "^27.0.6",
- "prompts": "^2.0.1",
- "yargs": "^16.0.3"
- }
- },
- "jest-config": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.0.6.tgz",
- "integrity": "sha512-JZRR3I1Plr2YxPBhgqRspDE2S5zprbga3swYNrvY3HfQGu7p/GjyLOqwrYad97tX3U3mzT53TPHVmozacfP/3w==",
- "dev": true,
- "requires": {
- "@babel/core": "^7.1.0",
- "@jest/test-sequencer": "^27.0.6",
- "@jest/types": "^27.0.6",
- "babel-jest": "^27.0.6",
- "chalk": "^4.0.0",
- "deepmerge": "^4.2.2",
- "glob": "^7.1.1",
- "graceful-fs": "^4.2.4",
- "is-ci": "^3.0.0",
- "jest-circus": "^27.0.6",
- "jest-environment-jsdom": "^27.0.6",
- "jest-environment-node": "^27.0.6",
- "jest-get-type": "^27.0.6",
- "jest-jasmine2": "^27.0.6",
- "jest-regex-util": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-runner": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-validate": "^27.0.6",
- "micromatch": "^4.0.4",
- "pretty-format": "^27.0.6"
- }
- },
- "jest-diff": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.0.6.tgz",
- "integrity": "sha512-Z1mqgkTCSYaFgwTlP/NUiRzdqgxmmhzHY1Tq17zL94morOHfHu3K4bgSgl+CR4GLhpV8VxkuOYuIWnQ9LnFqmg==",
- "dev": true,
- "requires": {
- "chalk": "^4.0.0",
- "diff-sequences": "^27.0.6",
- "jest-get-type": "^27.0.6",
- "pretty-format": "^27.0.6"
- }
- },
- "jest-docblock": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.0.6.tgz",
- "integrity": "sha512-Fid6dPcjwepTFraz0YxIMCi7dejjJ/KL9FBjPYhBp4Sv1Y9PdhImlKZqYU555BlN4TQKaTc+F2Av1z+anVyGkA==",
- "dev": true,
- "requires": {
- "detect-newline": "^3.0.0"
- }
- },
- "jest-each": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.0.6.tgz",
- "integrity": "sha512-m6yKcV3bkSWrUIjxkE9OC0mhBZZdhovIW5ergBYirqnkLXkyEn3oUUF/QZgyecA1cF1QFyTE8bRRl8Tfg1pfLA==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "chalk": "^4.0.0",
- "jest-get-type": "^27.0.6",
- "jest-util": "^27.0.6",
- "pretty-format": "^27.0.6"
- }
- },
- "jest-environment-jsdom": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.0.6.tgz",
- "integrity": "sha512-FvetXg7lnXL9+78H+xUAsra3IeZRTiegA3An01cWeXBspKXUhAwMM9ycIJ4yBaR0L7HkoMPaZsozCLHh4T8fuw==",
- "dev": true,
- "requires": {
- "@jest/environment": "^27.0.6",
- "@jest/fake-timers": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "jest-mock": "^27.0.6",
- "jest-util": "^27.0.6",
- "jsdom": "^16.6.0"
- }
- },
- "jest-environment-node": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.0.6.tgz",
- "integrity": "sha512-+Vi6yLrPg/qC81jfXx3IBlVnDTI6kmRr08iVa2hFCWmJt4zha0XW7ucQltCAPhSR0FEKEoJ3i+W4E6T0s9is0w==",
- "dev": true,
- "requires": {
- "@jest/environment": "^27.0.6",
- "@jest/fake-timers": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "jest-mock": "^27.0.6",
- "jest-util": "^27.0.6"
- }
- },
- "jest-get-type": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.0.6.tgz",
- "integrity": "sha512-XTkK5exIeUbbveehcSR8w0bhH+c0yloW/Wpl+9vZrjzztCPWrxhHwkIFpZzCt71oRBsgxmuUfxEqOYoZI2macg==",
- "dev": true
- },
- "jest-haste-map": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.0.6.tgz",
- "integrity": "sha512-4ldjPXX9h8doB2JlRzg9oAZ2p6/GpQUNAeiYXqcpmrKbP0Qev0wdZlxSMOmz8mPOEnt4h6qIzXFLDi8RScX/1w==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "@types/graceful-fs": "^4.1.2",
- "@types/node": "*",
- "anymatch": "^3.0.3",
- "fb-watchman": "^2.0.0",
- "fsevents": "^2.3.2",
- "graceful-fs": "^4.2.4",
- "jest-regex-util": "^27.0.6",
- "jest-serializer": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-worker": "^27.0.6",
- "micromatch": "^4.0.4",
- "walker": "^1.0.7"
- }
- },
- "jest-jasmine2": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.0.6.tgz",
- "integrity": "sha512-cjpH2sBy+t6dvCeKBsHpW41mjHzXgsavaFMp+VWRf0eR4EW8xASk1acqmljFtK2DgyIECMv2yCdY41r2l1+4iA==",
- "dev": true,
- "requires": {
- "@babel/traverse": "^7.1.0",
- "@jest/environment": "^27.0.6",
- "@jest/source-map": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "co": "^4.6.0",
- "expect": "^27.0.6",
- "is-generator-fn": "^2.0.0",
- "jest-each": "^27.0.6",
- "jest-matcher-utils": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-runtime": "^27.0.6",
- "jest-snapshot": "^27.0.6",
- "jest-util": "^27.0.6",
- "pretty-format": "^27.0.6",
- "throat": "^6.0.1"
- }
- },
- "jest-leak-detector": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.0.6.tgz",
- "integrity": "sha512-2/d6n2wlH5zEcdctX4zdbgX8oM61tb67PQt4Xh8JFAIy6LRKUnX528HulkaG6nD5qDl5vRV1NXejCe1XRCH5gQ==",
- "dev": true,
- "requires": {
- "jest-get-type": "^27.0.6",
- "pretty-format": "^27.0.6"
- }
- },
- "jest-matcher-utils": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.0.6.tgz",
- "integrity": "sha512-OFgF2VCQx9vdPSYTHWJ9MzFCehs20TsyFi6bIHbk5V1u52zJOnvF0Y/65z3GLZHKRuTgVPY4Z6LVePNahaQ+tA==",
- "dev": true,
- "requires": {
- "chalk": "^4.0.0",
- "jest-diff": "^27.0.6",
- "jest-get-type": "^27.0.6",
- "pretty-format": "^27.0.6"
- }
- },
- "jest-message-util": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.0.6.tgz",
- "integrity": "sha512-rBxIs2XK7rGy+zGxgi+UJKP6WqQ+KrBbD1YMj517HYN3v2BG66t3Xan3FWqYHKZwjdB700KiAJ+iES9a0M+ixw==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.12.13",
- "@jest/types": "^27.0.6",
- "@types/stack-utils": "^2.0.0",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.4",
- "micromatch": "^4.0.4",
- "pretty-format": "^27.0.6",
- "slash": "^3.0.0",
- "stack-utils": "^2.0.3"
- }
- },
- "jest-mock": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.0.6.tgz",
- "integrity": "sha512-lzBETUoK8cSxts2NYXSBWT+EJNzmUVtVVwS1sU9GwE1DLCfGsngg+ZVSIe0yd0ZSm+y791esiuo+WSwpXJQ5Bw==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "@types/node": "*"
- }
- },
- "jest-pnp-resolver": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz",
- "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==",
- "dev": true
- },
- "jest-regex-util": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.0.6.tgz",
- "integrity": "sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ==",
- "dev": true
- },
- "jest-resolve": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.0.6.tgz",
- "integrity": "sha512-yKmIgw2LgTh7uAJtzv8UFHGF7Dm7XfvOe/LQ3Txv101fLM8cx2h1QVwtSJ51Q/SCxpIiKfVn6G2jYYMDNHZteA==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "chalk": "^4.0.0",
- "escalade": "^3.1.1",
- "graceful-fs": "^4.2.4",
- "jest-pnp-resolver": "^1.2.2",
- "jest-util": "^27.0.6",
- "jest-validate": "^27.0.6",
- "resolve": "^1.20.0",
- "slash": "^3.0.0"
- }
- },
- "jest-resolve-dependencies": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.0.6.tgz",
- "integrity": "sha512-mg9x9DS3BPAREWKCAoyg3QucCr0n6S8HEEsqRCKSPjPcu9HzRILzhdzY3imsLoZWeosEbJZz6TKasveczzpJZA==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "jest-regex-util": "^27.0.6",
- "jest-snapshot": "^27.0.6"
- }
- },
- "jest-runner": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.0.6.tgz",
- "integrity": "sha512-W3Bz5qAgaSChuivLn+nKOgjqNxM7O/9JOJoKDCqThPIg2sH/d4A/lzyiaFgnb9V1/w29Le11NpzTJSzga1vyYQ==",
- "dev": true,
- "requires": {
- "@jest/console": "^27.0.6",
- "@jest/environment": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/transform": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "emittery": "^0.8.1",
- "exit": "^0.1.2",
- "graceful-fs": "^4.2.4",
- "jest-docblock": "^27.0.6",
- "jest-environment-jsdom": "^27.0.6",
- "jest-environment-node": "^27.0.6",
- "jest-haste-map": "^27.0.6",
- "jest-leak-detector": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-runtime": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-worker": "^27.0.6",
- "source-map-support": "^0.5.6",
- "throat": "^6.0.1"
- }
- },
- "jest-runtime": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.0.6.tgz",
- "integrity": "sha512-BhvHLRVfKibYyqqEFkybsznKwhrsu7AWx2F3y9G9L95VSIN3/ZZ9vBpm/XCS2bS+BWz3sSeNGLzI3TVQ0uL85Q==",
- "dev": true,
- "requires": {
- "@jest/console": "^27.0.6",
- "@jest/environment": "^27.0.6",
- "@jest/fake-timers": "^27.0.6",
- "@jest/globals": "^27.0.6",
- "@jest/source-map": "^27.0.6",
- "@jest/test-result": "^27.0.6",
- "@jest/transform": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/yargs": "^16.0.0",
- "chalk": "^4.0.0",
- "cjs-module-lexer": "^1.0.0",
- "collect-v8-coverage": "^1.0.0",
- "exit": "^0.1.2",
- "glob": "^7.1.3",
- "graceful-fs": "^4.2.4",
- "jest-haste-map": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-mock": "^27.0.6",
- "jest-regex-util": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-snapshot": "^27.0.6",
- "jest-util": "^27.0.6",
- "jest-validate": "^27.0.6",
- "slash": "^3.0.0",
- "strip-bom": "^4.0.0",
- "yargs": "^16.0.3"
- }
- },
- "jest-serializer": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.0.6.tgz",
- "integrity": "sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA==",
- "dev": true,
- "requires": {
- "@types/node": "*",
- "graceful-fs": "^4.2.4"
- }
- },
- "jest-snapshot": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.0.6.tgz",
- "integrity": "sha512-NTHaz8He+ATUagUgE7C/UtFcRoHqR2Gc+KDfhQIyx+VFgwbeEMjeP+ILpUTLosZn/ZtbNdCF5LkVnN/l+V751A==",
- "dev": true,
- "requires": {
- "@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.0.6",
- "@jest/types": "^27.0.6",
- "@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.0.6",
- "graceful-fs": "^4.2.4",
- "jest-diff": "^27.0.6",
- "jest-get-type": "^27.0.6",
- "jest-haste-map": "^27.0.6",
- "jest-matcher-utils": "^27.0.6",
- "jest-message-util": "^27.0.6",
- "jest-resolve": "^27.0.6",
- "jest-util": "^27.0.6",
- "natural-compare": "^1.4.0",
- "pretty-format": "^27.0.6",
- "semver": "^7.3.2"
- },
- "dependencies": {
- "semver": {
- "version": "7.3.5",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
- "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
- "dev": true,
- "requires": {
- "lru-cache": "^6.0.0"
- }
- }
- }
- },
- "jest-util": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.0.6.tgz",
- "integrity": "sha512-1JjlaIh+C65H/F7D11GNkGDDZtDfMEM8EBXsvd+l/cxtgQ6QhxuloOaiayt89DxUvDarbVhqI98HhgrM1yliFQ==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.4",
- "is-ci": "^3.0.0",
- "picomatch": "^2.2.3"
- }
- },
- "jest-validate": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.0.6.tgz",
- "integrity": "sha512-yhZZOaMH3Zg6DC83n60pLmdU1DQE46DW+KLozPiPbSbPhlXXaiUTDlhHQhHFpaqIFRrInko1FHXjTRpjWRuWfA==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "camelcase": "^6.2.0",
- "chalk": "^4.0.0",
- "jest-get-type": "^27.0.6",
- "leven": "^3.1.0",
- "pretty-format": "^27.0.6"
- },
- "dependencies": {
- "camelcase": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz",
- "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==",
- "dev": true
- }
- }
- },
- "jest-watcher": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.0.6.tgz",
- "integrity": "sha512-/jIoKBhAP00/iMGnTwUBLgvxkn7vsOweDrOTSPzc7X9uOyUtJIDthQBTI1EXz90bdkrxorUZVhJwiB69gcHtYQ==",
- "dev": true,
- "requires": {
- "@jest/test-result": "^27.0.6",
- "@jest/types": "^27.0.6",
- "@types/node": "*",
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.0.0",
- "jest-util": "^27.0.6",
- "string-length": "^4.0.1"
- }
- },
- "jest-worker": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.6.tgz",
- "integrity": "sha512-qupxcj/dRuA3xHPMUd40gr2EaAurFbkwzOh7wfPaeE9id7hyjURRQoqNfHifHK3XjJU6YJJUQKILGUnwGPEOCA==",
- "dev": true,
- "requires": {
- "@types/node": "*",
- "merge-stream": "^2.0.0",
- "supports-color": "^8.0.0"
- },
- "dependencies": {
- "supports-color": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
- "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "js-tokens": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
- },
- "js-yaml": {
- "version": "3.14.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
- "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
- "dev": true,
- "requires": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- }
- },
- "jsdom": {
- "version": "16.6.0",
- "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.6.0.tgz",
- "integrity": "sha512-Ty1vmF4NHJkolaEmdjtxTfSfkdb8Ywarwf63f+F8/mDD1uLSSWDxDuMiZxiPhwunLrn9LOSVItWj4bLYsLN3Dg==",
- "dev": true,
- "requires": {
- "abab": "^2.0.5",
- "acorn": "^8.2.4",
- "acorn-globals": "^6.0.0",
- "cssom": "^0.4.4",
- "cssstyle": "^2.3.0",
- "data-urls": "^2.0.0",
- "decimal.js": "^10.2.1",
- "domexception": "^2.0.1",
- "escodegen": "^2.0.0",
- "form-data": "^3.0.0",
- "html-encoding-sniffer": "^2.0.1",
- "http-proxy-agent": "^4.0.1",
- "https-proxy-agent": "^5.0.0",
- "is-potential-custom-element-name": "^1.0.1",
- "nwsapi": "^2.2.0",
- "parse5": "6.0.1",
- "saxes": "^5.0.1",
- "symbol-tree": "^3.2.4",
- "tough-cookie": "^4.0.0",
- "w3c-hr-time": "^1.0.2",
- "w3c-xmlserializer": "^2.0.0",
- "webidl-conversions": "^6.1.0",
- "whatwg-encoding": "^1.0.5",
- "whatwg-mimetype": "^2.3.0",
- "whatwg-url": "^8.5.0",
- "ws": "^7.4.5",
- "xml-name-validator": "^3.0.0"
- },
- "dependencies": {
- "acorn": {
- "version": "8.4.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.1.tgz",
- "integrity": "sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==",
- "dev": true
- }
- }
- },
- "jsesc": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
- "dev": true
- },
- "json-parse-better-errors": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
- "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
- "dev": true
- },
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
- },
- "json-schema-traverse": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
- "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
- "dev": true
- },
- "json-stable-stringify-without-jsonify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
- "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
- "dev": true
- },
- "json2php": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/json2php/-/json2php-0.0.4.tgz",
- "integrity": "sha1-a9haHdpqXdfpECK7JEA8wbfC7jQ=",
- "dev": true
- },
- "json5": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
- "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==",
- "dev": true,
- "requires": {
- "minimist": "^1.2.5"
- }
- },
- "jsx-ast-utils": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz",
- "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==",
- "dev": true,
- "requires": {
- "array-includes": "^3.1.2",
- "object.assign": "^4.1.2"
- }
- },
- "jszip": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.6.0.tgz",
- "integrity": "sha512-jgnQoG9LKnWO3mnVNBnfhkh0QknICd1FGSrXcgrl67zioyJ4wgx25o9ZqwNtrROSflGBCGYnJfjrIyRIby1OoQ==",
- "requires": {
- "lie": "~3.3.0",
- "pako": "~1.0.2",
- "readable-stream": "~2.3.6",
- "set-immediate-shim": "~1.0.1"
- }
- },
- "kind-of": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
- "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
- "dev": true
- },
- "kleur": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
- "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==",
- "dev": true
- },
- "language-subtag-registry": {
- "version": "0.3.21",
- "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz",
- "integrity": "sha512-L0IqwlIXjilBVVYKFT37X9Ih11Um5NEl9cbJIuU/SwP/zEEAbBPOnEeeuxVMf45ydWQRDQN3Nqc96OgbH1K+Pg==",
- "dev": true
- },
- "language-tags": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz",
- "integrity": "sha1-0yHbxNowuovzAk4ED6XBRmH5GTo=",
- "dev": true,
- "requires": {
- "language-subtag-registry": "~0.3.2"
- }
- },
- "leven": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
- "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==",
- "dev": true
- },
- "levn": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
- "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
- "dev": true,
- "requires": {
- "prelude-ls": "^1.2.1",
- "type-check": "~0.4.0"
- }
- },
- "lie": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz",
- "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==",
- "requires": {
- "immediate": "~3.0.5"
- }
- },
- "line-height": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/line-height/-/line-height-0.3.1.tgz",
- "integrity": "sha1-SxIF7d4YKHKl76PI9iCzGHqcVMk=",
- "requires": {
- "computed-style": "~0.1.3"
- }
- },
- "lines-and-columns": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz",
- "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA="
- },
- "load-json-file": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
- "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "parse-json": "^4.0.0",
- "pify": "^3.0.0",
- "strip-bom": "^3.0.0"
- },
- "dependencies": {
- "parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=",
- "dev": true,
- "requires": {
- "error-ex": "^1.3.1",
- "json-parse-better-errors": "^1.0.1"
- }
- },
- "pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
- "dev": true
- },
- "strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
- "dev": true
- }
- }
- },
- "loader-runner": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz",
- "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==",
- "dev": true
- },
- "loader-utils": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz",
- "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==",
- "dev": true,
- "requires": {
- "big.js": "^5.2.2",
- "emojis-list": "^3.0.0",
- "json5": "^1.0.1"
- },
- "dependencies": {
- "json5": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
- "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
- "dev": true,
- "requires": {
- "minimist": "^1.2.0"
- }
- }
- }
- },
- "locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "requires": {
- "p-locate": "^4.1.0"
- }
- },
- "lodash": {
- "version": "4.17.21",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
- "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
- },
- "lodash.clonedeep": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
- "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=",
- "dev": true
- },
- "lodash.debounce": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
- "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=",
- "dev": true
- },
- "lodash.merge": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
- "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
- "dev": true
- },
- "lodash.truncate": {
- "version": "4.4.2",
- "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz",
- "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=",
- "dev": true
- },
- "loose-envify": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
- "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
- "requires": {
- "js-tokens": "^3.0.0 || ^4.0.0"
- }
- },
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "make-dir": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
- "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
- "dev": true,
- "requires": {
- "semver": "^6.0.0"
- }
- },
- "makeerror": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz",
- "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=",
- "dev": true,
- "requires": {
- "tmpl": "1.0.x"
- }
- },
- "map-values": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/map-values/-/map-values-1.0.1.tgz",
- "integrity": "sha1-douOecAJvytk/ugG4ip7HEGQyZA=",
- "dev": true
- },
- "memize": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/memize/-/memize-1.1.0.tgz",
- "integrity": "sha512-K4FcPETOMTwe7KL2LK0orMhpOmWD2wRGwWWpbZy0fyArwsyIKR8YJVz8+efBAh3BO4zPqlSICu4vsLTRRqtFAg=="
- },
- "merge-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
- "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
- "dev": true
- },
- "micromatch": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
- "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
- "dev": true,
- "requires": {
- "braces": "^3.0.1",
- "picomatch": "^2.2.3"
- }
- },
- "micromodal": {
- "version": "0.4.6",
- "resolved": "https://registry.npmjs.org/micromodal/-/micromodal-0.4.6.tgz",
- "integrity": "sha512-2VDso2a22jWPpqwuWT/4RomVpoU3Bl9qF9D01xzwlNp5UVsImeA0gY4nSpF44vqcQtQOtkiMUV9EZkAJSRxBsg=="
- },
- "mime-db": {
- "version": "1.48.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz",
- "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==",
- "dev": true
- },
- "mime-types": {
- "version": "2.1.31",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz",
- "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==",
- "dev": true,
- "requires": {
- "mime-db": "1.48.0"
- }
- },
- "mimic-fn": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
- "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
- "dev": true
- },
- "minimatch": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
- "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "minimist": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
- "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
- "dev": true
- },
- "moment": {
- "version": "2.29.1",
- "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz",
- "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ=="
- },
- "moment-timezone": {
- "version": "0.5.33",
- "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.33.tgz",
- "integrity": "sha512-PTc2vcT8K9J5/9rDEPe5czSIKgLoGsH8UNpA4qZTVw0Vd/Uz19geE9abbIOQKaAQFcnQ3v5YEXrbSc5BpshH+w==",
- "requires": {
- "moment": ">= 2.9.0"
- }
- },
- "mousetrap": {
- "version": "1.6.5",
- "resolved": "https://registry.npmjs.org/mousetrap/-/mousetrap-1.6.5.tgz",
- "integrity": "sha512-QNo4kEepaIBwiT8CDhP98umTetp+JNfQYBWvC1pc6/OAibuXtRcxZ58Qz8skvEHYvURne/7R8T5VoOI7rDsEUA=="
- },
- "ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
- "dev": true
- },
- "natural-compare": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
- "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
- "dev": true
- },
- "neo-async": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
- "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
- "dev": true
- },
- "node-int64": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
- "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=",
- "dev": true
- },
- "node-modules-regexp": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz",
- "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=",
- "dev": true
- },
- "node-releases": {
- "version": "1.1.73",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz",
- "integrity": "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==",
- "dev": true
- },
- "normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "dev": true,
- "requires": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- },
- "dependencies": {
- "semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
- "dev": true
- }
- }
- },
- "normalize-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
- "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
- "dev": true
- },
- "normalize-range": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
- "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=",
- "dev": true
- },
- "normalize-wheel": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/normalize-wheel/-/normalize-wheel-1.0.1.tgz",
- "integrity": "sha1-rsiGr/2wRQcNhWRH32Ls+GFG7EU="
- },
- "npm-run-path": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
- "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
- "dev": true,
- "requires": {
- "path-key": "^3.0.0"
- }
- },
- "nwsapi": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz",
- "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==",
- "dev": true
- },
- "object-assign": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
- "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
- },
- "object-filter": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/object-filter/-/object-filter-1.0.2.tgz",
- "integrity": "sha1-rwt5f/6+r4pSxmN87b6IFs/sG8g=",
- "dev": true
- },
- "object-inspect": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz",
- "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg=="
- },
- "object-is": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz",
- "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- }
- },
- "object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA=="
- },
- "object.assign": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz",
- "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==",
- "requires": {
- "call-bind": "^1.0.0",
- "define-properties": "^1.1.3",
- "has-symbols": "^1.0.1",
- "object-keys": "^1.1.1"
- }
- },
- "object.entries": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz",
- "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.2"
- }
- },
- "object.fromentries": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz",
- "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.0-next.2",
- "has": "^1.0.3"
- }
- },
- "object.values": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz",
- "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.2"
- }
- },
- "once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
- "dev": true,
- "requires": {
- "wrappy": "1"
- }
- },
- "onetime": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
- "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
- "dev": true,
- "requires": {
- "mimic-fn": "^2.1.0"
- }
- },
- "optionator": {
- "version": "0.9.1",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
- "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
- "dev": true,
- "requires": {
- "deep-is": "^0.1.3",
- "fast-levenshtein": "^2.0.6",
- "levn": "^0.4.1",
- "prelude-ls": "^1.2.1",
- "type-check": "^0.4.0",
- "word-wrap": "^1.2.3"
- }
- },
- "p-each-series": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz",
- "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==",
- "dev": true
- },
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "requires": {
- "p-limit": "^2.2.0"
- }
- },
- "p-map": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz",
- "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==",
- "dev": true
- },
- "p-try": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
- "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
- },
- "pako": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
- "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw=="
- },
- "parent-module": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
- "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
- "requires": {
- "callsites": "^3.0.0"
- }
- },
- "parse-json": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
- "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
- "requires": {
- "@babel/code-frame": "^7.0.0",
- "error-ex": "^1.3.1",
- "json-parse-even-better-errors": "^2.3.0",
- "lines-and-columns": "^1.1.6"
- }
- },
- "parse5": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
- "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
- "dev": true
- },
- "path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true
- },
- "path-is-absolute": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
- "dev": true
- },
- "path-is-inside": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
- "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=",
- "dev": true
- },
- "path-key": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
- "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
- "dev": true
- },
- "path-parse": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
- },
- "path-type": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
- "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
- },
- "pegjs": {
- "version": "0.10.0",
- "resolved": "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz",
- "integrity": "sha1-z4uvrm7d/0tafvsYUmnqr0YQ3b0="
- },
- "phpegjs": {
- "version": "1.0.0-beta7",
- "resolved": "https://registry.npmjs.org/phpegjs/-/phpegjs-1.0.0-beta7.tgz",
- "integrity": "sha1-uLbthQGYB//Q7+ID4AKj5e2LTZQ="
- },
- "picomatch": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz",
- "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==",
- "dev": true
- },
- "pify": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
- "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
- "dev": true
- },
- "pinkie": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
- "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
- "dev": true
- },
- "pinkie-promise": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
- "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
- "dev": true,
- "requires": {
- "pinkie": "^2.0.0"
- }
- },
- "pirates": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz",
- "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==",
- "dev": true,
- "requires": {
- "node-modules-regexp": "^1.0.0"
- }
- },
- "pkg-dir": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz",
- "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=",
- "dev": true,
- "requires": {
- "find-up": "^2.1.0"
- },
- "dependencies": {
- "find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
- "dev": true,
- "requires": {
- "locate-path": "^2.0.0"
- }
- },
- "locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
- "dev": true,
- "requires": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "dev": true,
- "requires": {
- "p-try": "^1.0.0"
- }
- },
- "p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
- "dev": true,
- "requires": {
- "p-limit": "^1.1.0"
- }
- },
- "p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
- "dev": true
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true
- }
- }
- },
- "pkg-up": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz",
- "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=",
- "dev": true,
- "requires": {
- "find-up": "^2.1.0"
- },
- "dependencies": {
- "find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
- "dev": true,
- "requires": {
- "locate-path": "^2.0.0"
- }
- },
- "locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
- "dev": true,
- "requires": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "dev": true,
- "requires": {
- "p-try": "^1.0.0"
- }
- },
- "p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
- "dev": true,
- "requires": {
- "p-limit": "^1.1.0"
- }
- },
- "p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
- "dev": true
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true
- }
- }
- },
- "popmotion": {
- "version": "9.3.6",
- "resolved": "https://registry.npmjs.org/popmotion/-/popmotion-9.3.6.tgz",
- "integrity": "sha512-ZTbXiu6zIggXzIliMi8LGxXBF5ST+wkpXGEjeTUDUOCdSQ356hij/xjeUdv0F8zCQNeqB1+PR5/BB+gC+QLAPw==",
- "requires": {
- "framesync": "5.3.0",
- "hey-listen": "^1.0.8",
- "style-value-types": "4.1.4",
- "tslib": "^2.1.0"
- }
- },
- "postcss-value-parser": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz",
- "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==",
- "dev": true
- },
- "prelude-ls": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
- "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
- "dev": true
- },
- "pretty-format": {
- "version": "27.0.6",
- "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.0.6.tgz",
- "integrity": "sha512-8tGD7gBIENgzqA+UBzObyWqQ5B778VIFZA/S66cclyd5YkFLYs2Js7gxDKf0MXtTc9zcS7t1xhdfcElJ3YIvkQ==",
- "dev": true,
- "requires": {
- "@jest/types": "^27.0.6",
- "ansi-regex": "^5.0.0",
- "ansi-styles": "^5.0.0",
- "react-is": "^17.0.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
- "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
- "dev": true
- }
- }
- },
- "process-nextick-args": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
- "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
- },
- "progress": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
- "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
- "dev": true
- },
- "prompts": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.1.tgz",
- "integrity": "sha512-EQyfIuO2hPDsX1L/blblV+H7I0knhgAd82cVneCwcdND9B8AuCDuRcBH6yIcG4dFzlOUqbazQqwGjx5xmsNLuQ==",
- "dev": true,
- "requires": {
- "kleur": "^3.0.3",
- "sisteransi": "^1.0.5"
- }
- },
- "prop-types": {
- "version": "15.7.2",
- "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz",
- "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==",
- "requires": {
- "loose-envify": "^1.4.0",
- "object-assign": "^4.1.1",
- "react-is": "^16.8.1"
- },
- "dependencies": {
- "react-is": {
- "version": "16.13.1",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
- }
- }
- },
- "prop-types-exact": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/prop-types-exact/-/prop-types-exact-1.2.0.tgz",
- "integrity": "sha512-K+Tk3Kd9V0odiXFP9fwDHUYRyvK3Nun3GVyPapSIs5OBkITAm15W0CPFD/YKTkMUAbc0b9CUwRQp2ybiBIq+eA==",
- "requires": {
- "has": "^1.0.3",
- "object.assign": "^4.1.0",
- "reflect.ownkeys": "^0.2.0"
- }
- },
- "psl": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
- "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==",
- "dev": true
- },
- "punycode": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
- "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
- },
- "queue-microtask": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
- "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
- "dev": true
- },
- "randombytes": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
- "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "^5.1.0"
- }
- },
- "re-resizable": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/re-resizable/-/re-resizable-6.9.0.tgz",
- "integrity": "sha512-3cUDG81ylyqI0Pdgle/RHwwRYq0ORZzsUaySOCO8IbEtNyaRtrIHYm/jMQ5pjcNiKCxR3vsSymIQZHwJq4gg2Q==",
- "requires": {
- "fast-memoize": "^2.5.1"
- }
- },
- "react": {
- "version": "16.14.0",
- "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz",
- "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==",
- "requires": {
- "loose-envify": "^1.1.0",
- "object-assign": "^4.1.1",
- "prop-types": "^15.6.2"
- }
- },
- "react-addons-shallow-compare": {
- "version": "15.6.3",
- "resolved": "https://registry.npmjs.org/react-addons-shallow-compare/-/react-addons-shallow-compare-15.6.3.tgz",
- "integrity": "sha512-EDJbgKTtGRLhr3wiGDXK/+AEJ59yqGS+tKE6mue0aNXT6ZMR7VJbbzIiT6akotmHg1BLj46ElJSb+NBMp80XBg==",
- "requires": {
- "object-assign": "^4.1.0"
- }
- },
- "react-autosize-textarea": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/react-autosize-textarea/-/react-autosize-textarea-7.1.0.tgz",
- "integrity": "sha512-BHpjCDkuOlllZn3nLazY2F8oYO1tS2jHnWhcjTWQdcKiiMU6gHLNt/fzmqMSyerR0eTdKtfSIqtSeTtghNwS+g==",
- "requires": {
- "autosize": "^4.0.2",
- "line-height": "^0.3.1",
- "prop-types": "^15.5.6"
- }
- },
- "react-dates": {
- "version": "17.2.0",
- "resolved": "https://registry.npmjs.org/react-dates/-/react-dates-17.2.0.tgz",
- "integrity": "sha512-RDlerU8DdRRrlYS0MQ7Z9igPWABGLDwz6+ykBNff67RM3Sset2TDqeuOr+R5o00Ggn5U47GeLsGcSDxlZd9cHw==",
- "requires": {
- "airbnb-prop-types": "^2.10.0",
- "consolidated-events": "^1.1.1 || ^2.0.0",
- "is-touch-device": "^1.0.1",
- "lodash": "^4.1.1",
- "object.assign": "^4.1.0",
- "object.values": "^1.0.4",
- "prop-types": "^15.6.1",
- "react-addons-shallow-compare": "^15.6.2",
- "react-moment-proptypes": "^1.6.0",
- "react-outside-click-handler": "^1.2.0",
- "react-portal": "^4.1.5",
- "react-with-styles": "^3.2.0",
- "react-with-styles-interface-css": "^4.0.2"
- }
- },
- "react-dom": {
- "version": "17.0.2",
- "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz",
- "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==",
- "requires": {
- "loose-envify": "^1.1.0",
- "object-assign": "^4.1.1",
- "scheduler": "^0.20.2"
- }
- },
- "react-easy-crop": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/react-easy-crop/-/react-easy-crop-3.5.2.tgz",
- "integrity": "sha512-cwSGO/wk42XDpEyrdAcnQ6OJetVDZZO2ry1i19+kSGZQ750aN06RU9y9z95B5QI6sW3SnaWQRKv5r5GSqVV//g==",
- "requires": {
- "normalize-wheel": "^1.0.1",
- "tslib": "2.0.1"
- },
- "dependencies": {
- "tslib": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.1.tgz",
- "integrity": "sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ=="
- }
- }
- },
- "react-is": {
- "version": "17.0.2",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
- "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w=="
- },
- "react-moment-proptypes": {
- "version": "1.8.1",
- "resolved": "https://registry.npmjs.org/react-moment-proptypes/-/react-moment-proptypes-1.8.1.tgz",
- "integrity": "sha512-Er940DxWoObfIqPrZNfwXKugjxMIuk1LAuEzn23gytzV6hKS/sw108wibi9QubfMN4h+nrlje8eUCSbQRJo2fQ==",
- "requires": {
- "moment": ">=1.6.0"
- }
- },
- "react-native-url-polyfill": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/react-native-url-polyfill/-/react-native-url-polyfill-1.3.0.tgz",
- "integrity": "sha512-w9JfSkvpqqlix9UjDvJjm1EjSt652zVQ6iwCIj1cVVkwXf4jQhQgTNXY6EVTwuAmUjg6BC6k9RHCBynoLFo3IQ==",
- "requires": {
- "whatwg-url-without-unicode": "8.0.0-3"
- }
- },
- "react-outside-click-handler": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/react-outside-click-handler/-/react-outside-click-handler-1.3.0.tgz",
- "integrity": "sha512-Te/7zFU0oHpAnctl//pP3hEAeobfeHMyygHB8MnjP6sX5OR8KHT1G3jmLsV3U9RnIYo+Yn+peJYWu+D5tUS8qQ==",
- "requires": {
- "airbnb-prop-types": "^2.15.0",
- "consolidated-events": "^1.1.1 || ^2.0.0",
- "document.contains": "^1.0.1",
- "object.values": "^1.1.0",
- "prop-types": "^15.7.2"
- }
- },
- "react-portal": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/react-portal/-/react-portal-4.2.1.tgz",
- "integrity": "sha512-fE9kOBagwmTXZ3YGRYb4gcMy+kSA+yLO0xnPankjRlfBv4uCpFXqKPfkpsGQQR15wkZ9EssnvTOl1yMzbkxhPQ==",
- "requires": {
- "prop-types": "^15.5.8"
- }
- },
- "react-resize-aware": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/react-resize-aware/-/react-resize-aware-3.1.0.tgz",
- "integrity": "sha512-bIhHlxVTX7xKUz14ksXMEHjzCZPTpQZKZISY3nbTD273pDKPABGFNFBP6Tr42KECxzC5YQiKpMchjTVJCqaxpA=="
- },
- "react-spring": {
- "version": "8.0.27",
- "resolved": "https://registry.npmjs.org/react-spring/-/react-spring-8.0.27.tgz",
- "integrity": "sha512-nDpWBe3ZVezukNRandTeLSPcwwTMjNVu1IDq9qA/AMiUqHuRN4BeSWvKr3eIxxg1vtiYiOLy4FqdfCP5IoP77g==",
- "requires": {
- "@babel/runtime": "^7.3.1",
- "prop-types": "^15.5.8"
- }
- },
- "react-use-gesture": {
- "version": "9.1.3",
- "resolved": "https://registry.npmjs.org/react-use-gesture/-/react-use-gesture-9.1.3.tgz",
- "integrity": "sha512-CdqA2SmS/fj3kkS2W8ZU8wjTbVBAIwDWaRprX7OKaj7HlGwBasGEFggmk5qNklknqk9zK/h8D355bEJFTpqEMg=="
- },
- "react-with-direction": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/react-with-direction/-/react-with-direction-1.3.1.tgz",
- "integrity": "sha512-aGcM21ZzhqeXFvDCfPj0rVNYuaVXfTz5D3Rbn0QMz/unZe+CCiLHthrjQWO7s6qdfXORgYFtmS7OVsRgSk5LXQ==",
- "requires": {
- "airbnb-prop-types": "^2.10.0",
- "brcast": "^2.0.2",
- "deepmerge": "^1.5.2",
- "direction": "^1.0.2",
- "hoist-non-react-statics": "^3.3.0",
- "object.assign": "^4.1.0",
- "object.values": "^1.0.4",
- "prop-types": "^15.6.2"
- },
- "dependencies": {
- "deepmerge": {
- "version": "1.5.2",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.5.2.tgz",
- "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ=="
- }
- }
- },
- "react-with-styles": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/react-with-styles/-/react-with-styles-3.2.3.tgz",
- "integrity": "sha512-MTI1UOvMHABRLj5M4WpODfwnveHaip6X7QUMI2x6zovinJiBXxzhA9AJP7MZNaKqg1JRFtHPXZdroUC8KcXwlQ==",
- "requires": {
- "hoist-non-react-statics": "^3.2.1",
- "object.assign": "^4.1.0",
- "prop-types": "^15.6.2",
- "react-with-direction": "^1.3.0"
- }
- },
- "react-with-styles-interface-css": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/react-with-styles-interface-css/-/react-with-styles-interface-css-4.0.3.tgz",
- "integrity": "sha512-wE43PIyjal2dexxyyx4Lhbcb+E42amoYPnkunRZkb9WTA+Z+9LagbyxwsI352NqMdFmghR0opg29dzDO4/YXbw==",
- "requires": {
- "array.prototype.flat": "^1.2.1",
- "global-cache": "^1.2.1"
- }
- },
- "read-pkg": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
- "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=",
- "dev": true,
- "requires": {
- "load-json-file": "^4.0.0",
- "normalize-package-data": "^2.3.2",
- "path-type": "^3.0.0"
- },
- "dependencies": {
- "path-type": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
- "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
- "dev": true,
- "requires": {
- "pify": "^3.0.0"
- }
- },
- "pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
- "dev": true
- }
- }
- },
- "read-pkg-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz",
- "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=",
- "dev": true,
- "requires": {
- "find-up": "^2.0.0",
- "read-pkg": "^3.0.0"
- },
- "dependencies": {
- "find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
- "dev": true,
- "requires": {
- "locate-path": "^2.0.0"
- }
- },
- "locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
- "dev": true,
- "requires": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "dev": true,
- "requires": {
- "p-try": "^1.0.0"
- }
- },
- "p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
- "dev": true,
- "requires": {
- "p-limit": "^1.1.0"
- }
- },
- "p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
- "dev": true
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true
- }
- }
- },
- "readable-stream": {
- "version": "2.3.7",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
- "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "reakit": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/reakit/-/reakit-1.3.8.tgz",
- "integrity": "sha512-8SVejx6FUaFi2+Q9eXoDAd4wWi/xAn6v8JgXH8x2xnzye8pb6v5bYvegACVpYVZnrS5w/JUgMTGh1Xy8MkkPww==",
- "requires": {
- "@popperjs/core": "^2.5.4",
- "body-scroll-lock": "^3.1.5",
- "reakit-system": "^0.15.1",
- "reakit-utils": "^0.15.1",
- "reakit-warning": "^0.6.1"
- }
- },
- "reakit-system": {
- "version": "0.15.1",
- "resolved": "https://registry.npmjs.org/reakit-system/-/reakit-system-0.15.1.tgz",
- "integrity": "sha512-PkqfAyEohtcEu/gUvKriCv42NywDtUgvocEN3147BI45dOFAB89nrT7wRIbIcKJiUT598F+JlPXAZZVLWhc1Kg==",
- "requires": {
- "reakit-utils": "^0.15.1"
- }
- },
- "reakit-utils": {
- "version": "0.15.1",
- "resolved": "https://registry.npmjs.org/reakit-utils/-/reakit-utils-0.15.1.tgz",
- "integrity": "sha512-6cZgKGvOkAMQgkwU9jdYbHfkuIN1Pr+vwcB19plLvcTfVN0Or10JhIuj9X+JaPZyI7ydqTDFaKNdUcDP69o/+Q=="
- },
- "reakit-warning": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/reakit-warning/-/reakit-warning-0.6.1.tgz",
- "integrity": "sha512-poFUV0EyxB+CcV9uTNBAFmcgsnR2DzAbOTkld4Ul+QOKSeEHZB3b3+MoZQgcYHmbvG19Na1uWaM7ES+/Eyr8tQ==",
- "requires": {
- "reakit-utils": "^0.15.1"
- }
- },
- "rechoir": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz",
- "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==",
- "dev": true,
- "requires": {
- "resolve": "^1.9.0"
- }
- },
- "redux": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/redux/-/redux-4.1.0.tgz",
- "integrity": "sha512-uI2dQN43zqLWCt6B/BMGRMY6db7TTY4qeHHfGeKb3EOhmOKjU3KdWvNLJyqaHRksv/ErdNH7cFZWg9jXtewy4g==",
- "requires": {
- "@babel/runtime": "^7.9.2"
- }
- },
- "redux-multi": {
- "version": "0.1.12",
- "resolved": "https://registry.npmjs.org/redux-multi/-/redux-multi-0.1.12.tgz",
- "integrity": "sha1-KOH+XklnLLxb2KB/Cyrq8O+DVcI="
- },
- "reflect.ownkeys": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/reflect.ownkeys/-/reflect.ownkeys-0.2.0.tgz",
- "integrity": "sha1-dJrO7H8/34tj+SegSAnpDFwLNGA="
- },
- "regenerate": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
- "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
- "dev": true
- },
- "regenerate-unicode-properties": {
- "version": "8.2.0",
- "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz",
- "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==",
- "dev": true,
- "requires": {
- "regenerate": "^1.4.0"
- }
- },
- "regenerator-runtime": {
- "version": "0.13.9",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz",
- "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA=="
- },
- "regenerator-transform": {
- "version": "0.14.5",
- "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz",
- "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.8.4"
- }
- },
- "regexp.prototype.flags": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz",
- "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- }
- },
- "regexpp": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz",
- "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
- "dev": true
- },
- "regexpu-core": {
- "version": "4.7.1",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz",
- "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==",
- "dev": true,
- "requires": {
- "regenerate": "^1.4.0",
- "regenerate-unicode-properties": "^8.2.0",
- "regjsgen": "^0.5.1",
- "regjsparser": "^0.6.4",
- "unicode-match-property-ecmascript": "^1.0.4",
- "unicode-match-property-value-ecmascript": "^1.2.0"
- }
- },
- "regjsgen": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz",
- "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==",
- "dev": true
- },
- "regjsparser": {
- "version": "0.6.9",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.9.tgz",
- "integrity": "sha512-ZqbNRz1SNjLAiYuwY0zoXW8Ne675IX5q+YHioAGbCw4X96Mjl2+dcX9B2ciaeyYjViDAfvIjFpQjJgLttTEERQ==",
- "dev": true,
- "requires": {
- "jsesc": "~0.5.0"
- },
- "dependencies": {
- "jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
- "dev": true
- }
- }
- },
- "rememo": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/rememo/-/rememo-3.0.0.tgz",
- "integrity": "sha512-eWtut/7pqMRnSccbexb647iPjN7ir6Tmf4RG92ZVlykFEkHqGYy9tWnpHH3I+FS+WQ6lQ1i1iDgarYzGKgTcRQ=="
- },
- "require-directory": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
- "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I="
- },
- "require-from-string": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
- "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
- "dev": true
- },
- "require-main-filename": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
- "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
- },
- "resolve": {
- "version": "1.20.0",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz",
- "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==",
- "requires": {
- "is-core-module": "^2.2.0",
- "path-parse": "^1.0.6"
- }
- },
- "resolve-cwd": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
- "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
- "dev": true,
- "requires": {
- "resolve-from": "^5.0.0"
- }
- },
- "resolve-from": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
- "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
- "dev": true
- },
- "rimraf": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
- "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- },
- "run-parallel": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
- "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
- "dev": true,
- "requires": {
- "queue-microtask": "^1.2.2"
- }
- },
- "rungen": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/rungen/-/rungen-0.3.2.tgz",
- "integrity": "sha1-QAwJ6+kU57F+C27zJjQA/Cq8fLM="
- },
- "safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
- },
- "safer-buffer": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
- },
- "saxes": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz",
- "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==",
- "dev": true,
- "requires": {
- "xmlchars": "^2.2.0"
- }
- },
- "scheduler": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz",
- "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==",
- "requires": {
- "loose-envify": "^1.1.0",
- "object-assign": "^4.1.1"
- }
- },
- "schema-utils": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
- "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
- "dev": true,
- "requires": {
- "@types/json-schema": "^7.0.5",
- "ajv": "^6.12.4",
- "ajv-keywords": "^3.5.2"
- }
- },
- "select": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz",
- "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0="
- },
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- },
- "serialize-javascript": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz",
- "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==",
- "dev": true,
- "requires": {
- "randombytes": "^2.1.0"
- }
- },
- "set-blocking": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
- "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc="
- },
- "set-immediate-shim": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
- "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E="
- },
- "shallow-clone": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
- "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.2"
- }
- },
- "shebang-command": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
- "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
- "dev": true,
- "requires": {
- "shebang-regex": "^3.0.0"
- }
- },
- "shebang-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
- "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
- "dev": true
- },
- "showdown": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/showdown/-/showdown-1.9.1.tgz",
- "integrity": "sha512-9cGuS382HcvExtf5AHk7Cb4pAeQQ+h0eTr33V1mu+crYWV4KvWAw6el92bDrqGEk5d46Ai/fhbEUwqJ/mTCNEA==",
- "requires": {
- "yargs": "^14.2"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg=="
- },
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "requires": {
- "color-convert": "^1.9.0"
- }
- },
- "cliui": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
- "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
- "requires": {
- "string-width": "^3.1.0",
- "strip-ansi": "^5.2.0",
- "wrap-ansi": "^5.1.0"
- }
- },
- "color-convert": {
- "version": "1.9.3",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
- "requires": {
- "color-name": "1.1.3"
- }
- },
- "color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
- },
- "emoji-regex": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
- "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA=="
- },
- "find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "requires": {
- "locate-path": "^3.0.0"
- }
- },
- "is-fullwidth-code-point": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8="
- },
- "locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
- "requires": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "requires": {
- "p-limit": "^2.0.0"
- }
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU="
- },
- "string-width": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
- "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
- "requires": {
- "emoji-regex": "^7.0.1",
- "is-fullwidth-code-point": "^2.0.0",
- "strip-ansi": "^5.1.0"
- }
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- },
- "wrap-ansi": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
- "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
- "requires": {
- "ansi-styles": "^3.2.0",
- "string-width": "^3.0.0",
- "strip-ansi": "^5.0.0"
- }
- },
- "y18n": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
- "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="
- },
- "yargs": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz",
- "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==",
- "requires": {
- "cliui": "^5.0.0",
- "decamelize": "^1.2.0",
- "find-up": "^3.0.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^3.0.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^15.0.1"
- }
- },
- "yargs-parser": {
- "version": "15.0.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.3.tgz",
- "integrity": "sha512-/MVEVjTXy/cGAjdtQf8dW3V9b97bPN7rNn8ETj6BmAQL7ibC7O1Q9SPJbGjgh3SlwoBNXMzj/ZGIj8mBgl12YA==",
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
- }
- }
- },
- "side-channel": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
- "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.0",
- "get-intrinsic": "^1.0.2",
- "object-inspect": "^1.9.0"
- }
- },
- "signal-exit": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
- "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
- "dev": true
- },
- "simple-html-tokenizer": {
- "version": "0.5.11",
- "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.5.11.tgz",
- "integrity": "sha512-C2WEK/Z3HoSFbYq8tI7ni3eOo/NneSPRoPpcM7WdLjFOArFuyXEjAoCdOC3DgMfRyziZQ1hCNR4mrNdWEvD0og=="
- },
- "sisteransi": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
- "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==",
- "dev": true
- },
- "slash": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
- "dev": true
- },
- "slice-ansi": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
- "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.0.0",
- "astral-regex": "^2.0.0",
- "is-fullwidth-code-point": "^3.0.0"
- }
- },
- "source-list-map": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
- "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w="
- },
- "source-map-support": {
- "version": "0.5.19",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz",
- "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==",
- "dev": true,
- "requires": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- },
- "dependencies": {
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- }
- }
- },
- "spdx-correct": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
- "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
- "dev": true,
- "requires": {
- "spdx-expression-parse": "^3.0.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "spdx-exceptions": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
- "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
- "dev": true
- },
- "spdx-expression-parse": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
- "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
- "dev": true,
- "requires": {
- "spdx-exceptions": "^2.1.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "spdx-license-ids": {
- "version": "3.0.9",
- "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz",
- "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==",
- "dev": true
- },
- "sprintf-js": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz",
- "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug=="
- },
- "stack-utils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz",
- "integrity": "sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==",
- "dev": true,
- "requires": {
- "escape-string-regexp": "^2.0.0"
- },
- "dependencies": {
- "escape-string-regexp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
- "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
- "dev": true
- }
- }
- },
- "string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "requires": {
- "safe-buffer": "~5.1.0"
- }
- },
- "string-length": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz",
- "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==",
- "dev": true,
- "requires": {
- "char-regex": "^1.0.2",
- "strip-ansi": "^6.0.0"
- }
- },
- "string-width": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz",
- "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==",
- "dev": true,
- "requires": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.0"
- },
- "dependencies": {
- "emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
- "dev": true
- }
- }
- },
- "string.prototype.matchall": {
- "version": "4.0.5",
- "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz",
- "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.18.2",
- "get-intrinsic": "^1.1.1",
- "has-symbols": "^1.0.2",
- "internal-slot": "^1.0.3",
- "regexp.prototype.flags": "^1.3.1",
- "side-channel": "^1.0.4"
- }
- },
- "string.prototype.trimend": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz",
- "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- }
- },
- "string.prototype.trimstart": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz",
- "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==",
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- }
- },
- "strip-ansi": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
- "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
- "dev": true,
- "requires": {
- "ansi-regex": "^5.0.0"
- }
- },
- "strip-bom": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
- "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
- "dev": true
- },
- "strip-final-newline": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
- "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
- "dev": true
- },
- "strip-json-comments": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
- "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
- "dev": true
- },
- "style-value-types": {
- "version": "4.1.4",
- "resolved": "https://registry.npmjs.org/style-value-types/-/style-value-types-4.1.4.tgz",
- "integrity": "sha512-LCJL6tB+vPSUoxgUBt9juXIlNJHtBMy8jkXzUJSBzeHWdBu6lhzHqCvLVkXFGsFIlNa2ln1sQHya/gzaFmB2Lg==",
- "requires": {
- "hey-listen": "^1.0.8",
- "tslib": "^2.1.0"
- }
- },
- "stylis": {
- "version": "4.0.10",
- "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.10.tgz",
- "integrity": "sha512-m3k+dk7QeJw660eIKRRn3xPF6uuvHs/FFzjX3HQ5ove0qYsiygoAhwn5a3IYKaZPo5LrYD0rfVmtv1gNY1uYwg=="
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
- "supports-hyperlinks": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz",
- "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0",
- "supports-color": "^7.0.0"
- }
- },
- "symbol-tree": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz",
- "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
- "dev": true
- },
- "table": {
- "version": "6.7.1",
- "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz",
- "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==",
- "dev": true,
- "requires": {
- "ajv": "^8.0.1",
- "lodash.clonedeep": "^4.5.0",
- "lodash.truncate": "^4.4.2",
- "slice-ansi": "^4.0.0",
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0"
- },
- "dependencies": {
- "ajv": {
- "version": "8.6.2",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz",
- "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==",
- "dev": true,
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- }
- },
- "json-schema-traverse": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
- "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
- "dev": true
- }
- }
- },
- "tannin": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/tannin/-/tannin-1.2.0.tgz",
- "integrity": "sha512-U7GgX/RcSeUETbV7gYgoz8PD7Ni4y95pgIP/Z6ayI3CfhSujwKEBlGFTCRN+Aqnuyf4AN2yHL+L8x+TCGjb9uA==",
- "requires": {
- "@tannin/plural-forms": "^1.1.0"
- }
- },
- "tapable": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.0.tgz",
- "integrity": "sha512-FBk4IesMV1rBxX2tfiK8RAmogtWn53puLOQlvO8XuwlgxcYbP4mVPS9Ph4aeamSyyVjOl24aYWAuc8U5kCVwMw==",
- "dev": true
- },
- "terminal-link": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz",
- "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==",
- "dev": true,
- "requires": {
- "ansi-escapes": "^4.2.1",
- "supports-hyperlinks": "^2.0.0"
- }
- },
- "terser": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.1.tgz",
- "integrity": "sha512-b3e+d5JbHAe/JSjwsC3Zn55wsBIM7AsHLjKxT31kGCldgbpFePaFo+PiddtO6uwRZWRw7sPXmAN8dTW61xmnSg==",
- "dev": true,
- "requires": {
- "commander": "^2.20.0",
- "source-map": "~0.7.2",
- "source-map-support": "~0.5.19"
- },
- "dependencies": {
- "source-map": {
- "version": "0.7.3",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
- "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
- "dev": true
- }
- }
- },
- "terser-webpack-plugin": {
- "version": "5.1.4",
- "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.4.tgz",
- "integrity": "sha512-C2WkFwstHDhVEmsmlCxrXUtVklS+Ir1A7twrYzrDrQQOIMOaVAYykaoo/Aq1K0QRkMoY2hhvDQY1cm4jnIMFwA==",
- "dev": true,
- "requires": {
- "jest-worker": "^27.0.2",
- "p-limit": "^3.1.0",
- "schema-utils": "^3.0.0",
- "serialize-javascript": "^6.0.0",
- "source-map": "^0.6.1",
- "terser": "^5.7.0"
- },
- "dependencies": {
- "p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "dev": true,
- "requires": {
- "yocto-queue": "^0.1.0"
- }
- },
- "schema-utils": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
- "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
- "dev": true,
- "requires": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- }
- },
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- }
- }
- },
- "test-exclude": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
- "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
- "dev": true,
- "requires": {
- "@istanbuljs/schema": "^0.1.2",
- "glob": "^7.1.4",
- "minimatch": "^3.0.4"
- }
- },
- "text-table": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
- "dev": true
- },
- "throat": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz",
- "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==",
- "dev": true
- },
- "tiny-emitter": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
- "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q=="
- },
- "tinycolor2": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.2.tgz",
- "integrity": "sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA=="
- },
- "tmpl": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz",
- "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=",
- "dev": true
- },
- "to-fast-properties": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
- "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4="
- },
- "to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
- "requires": {
- "is-number": "^7.0.0"
- }
- },
- "tough-cookie": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz",
- "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==",
- "dev": true,
- "requires": {
- "psl": "^1.1.33",
- "punycode": "^2.1.1",
- "universalify": "^0.1.2"
- }
- },
- "tr46": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz",
- "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==",
- "dev": true,
- "requires": {
- "punycode": "^2.1.1"
- }
- },
- "traverse": {
- "version": "0.6.6",
- "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz",
- "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc="
- },
- "tsconfig-paths": {
- "version": "3.10.1",
- "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz",
- "integrity": "sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==",
- "dev": true,
- "requires": {
- "json5": "^2.2.0",
- "minimist": "^1.2.0",
- "strip-bom": "^3.0.0"
- },
- "dependencies": {
- "strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
- "dev": true
- }
- }
- },
- "tslib": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz",
- "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg=="
- },
- "turbo-combine-reducers": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/turbo-combine-reducers/-/turbo-combine-reducers-1.0.2.tgz",
- "integrity": "sha512-gHbdMZlA6Ym6Ur5pSH/UWrNQMIM9IqTH6SoL1DbHpqEdQ8i+cFunSmSlFykPt0eGQwZ4d/XTHOl74H0/kFBVWw=="
- },
- "type-check": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
- "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
- "dev": true,
- "requires": {
- "prelude-ls": "^1.2.1"
- }
- },
- "type-detect": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
- "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
- "dev": true
- },
- "type-fest": {
- "version": "0.21.3",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
- "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
- "dev": true
- },
- "typedarray-to-buffer": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
- "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
- "dev": true,
- "requires": {
- "is-typedarray": "^1.0.0"
- }
- },
- "unbox-primitive": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz",
- "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==",
- "requires": {
- "function-bind": "^1.1.1",
- "has-bigints": "^1.0.1",
- "has-symbols": "^1.0.2",
- "which-boxed-primitive": "^1.0.2"
- }
- },
- "unicode-canonical-property-names-ecmascript": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz",
- "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==",
- "dev": true
- },
- "unicode-match-property-ecmascript": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz",
- "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==",
- "dev": true,
- "requires": {
- "unicode-canonical-property-names-ecmascript": "^1.0.4",
- "unicode-property-aliases-ecmascript": "^1.0.4"
- }
- },
- "unicode-match-property-value-ecmascript": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz",
- "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==",
- "dev": true
- },
- "unicode-property-aliases-ecmascript": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz",
- "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==",
- "dev": true
- },
- "universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true
- },
- "uri-js": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
- "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
- "dev": true,
- "requires": {
- "punycode": "^2.1.0"
- }
- },
- "use-memo-one": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/use-memo-one/-/use-memo-one-1.1.2.tgz",
- "integrity": "sha512-u2qFKtxLsia/r8qG0ZKkbytbztzRb317XCkT7yP8wxL0tZ/CzK2G+WWie5vWvpyeP7+YoPIwbJoIHJ4Ba4k0oQ=="
- },
- "util-deprecate": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
- },
- "utility-types": {
- "version": "3.10.0",
- "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz",
- "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg=="
- },
- "uuid": {
- "version": "8.3.2",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
- "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg=="
- },
- "v8-compile-cache": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
- "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
- "dev": true
- },
- "v8-to-istanbul": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz",
- "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==",
- "dev": true,
- "requires": {
- "@types/istanbul-lib-coverage": "^2.0.1",
- "convert-source-map": "^1.6.0",
- "source-map": "^0.7.3"
- },
- "dependencies": {
- "source-map": {
- "version": "0.7.3",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
- "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
- "dev": true
- }
- }
- },
- "validate-npm-package-license": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
- "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
- "dev": true,
- "requires": {
- "spdx-correct": "^3.0.0",
- "spdx-expression-parse": "^3.0.0"
- }
- },
- "w3c-hr-time": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz",
- "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==",
- "dev": true,
- "requires": {
- "browser-process-hrtime": "^1.0.0"
- }
- },
- "w3c-xmlserializer": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz",
- "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==",
- "dev": true,
- "requires": {
- "xml-name-validator": "^3.0.0"
- }
- },
- "walker": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz",
- "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=",
- "dev": true,
- "requires": {
- "makeerror": "1.0.x"
- }
- },
- "watchpack": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.2.0.tgz",
- "integrity": "sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==",
- "dev": true,
- "requires": {
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.1.2"
- }
- },
- "webidl-conversions": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz",
- "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==",
- "dev": true
- },
- "webpack": {
- "version": "5.46.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.46.0.tgz",
- "integrity": "sha512-qxD0t/KTedJbpcXUmvMxY5PUvXDbF8LsThCzqomeGaDlCA6k998D8yYVwZMvO8sSM3BTEOaD4uzFniwpHaTIJw==",
- "dev": true,
- "requires": {
- "@types/eslint-scope": "^3.7.0",
- "@types/estree": "^0.0.50",
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/wasm-edit": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1",
- "acorn": "^8.4.1",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.8.0",
- "es-module-lexer": "^0.7.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.4",
- "json-parse-better-errors": "^1.0.2",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.1.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.1.3",
- "watchpack": "^2.2.0",
- "webpack-sources": "^2.3.1"
- },
- "dependencies": {
- "acorn": {
- "version": "8.4.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.1.tgz",
- "integrity": "sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==",
- "dev": true
- },
- "schema-utils": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
- "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
- "dev": true,
- "requires": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- }
- }
- }
- },
- "webpack-cli": {
- "version": "4.7.2",
- "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.7.2.tgz",
- "integrity": "sha512-mEoLmnmOIZQNiRl0ebnjzQ74Hk0iKS5SiEEnpq3dRezoyR3yPaeQZCMCe+db4524pj1Pd5ghZXjT41KLzIhSLw==",
- "dev": true,
- "requires": {
- "@discoveryjs/json-ext": "^0.5.0",
- "@webpack-cli/configtest": "^1.0.4",
- "@webpack-cli/info": "^1.3.0",
- "@webpack-cli/serve": "^1.5.1",
- "colorette": "^1.2.1",
- "commander": "^7.0.0",
- "execa": "^5.0.0",
- "fastest-levenshtein": "^1.0.12",
- "import-local": "^3.0.2",
- "interpret": "^2.2.0",
- "rechoir": "^0.7.0",
- "v8-compile-cache": "^2.2.0",
- "webpack-merge": "^5.7.3"
- },
- "dependencies": {
- "commander": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
- "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
- "dev": true
- }
- }
- },
- "webpack-merge": {
- "version": "5.8.0",
- "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz",
- "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==",
- "dev": true,
- "requires": {
- "clone-deep": "^4.0.1",
- "wildcard": "^2.0.0"
- }
- },
- "webpack-sources": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.1.tgz",
- "integrity": "sha512-y9EI9AO42JjEcrTJFOYmVywVZdKVUfOvDUPsJea5GIr1JOEGFVqwlY2K098fFoIjOkDzHn2AjRvM8dsBZu+gCA==",
- "dev": true,
- "requires": {
- "source-list-map": "^2.0.1",
- "source-map": "^0.6.1"
- },
- "dependencies": {
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- }
- }
- },
- "webpack-stats-plugin": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/webpack-stats-plugin/-/webpack-stats-plugin-1.0.3.tgz",
- "integrity": "sha512-tV/SQHl6lKfBahJcNDmz8JG1rpWPB9NEDQSMIoL74oVAotdxYljpgIsgLzgc1N9QrtA9KEA0moJVwQtNZv2aDA==",
- "dev": true
- },
- "whatwg-encoding": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz",
- "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==",
- "dev": true,
- "requires": {
- "iconv-lite": "0.4.24"
- },
- "dependencies": {
- "iconv-lite": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
- "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
- "dev": true,
- "requires": {
- "safer-buffer": ">= 2.1.2 < 3"
- }
- }
- }
- },
- "whatwg-mimetype": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz",
- "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==",
- "dev": true
- },
- "whatwg-url": {
- "version": "8.7.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz",
- "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==",
- "dev": true,
- "requires": {
- "lodash": "^4.7.0",
- "tr46": "^2.1.0",
- "webidl-conversions": "^6.1.0"
- }
- },
- "whatwg-url-without-unicode": {
- "version": "8.0.0-3",
- "resolved": "https://registry.npmjs.org/whatwg-url-without-unicode/-/whatwg-url-without-unicode-8.0.0-3.tgz",
- "integrity": "sha512-HoKuzZrUlgpz35YO27XgD28uh/WJH4B0+3ttFqRo//lmq+9T/mIOJ6kqmINI9HpUpz1imRC/nR/lxKpJiv0uig==",
- "requires": {
- "buffer": "^5.4.3",
- "punycode": "^2.1.1",
- "webidl-conversions": "^5.0.0"
- },
- "dependencies": {
- "webidl-conversions": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz",
- "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA=="
- }
- }
- },
- "which": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
- "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
- "dev": true,
- "requires": {
- "isexe": "^2.0.0"
- }
- },
- "which-boxed-primitive": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
- "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
- "requires": {
- "is-bigint": "^1.0.1",
- "is-boolean-object": "^1.1.0",
- "is-number-object": "^1.0.4",
- "is-string": "^1.0.5",
- "is-symbol": "^1.0.3"
- }
- },
- "which-module": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
- "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho="
- },
- "wildcard": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz",
- "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==",
- "dev": true
- },
- "word-wrap": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
- "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
- "dev": true
- },
- "wrap-ansi": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- }
- },
- "wrappy": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
- "dev": true
- },
- "write-file-atomic": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
- "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
- "dev": true,
- "requires": {
- "imurmurhash": "^0.1.4",
- "is-typedarray": "^1.0.0",
- "signal-exit": "^3.0.2",
- "typedarray-to-buffer": "^3.1.5"
- }
- },
- "ws": {
- "version": "7.5.3",
- "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz",
- "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==",
- "dev": true
- },
- "xml-name-validator": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz",
- "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==",
- "dev": true
- },
- "xmlchars": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz",
- "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==",
- "dev": true
- },
- "y18n": {
- "version": "5.0.8",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
- "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
- "dev": true
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
- "yaml": {
- "version": "1.10.2",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
- "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg=="
- },
- "yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "dev": true,
- "requires": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- }
- },
- "yargs-parser": {
- "version": "20.2.9",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
- "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
- "dev": true
- },
- "yocto-queue": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
- "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
- "dev": true
- }
- }
-}
diff --git a/package.json b/package.json
deleted file mode 100644
index 29c8e0de6..000000000
--- a/package.json
+++ /dev/null
@@ -1,108 +0,0 @@
-{
- "name": "publish-to-apple-news",
- "version": "2.2.1",
- "license": "GPLv3",
- "main": "index.php",
- "engines": {
- "node": "14",
- "npm": "7"
- },
- "browserslist": [
- "defaults",
- "not IE 11"
- ],
- "scripts": {
- "preinstall": "npx check-node-version --package",
- "build": "npx check-node-version --package && webpack --mode=production",
- "dev": "npx check-node-version --package && webpack --mode=development --watch",
- "lint": "npx check-node-version --package && eslint --ext .jsx --ext .js .",
- "lint:fix": "npx check-node-version --package && eslint --ext .jsx --ext .js . --fix",
- "scaffold": "scaffold dir ./scaffold --theme=./",
- "test": "npx check-node-version --package && jest",
- "test:watch": "npx check-node-version --package && jest --watch"
- },
- "devDependencies": {
- "@babel/core": "^7.14.8",
- "@babel/eslint-parser": "^7.14.7",
- "@babel/preset-env": "^7.14.8",
- "@babel/preset-react": "^7.14.5",
- "@wordpress/dependency-extraction-webpack-plugin": "^3.1.3",
- "autoprefixer": "^10.3.1",
- "babel-jest": "^27.0.6",
- "babel-loader": "^8.2.2",
- "chalk": "^4.1.1",
- "check-node-version": "^4.1.0",
- "clean-webpack-plugin": "^4.0.0-alpha.0",
- "eslint": "^7.31.0",
- "eslint-config-airbnb": "^18.2.1",
- "eslint-plugin-import": "^2.23.4",
- "eslint-plugin-jsx-a11y": "^6.4.1",
- "eslint-plugin-react": "^7.24.0",
- "eslint-plugin-react-hooks": "^4.2.0",
- "jest": "^27.0.6",
- "webpack": "^5.46.0",
- "webpack-cli": "^4.7.2",
- "webpack-stats-plugin": "^1.0.3"
- },
- "dependencies": {
- "@wordpress/a11y": "^3.1.0",
- "@wordpress/annotations": "^2.1.0",
- "@wordpress/api-fetch": "^5.1.0",
- "@wordpress/autop": "^3.1.0",
- "@wordpress/blob": "^3.1.0",
- "@wordpress/block-directory": "^2.1.2",
- "@wordpress/block-editor": "^6.1.0",
- "@wordpress/block-library": "^3.2.1",
- "@wordpress/block-serialization-default-parser": "^4.1.0",
- "@wordpress/block-serialization-spec-parser": "^4.1.0",
- "@wordpress/blocks": "^9.1.0",
- "@wordpress/components": "^14.1.0",
- "@wordpress/compose": "^4.1.0",
- "@wordpress/core-data": "^3.1.1",
- "@wordpress/customize-widgets": "^1.0.1",
- "@wordpress/data": "^5.1.0",
- "@wordpress/data-controls": "^2.1.0",
- "@wordpress/date": "^4.1.0",
- "@wordpress/deprecated": "^3.1.0",
- "@wordpress/dom": "^3.1.0",
- "@wordpress/dom-ready": "^3.1.0",
- "@wordpress/edit-post": "^4.1.2",
- "@wordpress/edit-site": "^2.1.2",
- "@wordpress/edit-widgets": "^2.1.2",
- "@wordpress/editor": "^10.1.1",
- "@wordpress/element": "^3.1.0",
- "@wordpress/escape-html": "^2.1.0",
- "@wordpress/format-library": "^2.1.0",
- "@wordpress/hooks": "^3.1.0",
- "@wordpress/html-entities": "^3.1.0",
- "@wordpress/i18n": "^4.1.0",
- "@wordpress/icons": "^4.0.0",
- "@wordpress/interface": "^3.1.0",
- "@wordpress/is-shallow-equal": "^4.1.0",
- "@wordpress/keyboard-shortcuts": "^2.1.0",
- "@wordpress/keycodes": "^3.1.0",
- "@wordpress/list-reusable-blocks": "^2.1.0",
- "@wordpress/media-utils": "^2.1.0",
- "@wordpress/notices": "^3.1.0",
- "@wordpress/nux": "^4.1.0",
- "@wordpress/plugins": "^3.1.0",
- "@wordpress/primitives": "^2.1.0",
- "@wordpress/priority-queue": "^2.1.0",
- "@wordpress/react-i18n": "^2.1.0",
- "@wordpress/redux-routine": "^4.1.0",
- "@wordpress/reusable-blocks": "^2.1.1",
- "@wordpress/rich-text": "^4.1.0",
- "@wordpress/server-side-render": "^2.1.0",
- "@wordpress/shortcode": "^3.1.0",
- "@wordpress/token-list": "^2.1.0",
- "@wordpress/url": "^3.1.0",
- "@wordpress/viewport": "^3.1.0",
- "@wordpress/warning": "^2.1.0",
- "@wordpress/widgets": "^1.1.1",
- "@wordpress/wordcount": "^3.1.0",
- "classnames": "^2.3.1",
- "dompurify": "^2.3.0",
- "prop-types": "^15.7.2",
- "react": "^16.13.1"
- }
-}
diff --git a/phpcs.xml.dist b/phpcs.xml.dist
deleted file mode 100644
index 5d441dd51..000000000
--- a/phpcs.xml.dist
+++ /dev/null
@@ -1,97 +0,0 @@
-
-
- Sniffs for the coding standards of the Publish to Apple News plugin.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- .
-
-
- *.min.js
- bin/
- tests/
-
-
- ^build/*
-
-
- /node_modules/*
- /vendor/*
-
-
- assets/
- webpack.config.js
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 0
-
-
diff --git a/phpunit.xml.dist b/phpunit.xml.dist
deleted file mode 100644
index 521f77d93..000000000
--- a/phpunit.xml.dist
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
-
- ./tests/
-
-
-
diff --git a/tests/admin/apple-actions/index/test-class-delete.php b/tests/admin/apple-actions/index/test-class-delete.php
deleted file mode 100644
index 3e8dac889..000000000
--- a/tests/admin/apple-actions/index/test-class-delete.php
+++ /dev/null
@@ -1,56 +0,0 @@
-prophet = new \Prophecy\Prophet;
- $this->settings = new Settings();
- $this->settings->set( 'api_key', 'foo' );
- $this->settings->set( 'api_secret', 'bar' );
- $this->settings->set( 'api_channel', 'baz' );
- }
-
- public function tearDown() {
- $this->prophet->checkPredictions();
- }
-
- public function testActionPerform() {
- $remote_id = uniqid();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->delete_article( $remote_id )
- ->shouldBeCalled();
-
- // Create post with dummy remote id
- $post_id = $this->factory->post->create();
- update_post_meta( $post_id, 'apple_news_api_id', $remote_id );
-
- $action = new Delete( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- $this->assertNotEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- }
-
- public function testActionPerformWhenNotPushed() {
- // Expect an exception
- $this->setExpectedException( '\Apple_Actions\Action_Exception', 'This post has not been pushed to Apple News, cannot delete.' );
-
- $api = $this->prophet->prophesize( '\Push_API\API' );
- $post_id = $this->factory->post->create();
-
- $action = new Delete( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
- }
-
-}
-
diff --git a/tests/admin/apple-actions/index/test-class-export.php b/tests/admin/apple-actions/index/test-class-export.php
deleted file mode 100644
index e9167e700..000000000
--- a/tests/admin/apple-actions/index/test-class-export.php
+++ /dev/null
@@ -1,570 +0,0 @@
-',
- ],
- [
- '[bc_video video_id="1234567890123" account_id="1234567890" player_id="abcd1234-ef56-ab78-cd90-efa1234567890" embed="in-page" padding_top="56%" autoplay="" min_width="0px" playsinline="" picture_in_picture="" max_width="640px" mute="" width="100%" height="100%" ]',
- ],
- ];
- }
-
- /**
- * A filter to ensure that the is_exporting flag is set during export.
- *
- * @access public
- * @return string The filtered content.
- */
- public function filterTheContentTestIsExporting() {
- return apple_news_is_exporting() ? 'is exporting' : 'is not exporting';
- }
-
- /**
- * Tests Brightcove video support.
- *
- * @param string $post_content The post content to load for the test.
- *
- * @dataProvider dataProviderBrightcoveVideo
- */
- public function testBrightcoveVideo( $post_content ) {
- $post_id = self::factory()->post->create(
- [
- 'post_content' => $post_content,
- ]
- );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'video', $json['components'][2]['role'] );
- $this->assertEquals( 'https://edge.api.brightcove.com/playback/v1/accounts/1234567890/videos/1234567890123', $json['components'][2]['URL'] );
- $this->assertEquals( 'https://cf-images.us-east-1.prod.boltdns.net/v1/jit/1234567890/abcd1234-ef56-ab78-cd90-efabcd123456/main/1280x720/1s234ms/match/image.jpg', $json['components'][2]['stillURL'] );
- }
-
- /**
- * Tests the ability to include a caption with a cover image.
- */
- public function testCoverWithCaption() {
- $this->set_theme_settings( [ 'cover_caption' => true ] );
-
- // Create dummy post and attachment.
- $post_id = self::factory()->post->create();
- $image = $this->get_new_attachment( $post_id, 'Test Caption' );
-
- // Set the image as the featured image for the post.
- set_post_thumbnail( $post_id, $image );
-
- // Run the export and check the result.
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'photo', $json['components'][0]['components'][0]['role'] );
- $this->assertEquals( wp_get_attachment_url( $image ), $json['components'][0]['components'][0]['URL'] );
- $this->assertEquals( 'Test Caption', $json['components'][0]['components'][0]['caption']['text'] );
- $this->assertEquals( 'caption', $json['components'][0]['components'][1]['role'] );
- $this->assertEquals( 'Test Caption', $json['components'][0]['components'][1]['text'] );
-
- // Set cover image and caption via postmeta and ensure it takes priority.
- $image2 = $this->get_new_attachment();
- update_post_meta( $post_id, 'apple_news_coverimage', $image2 );
- update_post_meta( $post_id, 'apple_news_coverimage_caption', 'Test Caption 2' );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'photo', $json['components'][0]['components'][0]['role'] );
- $this->assertEquals( wp_get_attachment_url( $image2 ), $json['components'][0]['components'][0]['URL'] );
- $this->assertEquals( 'Test Caption 2', $json['components'][0]['components'][0]['caption']['text'] );
- $this->assertEquals( 'caption', $json['components'][0]['components'][1]['role'] );
- $this->assertEquals( 'Test Caption 2', $json['components'][0]['components'][1]['text'] );
- }
-
- public function testHasExcerpt() {
- $title = 'My Title';
- $excerpt = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tristique quis justo sit amet eleifend. Praesent id metus semper, fermentum nibh at, malesuada enim. Mauris eget faucibus lectus. Vivamus iaculis eget urna non porttitor. Donec in dignissim neque. Vivamus ut ornare magna. Nulla eros nisi, maximus nec neque at, condimentum lobortis leo. Fusce in augue...';
-
- $post_id = $this->factory->post->create( array(
- 'post_title' => $title,
- 'post_content' => '',
- 'post_excerpt' => $excerpt,
- ) );
-
- $export = new Export( $this->settings, $post_id );
- $exporter = $export->fetch_exporter();
- $exporter_content = $exporter->get_content();
-
- $this->assertEquals( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tristique quis justo sit amet eleifend. Praesent id metus semper, fermentum nibh at, malesuada enim. Mauris eget faucibus lectus. Vivamus iaculis eget urna non porttitor. Donec in dignissim neque. Vivamus ut ornare magna. Nulla eros nisi, maximus nec neque at, condimentum lobortis leo. Fusce in augue...', $exporter_content->intro() );
- }
-
- public function testNoExcerpt() {
- $title = 'My Title';
- $content = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tristique quis justo sit amet eleifend. Praesent id metus semper, fermentum nibh at, malesuada enim. Mauris eget faucibus lectus. Vivamus iaculis eget urna non porttitor. Donec in dignissim neque. Vivamus ut ornare magna. Nulla eros nisi, maximus nec neque at, condimentum lobortis leo. Fusce in augue arcu. Curabitur lacus elit, venenatis a laoreet sit amet, imperdiet ac lorem. Curabitur sed leo sed ligula tempor feugiat. Cras in tellus et elit volutpat.
';
-
- $post_id = $this->factory->post->create( array(
- 'post_title' => $title,
- 'post_content' => $content,
- 'post_excerpt' => '',
- ) );
-
- $export = new Export( $this->settings, $post_id );
- $exporter = $export->fetch_exporter();
- $exporter_content = $exporter->get_content();
-
- $this->assertEquals( '', $exporter_content->intro() );
- }
-
- public function testShortcodeInExcerpt() {
- $title = 'My Title';
- $content = '[caption id="attachment_12345" align="aligncenter" width="500"]Test[/caption]Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tristique quis justo sit amet eleifend. Praesent id metus semper, fermentum nibh at, malesuada enim. Mauris eget faucibus lectus. Vivamus iaculis eget urna non porttitor. Donec in dignissim neque. Vivamus ut ornare magna. Nulla eros nisi, maximus nec neque at, condimentum lobortis leo. Fusce in augue arcu. Curabitur lacus elit, venenatis a laoreet sit amet, imperdiet ac lorem. Curabitur sed leo sed ligula tempor feugiat. Cras in tellus et elit volutpat.
';
-
- $post_id = $this->factory->post->create( array(
- 'post_title' => $title,
- 'post_content' => $content,
- 'post_excerpt' => '',
- ) );
-
- $export = new Export( $this->settings, $post_id );
- $exporter = $export->fetch_exporter();
- $exporter_content = $exporter->get_content();
-
- $this->assertEquals( '', $exporter_content->intro() );
- }
-
- public function testBylineFormat() {
- $user_id = $this->factory->user->create( array(
- 'role' => 'administrator',
- 'display_name' => 'Testuser',
- ) );
-
- $title = 'My Title';
- $content = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tristique quis justo sit amet eleifend. Praesent id metus semper, fermentum nibh at, malesuada enim. Mauris eget faucibus lectus. Vivamus iaculis eget urna non porttitor. Donec in dignissim neque. Vivamus ut ornare magna. Nulla eros nisi, maximus nec neque at, condimentum lobortis leo. Fusce in augue arcu. Curabitur lacus elit, venenatis a laoreet sit amet, imperdiet ac lorem. Curabitur sed leo sed ligula tempor feugiat. Cras in tellus et elit volutpat.
';
-
- $post_id = $this->factory->post->create( array(
- 'post_title' => $title,
- 'post_content' => $content,
- 'post_excerpt' => '',
- 'post_author' => $user_id,
- 'post_date' => '2016-08-26 12:00',
- ) );
-
- $export = new Export( $this->settings, $post_id );
- $exporter = $export->fetch_exporter();
- $exporter_content = $exporter->get_content();
-
- $this->assertEquals( 'by Testuser | Aug 26, 2016 | 12:00 PM', $exporter_content->byline() );
- }
-
- public function testBylineFormatWithHashtag() {
- $user_id = $this->factory->user->create( array(
- 'role' => 'administrator',
- 'display_name' => '#Testuser',
- ) );
-
- $title = 'My Title';
- $content = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tristique quis justo sit amet eleifend. Praesent id metus semper, fermentum nibh at, malesuada enim. Mauris eget faucibus lectus. Vivamus iaculis eget urna non porttitor. Donec in dignissim neque. Vivamus ut ornare magna. Nulla eros nisi, maximus nec neque at, condimentum lobortis leo. Fusce in augue arcu. Curabitur lacus elit, venenatis a laoreet sit amet, imperdiet ac lorem. Curabitur sed leo sed ligula tempor feugiat. Cras in tellus et elit volutpat.
';
-
- $post_id = $this->factory->post->create( array(
- 'post_title' => $title,
- 'post_content' => $content,
- 'post_excerpt' => '',
- 'post_author' => $user_id,
- 'post_date' => '2016-08-26 12:00',
- ) );
-
- $export = new Export( $this->settings, $post_id );
- $exporter = $export->fetch_exporter();
- $exporter_content = $exporter->get_content();
-
- $this->assertEquals( 'by #Testuser | Aug 26, 2016 | 12:00 PM', $exporter_content->byline() );
- }
-
- public function testRemoveEntities() {
- $post_id = $this->factory->post->create( array(
- 'post_title' => 'Test Title',
- 'post_content' => '&Lorem ipsum dolor sit amet & consectetur adipiscing elit.&
',
- 'post_date' => '2016-08-26 12:00',
- ) );
-
- // Set HTML content format.
- $this->settings->html_support = 'yes';
-
- $export = new Export( $this->settings, $post_id );
- $exporter = $export->fetch_exporter();
- $exporter_content = $exporter->get_content();
-
- $this->assertEquals(
- '&Lorem ipsum dolor sit amet & consectetur adipiscing elit.&
',
- str_replace( array( "\n","\r" ), '', $exporter_content->content() )
- );
-
- // Set Markdown content format.
- $this->settings->html_support = 'no';
-
- $markdown_export = new Export( $this->settings, $post_id );
- $markdown_exporter = $markdown_export->fetch_exporter();
- $markdown_exporter_content = $markdown_exporter->get_content();
- $this->assertEquals(
- '&Lorem ipsum dolor sit amet & consectetur adipiscing elit.&
',
- str_replace( array( "\n","\r" ), '', $markdown_exporter_content->content() )
- );
- }
-
- /**
- * Tests mapping taxonomy terms to Apple News sections.
- */
- public function test_section_mapping() {
-
- // Create a post.
- $post_id = self::factory()->post->create();
-
- // Create a term and add it to the post.
- $term_id = self::factory()->term->create(
- [
- 'name' => 'news',
- 'taxonomy' => 'category',
- ]
- );
- wp_set_post_terms( $post_id, [ $term_id ], 'category' );
-
- // Create a taxonomy map.
- update_option(
- \Admin_Apple_Sections::TAXONOMY_MAPPING_KEY,
- [
- 'aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee' => [],
- 'abcdef01-2345-6789-abcd-ef0123567890' => [ $term_id ],
- 'bcdef012-3456-7890-abcd-ef0123567890' => [],
- ]
- );
-
- // Cache as a transient to bypass the API call.
- set_transient(
- 'apple_news_sections',
- [
- (object) [
- 'createdAt' => '2017-01-01T00:00:00Z',
- 'id' => 'aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee',
- 'isDefault' => true,
- 'links' => (object) [
- 'channel' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef012356789a',
- 'self' => 'https://news-api.apple.com/channels/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee',
- ],
- 'modifiedAt' => '2017-01-01T00:00:00Z',
- 'name' => 'Main',
- 'shareUrl' => 'https://apple.news/AAAAAAAAAA-BBBBBBBBBBBB',
- 'type' => 'section',
- ],
- (object) [
- 'createdAt' => '2017-01-01T00:00:00Z',
- 'id' => 'abcdef01-2345-6789-abcd-ef0123567890',
- 'isDefault' => false,
- 'links' => (object) [
- 'channel' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef012356789a',
- 'self' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef0123567890',
- ],
- 'modifiedAt' => '2017-01-01T00:00:00Z',
- 'name' => 'News',
- 'shareUrl' => 'https://apple.news/AbCdEfGhIj-KlMnOpQrStUv',
- 'type' => 'section',
- ],
- (object) [
- 'createdAt' => '2017-01-01T00:00:00Z',
- 'id' => 'bcdef012-3456-7890-abcd-ef0123567890',
- 'isDefault' => false,
- 'links' => (object) [
- 'channel' => 'https://news-api.apple.com/channels/bcdef012-3456-7890-abcd-ef012356789a',
- 'self' => 'https://news-api.apple.com/channels/bcdef012-3456-7890-abcd-ef0123567890',
- ],
- 'modifiedAt' => '2017-01-01T00:00:00Z',
- 'name' => 'Opinion',
- 'shareUrl' => 'https://apple.news/bCdEfGhIjK-lMnOpQrStUvW',
- 'type' => 'section',
- ],
- ]
- );
-
- // Get sections for the post.
- $sections = \Admin_Apple_Sections::get_sections_for_post( $post_id );
-
- // Check that the correct mapping was returned.
- $this->assertEquals(
- $sections,
- [ 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef0123567890' ]
- );
-
- // Add an empty value for postmeta for manual section mapping.
- add_post_meta( $post_id, 'apple_news_sections', [] );
-
- // Ensure that the automatic section mapping works correctly.
- $sections = \Admin_Apple_Sections::get_sections_for_post( $post_id );
- $this->assertEquals(
- $sections,
- [ 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef0123567890' ]
- );
-
- // Set a manual mapping and ensure that it works properly.
- update_post_meta( $post_id, 'apple_news_sections', [ 'https://news-api.apple.com/channels/bcdef012-3456-7890-abcd-ef0123567890' ] );
- $sections = \Admin_Apple_Sections::get_sections_for_post( $post_id );
- $this->assertEquals(
- $sections,
- [ 'https://news-api.apple.com/channels/bcdef012-3456-7890-abcd-ef0123567890' ]
- );
-
- // Remove the transient and the map.
- delete_option( \Admin_Apple_Sections::TAXONOMY_MAPPING_KEY );
- delete_transient( 'apple_news_sections' );
- }
-
- /**
- * Tests the behavior of theme mapping by ensuring that a post with a
- * category that is mapped to a particular section also gets the theme
- * that is mapped to that section.
- */
- public function testThemeMapping() {
-
- // Load an additional example theme to facilitate mapping.
- $this->load_example_theme( 'colorful' );
-
- // Ensure the default theme is active.
- $this->load_example_theme( 'default' );
-
- // Create a post.
- $post_id = self::factory()->post->create();
-
- // Create a term and add it to the post.
- $term_id = self::factory()->term->create( array(
- 'taxonomy' => 'category',
- 'name' => 'entertainment',
- ) );
- wp_set_post_terms( $post_id, array( $term_id ), 'category' );
-
- // Create a taxonomy map.
- update_option( \Admin_Apple_Sections::TAXONOMY_MAPPING_KEY, array(
- 'abcdef01-2345-6789-abcd-ef012356789a' => array( $term_id ),
- ) );
- update_option( \Admin_Apple_Sections::THEME_MAPPING_KEY, array(
- 'abcdef01-2345-6789-abcd-ef012356789a' => 'Colorful',
- ) );
-
- // Cache as a transient to bypass the API call.
- $self = 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef012356789a';
- set_transient(
- 'apple_news_sections',
- array(
- (object) array(
- 'createdAt' => '2017-01-01T00:00:00Z',
- 'id' => 'abcdef01-2345-6789-abcd-ef012356789a',
- 'isDefault' => true,
- 'links' => (object) array(
- 'channel' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef0123567890',
- 'self' => $self,
- ),
- 'modifiedAt' => '2017-01-01T00:00:00Z',
- 'name' => 'Main',
- 'shareUrl' => 'https://apple.news/AbCdEfGhIj-KlMnOpQrStUv',
- 'type' => 'section',
- ),
- )
- );
-
- // Get sections for the post.
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals(
- $json['componentTextStyles']['dropcapBodyStyle']['textColor'],
- '#000000'
- );
-
- // Change the theme mapping to use the Default theme instead and re-test.
- update_option( \Admin_Apple_Sections::THEME_MAPPING_KEY, array(
- 'abcdef01-2345-6789-abcd-ef012356789a' => 'Default',
- ) );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals(
- $json['componentTextStyles']['dropcapBodyStyle']['textColor'],
- '#4f4f4f'
- );
-
- // Clean up.
- delete_option( \Admin_Apple_Sections::TAXONOMY_MAPPING_KEY );
- delete_option( \Admin_Apple_Sections::THEME_MAPPING_KEY );
- delete_transient( 'apple_news_sections' );
- }
-
- /**
- * Tests the priority level setting. Ensures that a post that is mapped to
- * multiple sections by taxonomy gets the theme that is associated with the
- * section that has the highest priority among the sections assigned to the
- * post.
- */
- public function testPriority() {
- // Load an additional example theme to facilitate mapping.
- $this->load_example_theme( 'colorful' );
-
- // Ensure the default theme is active.
- $this->load_example_theme( 'default' );
-
- // Create a post.
- $post_id = self::factory()->post->create();
-
- // Create a term and add it to the post.
- $term_id = self::factory()->term->create( array(
- 'taxonomy' => 'category',
- 'name' => 'politics',
- ) );
- wp_set_post_terms( $post_id, array( $term_id ), 'category' );
-
- // Create a taxonomy map that maps to multiple sections..
- update_option(
- \Admin_Apple_Sections::TAXONOMY_MAPPING_KEY,
- array(
- 'abcdef01-2345-6789-abcd-ef012356789a' => array( $term_id ),
- 'abcdef01-2345-6789-abcd-ef012356789b' => array( $term_id ),
- )
- );
-
- // Map each section to a different theme.
- update_option(
- \Admin_Apple_Sections::THEME_MAPPING_KEY,
- array(
- 'abcdef01-2345-6789-abcd-ef012356789a' => 'Default',
- 'abcdef01-2345-6789-abcd-ef012356789b' => 'Colorful',
- )
- );
-
- // Cache as a transient to bypass the API call.
- set_transient(
- 'apple_news_sections',
- array(
- (object) array(
- 'createdAt' => '2017-01-01T00:00:00Z',
- 'id' => 'abcdef01-2345-6789-abcd-ef012356789a',
- 'isDefault' => true,
- 'links' => (object) array(
- 'channel' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef0123567890',
- 'self' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef012356789a',
- ),
- 'modifiedAt' => '2017-01-01T00:00:00Z',
- 'name' => 'Main',
- 'shareUrl' => 'https://apple.news/AbCdEfGhIj-KlMnOpQrStUv',
- 'type' => 'section',
- ),
- (object) array(
- 'createdAt' => '2017-01-01T00:00:00Z',
- 'id' => 'abcdef01-2345-6789-abcd-ef012356789b',
- 'isDefault' => false,
- 'links' => (object) array(
- 'channel' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef0123567890',
- 'self' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef012356789b',
- ),
- 'modifiedAt' => '2017-01-01T00:00:00Z',
- 'name' => 'Secondary',
- 'shareUrl' => 'https://apple.news/AbCdEfGhIj-KlMnOpQrStUw',
- 'type' => 'section',
- ),
- )
- );
-
- // Ensure that the default theme is used when no priority is specified.
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals(
- $json['componentTextStyles']['dropcapBodyStyle']['textColor'],
- '#4f4f4f'
- );
-
- // Set the priority on the sections to boost the priority of the secondary section.
- update_option(
- \Admin_Apple_Sections::PRIORITY_MAPPING_KEY,
- array(
- 'abcdef01-2345-6789-abcd-ef012356789a' => 1,
- 'abcdef01-2345-6789-abcd-ef012356789b' => 2,
- )
- );
-
- // Re-run the export and ensure the Colorful theme is used.
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals(
- $json['componentTextStyles']['dropcapBodyStyle']['textColor'],
- '#000000'
- );
-
- // Set the priority on the sections to boost the priority of the main section.
- update_option(
- \Admin_Apple_Sections::PRIORITY_MAPPING_KEY,
- array(
- 'abcdef01-2345-6789-abcd-ef012356789a' => 2,
- 'abcdef01-2345-6789-abcd-ef012356789b' => 1,
- )
- );
-
- // Re-run the export and ensure the Default theme is used.
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals(
- $json['componentTextStyles']['dropcapBodyStyle']['textColor'],
- '#4f4f4f'
- );
-
- // Clean up.
- delete_option( \Admin_Apple_Sections::PRIORITY_MAPPING_KEY );
- delete_option( \Admin_Apple_Sections::TAXONOMY_MAPPING_KEY );
- delete_option( \Admin_Apple_Sections::THEME_MAPPING_KEY );
- delete_transient( 'apple_news_sections' );
- }
-
- /**
- * Tests the behavior of the apple_news_is_exporting() function.
- *
- * @access public
- */
- public function testIsExporting() {
-
- // Setup.
- $title = 'My Title';
- $content = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tristique quis justo sit amet eleifend. Praesent id metus semper, fermentum nibh at, malesuada enim. Mauris eget faucibus lectus. Vivamus iaculis eget urna non porttitor. Donec in dignissim neque. Vivamus ut ornare magna. Nulla eros nisi, maximus nec neque at, condimentum lobortis leo. Fusce in augue arcu. Curabitur lacus elit, venenatis a laoreet sit amet, imperdiet ac lorem. Curabitur sed leo sed ligula tempor feugiat. Cras in tellus et elit volutpat.
';
- $post_id = $this->factory->post->create( array(
- 'post_title' => $title,
- 'post_content' => $content,
- ) );
- add_filter(
- 'the_content',
- array( $this, 'filterTheContentTestIsExporting' )
- );
-
- // Ensure is_exporting returns false before exporting.
- $this->assertEquals(
- 'is not exporting',
- apply_filters( 'the_content', 'Lorem ipsum dolor sit amet' )
- );
-
- // Get sections for the post.
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals(
- 'is exporting
',
- $json['components'][2]['text']
- );
-
- // Ensure is_exporting returns false after exporting.
- $this->assertEquals(
- 'is not exporting',
- apply_filters( 'the_content', 'Lorem ipsum dolor sit amet' )
- );
-
- // Teardown.
- remove_filter(
- 'the_content',
- array( $this, 'filterTheContentTestIsExporting' )
- );
- }
-}
diff --git a/tests/admin/apple-actions/index/test-class-push.php b/tests/admin/apple-actions/index/test-class-push.php
deleted file mode 100644
index 2db7da3df..000000000
--- a/tests/admin/apple-actions/index/test-class-push.php
+++ /dev/null
@@ -1,633 +0,0 @@
-prophet = new \Prophecy\Prophet;
- $this->settings = new Settings();
- $this->settings->set( 'api_key', 'foo' );
- $this->settings->set( 'api_secret', 'bar' );
- $this->settings->set( 'api_channel', 'baz' );
-
- $this->original_user_id = get_current_user_id();
- }
-
- public function tearDown() {
- wp_set_current_user( $this->original_user_id );
- $this->prophet->checkPredictions();
- }
-
- protected function dummy_response() {
- $response = new stdClass;
- $response->data = new stdClass;
- $response->data->id = uniqid();
- $response->data->createdAt = time();
- $response->data->modifiedAt = time();
- $response->data->shareUrl = 'http://test.url/some-path';
- $response->data->revision = uniqid();
- return $response;
- }
-
- protected function set_admin() {
- $user_id = $this->factory->user->create( array( 'role' => 'administrator' ) );
- if ( function_exists( 'grant_super_admin' ) ) {
- grant_super_admin( $user_id );
- }
- wp_set_current_user( $user_id );
- return $user_id;
- }
-
- /**
- * A filter callback to simulate a JSON error.
- *
- * @access public
- * @return array An array containing a JSON error.
- */
- public function filterAppleNewsGetErrors() {
- return array(
- array(
- 'json_errors' => array(
- 'Test JSON error.',
- ),
- ),
- );
- }
-
- public function testCreate() {
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel( Argument::cetera() )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // Create post
- $post_id = $this->factory->post->create();
-
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
-
- public function testCreateWithSections() {
- // Create post
- $post_id = $this->factory->post->create();
- update_post_meta( $post_id, 'apple_news_sections', array( 'https://news-api.apple.com/sections/123' ) );
-
- // Prophesize the action
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel(
- Argument::Any(),
- Argument::Any(),
- Argument::Any(),
- array(
- 'data' => array(
- 'links' => array(
- 'sections' => array(
- 'https://news-api.apple.com/sections/123',
- ),
- ),
- 'isHidden' => false,
- 'isPaid' => false,
- 'isPreview' => false,
- 'isSponsored' => false,
- )
- ),
- $post_id
- )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // Perform the action
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- // Check the response
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
-
- public function testCreateIsHidden() {
- // Create post
- $post_id = $this->factory->post->create();
- update_post_meta( $post_id, 'apple_news_is_hidden', true );
-
- // Prophesize the action
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel(
- Argument::Any(),
- Argument::Any(),
- Argument::Any(),
- array(
- 'data' => array(
- 'isHidden' => true,
- 'isPaid' => false,
- 'isPreview' => false,
- 'isSponsored' => false,
- )
- ),
- $post_id
- )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // Perform the action
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- // Check the response
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
-
- public function testCreateIsPaid() {
- // Create post
- $post_id = $this->factory->post->create();
- update_post_meta( $post_id, 'apple_news_is_paid', true );
-
- // Prophesize the action
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel(
- Argument::Any(),
- Argument::Any(),
- Argument::Any(),
- array(
- 'data' => array(
- 'isHidden' => false,
- 'isPaid' => true,
- 'isPreview' => false,
- 'isSponsored' => false,
- )
- ),
- $post_id
- )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // Perform the action
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- // Check the response
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
-
- public function testCreateIsPreview() {
- // Create post
- $post_id = $this->factory->post->create();
- update_post_meta( $post_id, 'apple_news_is_preview', true );
-
- // Prophesize the action
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel(
- Argument::Any(),
- Argument::Any(),
- Argument::Any(),
- array(
- 'data' => array(
- 'isHidden' => false,
- 'isPaid' => false,
- 'isPreview' => true,
- 'isSponsored' => false,
- )
- ),
- $post_id
- )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // Perform the action
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- // Check the response
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
-
- public function testCreateIsSponsored() {
- // Create post
- $post_id = $this->factory->post->create();
- update_post_meta( $post_id, 'apple_news_is_sponsored', true );
-
- // Prophesize the action
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel(
- Argument::Any(),
- Argument::Any(),
- Argument::Any(),
- array(
- 'data' => array(
- 'isHidden' => false,
- 'isPaid' => false,
- 'isPreview' => false,
- 'isSponsored' => true,
- )
- ),
- $post_id
- )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // Perform the action
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- // Check the response
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
-
- public function testCreateMaturityRating() {
- // Create post
- $post_id = $this->factory->post->create();
- update_post_meta( $post_id, 'apple_news_maturity_rating', 'MATURE' );
-
- // Prophesize the action
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel(
- Argument::Any(),
- Argument::Any(),
- Argument::Any(),
- array(
- 'data' => array(
- 'isHidden' => false,
- 'isPaid' => false,
- 'isPreview' => false,
- 'isSponsored' => false,
- 'maturityRating' => 'MATURE'
- )
- ),
- $post_id
- )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // Perform the action
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- // Check the response
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
-
- public function testUpdate() {
- // Create post, simulate that the post has been synced
- $post_id = $this->factory->post->create();
- update_post_meta( $post_id, 'apple_news_api_id', 123 );
-
- // Prophesize the action
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->update_article(
- "123",
- Argument::Any(),
- Argument::Any(),
- array(),
- array(
- 'data' => array(
- 'isHidden' => false,
- 'isPaid' => false,
- 'isPreview' => false,
- 'isSponsored' => false,
- ),
- ),
- $post_id
- )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // Perform the action
- $api->get_article( "123" )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- // Check the response
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
-
- public function testComponentErrorsNone() {
- $this->settings->set( 'component_alerts', 'none' );
-
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel( Argument::cetera() )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // We need to create an iframe, so run as administrator
- $user_id = $this->set_admin();
-
- // Create post
- $post_id = $this->factory->post->create( array(
- 'post_content' => '
',
- ) );
-
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- // The post was still quietly sent to Apple News despite the removal of the iframe
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
-
- public function testComponentErrorsWarn() {
- $this->settings->set( 'component_alerts', 'warn' );
- $this->settings->set( 'json_alerts', 'none' );
-
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel( Argument::cetera() )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // We need to create a nonsense HTML element, so run as administrator.
- $user_id = $this->set_admin();
-
- // Create post
- $post_id = $this->factory->post->create( array(
- 'post_content' => '
',
- ) );
-
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- // An admin error notice was created
- $notices = get_user_meta( $user_id, 'apple_news_notice', true );
- $this->assertNotEmpty( $notices );
-
- array_pop( $notices );
- $component_notice = end( $notices );
- $this->assertEquals( 'The following components are unsupported by Apple News and were removed: invalidelement', $component_notice['message'] );
-
- // The post was still sent to Apple News
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
-
- public function testComponentErrorsFail() {
- $this->settings->set( 'component_alerts', 'fail' );
- $this->settings->set( 'json_alerts', 'none' );
-
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel( Argument::cetera() )
- ->willReturn( $response )
- ->shouldNotBeCalled();
-
- // We need to create a nonsense HTML element, so run as administrator.
- $user_id = $this->set_admin();
-
- // Create post
- $post_id = $this->factory->post->create( array(
- 'post_content' => '
',
- ) );
-
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
-
- try {
- $action->perform();
- } catch ( Action_Exception $e ) {
-
- // An admin error notice was created
- $notices = get_user_meta( $user_id, 'apple_news_notice', true );
- $this->assertNotEmpty( $notices );
-
- $component_notice = end( $notices );
- $this->assertEquals( 'The following components are unsupported by Apple News and prevented publishing: invalidelement', $e->getMessage() );
-
- // The post was not sent to Apple News
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
- }
-
- public function testJSONErrorsWarn() {
- $this->settings->set( 'component_alerts', 'none' );
- $this->settings->set( 'json_alerts', 'warn' );
-
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel( Argument::cetera() )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // We need to create an iframe, so run as administrator
- $user_id = $this->set_admin();
-
- // Create post
- $post_id = $this->factory->post->create( array(
- 'post_content' => 'Test post content',
- ) );
-
- // Manually add a JSON error to the postmeta via a filter.
- add_filter(
- 'apple_news_get_errors',
- array( $this, 'filterAppleNewsGetErrors' )
- );
-
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- // An admin error notice was created
- $notices = get_user_meta( $user_id, 'apple_news_notice', true );
- $notice_messages = wp_list_pluck( $notices, 'message' );
- $this->assertTrue( in_array(
- 'The following JSON errors were detected when publishing to Apple News: Test JSON error.',
- $notice_messages,
- true
- ) );
-
- // The post was still sent to Apple News
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
-
- // Remove the filter.
- remove_filter(
- 'apple_news_get_errors',
- array( $this, 'filterAppleNewsGetErrors' )
- );
- }
-
- public function testJSONErrorsFail() {
- $this->settings->set( 'component_alerts', 'none' );
- $this->settings->set( 'json_alerts', 'fail' );
-
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel( Argument::cetera() )
- ->willReturn( $response )
- ->shouldNotBeCalled();
-
- // We need to create an iframe, so run as administrator
- $user_id = $this->set_admin();
-
- // Create post
- $post_id = $this->factory->post->create( array(
- 'post_content' => 'Test post content.',
- ) );
-
- // Manually add a JSON error to the postmeta via a filter.
- add_filter(
- 'apple_news_get_errors',
- array( $this, 'filterAppleNewsGetErrors' )
- );
-
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
-
- try {
- $action->perform();
- } catch ( Action_Exception $e ) {
- $this->assertEquals( 'The following JSON errors were detected and prevented publishing to Apple News: Test JSON error.', $e->getMessage() );
-
- // The post was not sent to Apple News
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- }
-
- // Remove the filter.
- remove_filter(
- 'apple_news_get_errors',
- array( $this, 'filterAppleNewsGetErrors' )
- );
- }
-
- /**
- * Tests the behavior of the is_post_in_sync function to ensure that
- * posts are only sync'd when necessary.
- */
- public function test_is_post_in_sync() {
- // Mock the API.
- $response = $this->dummy_response();
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->post_article_to_channel( Argument::cetera() )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // Create a test post.
- $post_id = $this->factory->post->create();
-
- // Test the initial push.
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
-
- // Ensure that the push completed and the data was saved.
- $this->assertEquals( $response->data->id, get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( $response->data->createdAt, get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( $response->data->modifiedAt, get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( $response->data->shareUrl, get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- $this->assertEquals( null, get_post_meta( $post_id, 'apple_news_api_deleted', true ) );
- $this->assertNotEmpty( get_post_meta( $post_id, 'apple_news_article_checksum', true ) );
-
- // Run the push again, and this time it should bail out because it is in sync.
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- try {
- $action->perform();
- } catch ( Action_Exception $e ) {
- $this->assertEquals(
- sprintf( 'Skipped push of article %d to Apple News because it is already in sync.', $post_id ),
- $e->getMessage()
- );
- }
-
- // Mock the response for updating the article.
- $api = $this->prophet->prophesize( '\Apple_Push_API\API' );
- $api->get_article( Argument::cetera() )
- ->willReturn( $response )
- ->shouldBeCalled();
- $api->update_article( Argument::cetera() )
- ->willReturn( $response )
- ->shouldBeCalled();
-
- // Update the post and ensure it posts and updates the checksum.
- $previous_checksum = get_post_meta( $post_id, 'apple_news_article_checksum', true );
- $post = get_post( $post_id );
- $post->post_title = 'Updated post title.';
- wp_update_post( $post );
- $action = new Push( $this->settings, $post_id );
- $action->set_api( $api->reveal() );
- $action->perform();
- $new_checksum = get_post_meta( $post_id, 'apple_news_article_checksum', true );
- $this->assertNotEmpty( $previous_checksum );
- $this->assertNotEmpty( $new_checksum );
- $this->assertNotEquals( $previous_checksum, $new_checksum );
- }
-}
diff --git a/tests/admin/test-class-admin-apple-index-page.php b/tests/admin/test-class-admin-apple-index-page.php
deleted file mode 100644
index 256bef25b..000000000
--- a/tests/admin/test-class-admin-apple-index-page.php
+++ /dev/null
@@ -1,41 +0,0 @@
-settings = new Settings();
- }
-
- public function testReset() {
- // Create post
- $post_id = $this->factory->post->create();
-
- // Add metadata to simulate a stuck post
- update_post_meta( $post_id, 'apple_news_api_pending', time() );
- update_post_meta( $post_id, 'apple_news_api_async_in_progress', time() );
- update_post_meta( $post_id, 'apple_news_api_bundle', time() );
- update_post_meta( $post_id, 'apple_news_api_json', time() );
- update_post_meta( $post_id, 'apple_news_api_errors', time() );
-
- // Create simulated GET data
- $_GET['post_id'] = $post_id; // phpcs:ignore WordPress.VIP.SuperGlobalInputUsage.AccessDetected
- $_GET['page'] = 'apple_news_index'; // phpcs:ignore WordPress.VIP.SuperGlobalInputUsage.AccessDetected
- $_GET['action'] = 'apple_news_reset'; // phpcs:ignore WordPress.VIP.SuperGlobalInputUsage.AccessDetected
-
- // Simulate the action
- $index_page = new Admin_Apple_Index_Page( $this->settings );
- $index_page->page_router();
-
- // Ensure values were deleted
- $this->assertEquals( false, get_post_meta( $post_id, 'apple_news_api_pending', true ) );
- $this->assertEquals( false, get_post_meta( $post_id, 'apple_news_api_async_in_progress', true ) );
- $this->assertEquals( false, get_post_meta( $post_id, 'apple_news_api_bundle', true ) );
- $this->assertEquals( false, get_post_meta( $post_id, 'apple_news_api_json', true ) );
- $this->assertEquals( false, get_post_meta( $post_id, 'apple_news_api_errors', true ) );
- }
-}
-
diff --git a/tests/admin/test-class-admin-apple-meta-boxes.php b/tests/admin/test-class-admin-apple-meta-boxes.php
deleted file mode 100644
index 3f38593ce..000000000
--- a/tests/admin/test-class-admin-apple-meta-boxes.php
+++ /dev/null
@@ -1,89 +0,0 @@
-settings = new Settings();
- }
-
- public function testSaveNoAutoSync() {
- // Set API settings to not auto sync and to enable the meta box
- $this->settings->set( 'api_autosync', 'no' );
- $this->settings->set( 'show_metabox', 'yes' );
-
- // Create post
- $post_id = $this->factory->post->create();
-
- // Create post data
- $_POST['post_ID'] = $post_id;
- $_POST['apple_news_sections'] = array( 'https://news-api.apple.com/sections/1234567890' );
- $_POST['apple_news_is_paid'] = 0;
- $_POST['apple_news_is_preview'] = 0;
- $_POST['apple_news_is_sponsored'] = 0;
- $_POST['apple_news_maturity_rating'] = 'MATURE';
- $_POST['apple_news_pullquote'] = 'test pullquote';
- $_POST['apple_news_pullquote_position'] = 'middle';
- $_POST['apple_news_nonce'] = wp_create_nonce( 'apple_news_publish' );
- $_POST['apple_news_publish_action'] = 'apple_news_publish';
- $_REQUEST['post_ID'] = $_POST['post_ID'];
- $_REQUEST['apple_news_nonce'] = $_POST['apple_news_nonce'];
-
- // Create the meta box class and simulate a save
- $meta_box = new Admin_Apple_Meta_Boxes( $this->settings );
- if ( 'yes' === $this->settings->get( 'show_metabox' ) ) {
- $meta_box->do_publish( $post_id, get_post( $post_id ) );
- }
-
- // Check the meta values
- $this->assertEquals( array( 'https://news-api.apple.com/sections/1234567890' ), get_post_meta( $post_id, 'apple_news_sections', true ) );
- $this->assertEquals( false, get_post_meta( $post_id, 'apple_news_is_paid', true ) );
- $this->assertEquals( false, get_post_meta( $post_id, 'apple_news_is_preview', true ) );
- $this->assertEquals( false, get_post_meta( $post_id, 'apple_news_is_sponsored', true ) );
- $this->assertEquals( 'MATURE', get_post_meta( $post_id, 'apple_news_maturity_rating', true ) );
- $this->assertEquals( 'test pullquote', get_post_meta( $post_id, 'apple_news_pullquote', true ) );
- $this->assertEquals( 'middle', get_post_meta( $post_id, 'apple_news_pullquote_position', true ) );
- }
-
- public function testSaveWithAutoSync() {
- // Set API settings to not auto sync and to enable the meta box
- $this->settings->set( 'api_autosync', 'yes' );
- $this->settings->set( 'show_metabox', 'yes' );
-
- // Create post
- $post_id = $this->factory->post->create();
-
- // Create post data
- $_POST['post_ID'] = $post_id;
- $_POST['apple_news_sections'] = array( 'https://news-api.apple.com/sections/1234567890' );
- $_POST['apple_news_is_paid'] = 0;
- $_POST['apple_news_is_preview'] = 0;
- $_POST['apple_news_is_sponsored'] = 0;
- $_POST['apple_news_maturity_rating'] = 'MATURE';
- $_POST['apple_news_pullquote'] = 'test pullquote';
- $_POST['apple_news_pullquote_position'] = 'middle';
- $_POST['apple_news_nonce'] = wp_create_nonce( 'apple_news_publish' );
- $_POST['apple_news_publish_action'] = 'apple_news_publish';
- $_REQUEST['post_ID'] = $_POST['post_ID'];
- $_REQUEST['apple_news_nonce'] = $_POST['apple_news_nonce'];
-
- // Create the meta box class and simulate a save
- $meta_box = new Admin_Apple_Meta_Boxes( $this->settings );
- if ( 'yes' === $this->settings->get( 'show_metabox' ) ) {
- $meta_box->do_publish( $post_id, get_post( $post_id ) );
- }
-
- // Check the meta values
- $this->assertEquals( array( 'https://news-api.apple.com/sections/1234567890' ), get_post_meta( $post_id, 'apple_news_sections', true ) );
- $this->assertEquals( false, get_post_meta( $post_id, 'apple_news_is_paid', true ) );
- $this->assertEquals( false, get_post_meta( $post_id, 'apple_news_is_preview', true ) );
- $this->assertEquals( false, get_post_meta( $post_id, 'apple_news_is_sponsored', true ) );
- $this->assertEquals( 'MATURE', get_post_meta( $post_id, 'apple_news_maturity_rating', true ) );
- $this->assertEquals( 'test pullquote', get_post_meta( $post_id, 'apple_news_pullquote', true ) );
- $this->assertEquals( 'middle', get_post_meta( $post_id, 'apple_news_pullquote_position', true ) );
- }
-}
-
diff --git a/tests/admin/test-class-admin-apple-notice.php b/tests/admin/test-class-admin-apple-notice.php
deleted file mode 100644
index 84059deae..000000000
--- a/tests/admin/test-class-admin-apple-notice.php
+++ /dev/null
@@ -1,102 +0,0 @@
-user_id = $this->factory->user->create( array( 'role' => 'administrator' ) );
- wp_set_current_user( $this->user_id );
- }
-
- public function testInfo() {
- Admin_Apple_Notice::info( 'This is an info message', $this->user_id );
-
- ob_start();
- Admin_Apple_Notice::show();
- $notice = ob_get_contents();
- ob_end_clean();
-
- $expected = preg_replace( '/\s+/', '', '' );
- $notice = preg_replace( '/data-nonce="[^"]+"/', 'data-nonce="some-nonce"', $notice );
- $notice = preg_replace( '/\s+/', '', $notice );
-
- $this->assertEquals( $expected, $notice );
- }
-
- public function testSuccess() {
- Admin_Apple_Notice::success( 'This is a success message', $this->user_id );
-
- ob_start();
- Admin_Apple_Notice::show();
- $notice = ob_get_contents();
- ob_end_clean();
-
- $expected = preg_replace( '/\s+/', '', 'This is a success message
' );
- $notice = preg_replace( '/data-nonce="[^"]+"/', 'data-nonce="some-nonce"', $notice );
- $notice = preg_replace( '/\s+/', '', $notice );
-
- $this->assertEquals( $expected, $notice );
- }
-
- public function testError() {
- Admin_Apple_Notice::error( 'This is an error message', $this->user_id );
-
- ob_start();
- Admin_Apple_Notice::show();
- $notice = ob_get_contents();
- ob_end_clean();
-
- $expected = preg_replace( '/\s+/', '', 'This is an error message' . Apple_News::get_support_info() . '
' );
- $notice = preg_replace( '/data-nonce="[^"]+"/', 'data-nonce="some-nonce"', $notice );
- $notice = preg_replace( '/\s+/', '', $notice );
-
- $this->assertEquals( $expected, $notice );
- }
-
- public function testFormattingSingle() {
- Admin_Apple_Notice::info( 'One error occurred: error 1', $this->user_id );
-
- ob_start();
- Admin_Apple_Notice::show();
- $notice = ob_get_contents();
- ob_end_clean();
-
- $expected = preg_replace( '/\s+/', '', 'One error occurred: error 1
' );
- $notice = preg_replace( '/data-nonce="[^"]+"/', 'data-nonce="some-nonce"', $notice );
- $notice = preg_replace( '/\s+/', '', $notice );
-
- $this->assertEquals( $expected, $notice );
- }
-
- public function testFormattingMultiple() {
- Admin_Apple_Notice::info( 'A number of errors occurred: error 1, error 2, error 3', $this->user_id );
-
- ob_start();
- Admin_Apple_Notice::show();
- $notice = ob_get_contents();
- ob_end_clean();
-
- $expected = preg_replace( '/\s+/', '', 'A number of errors occurred: error 1 error 2 error 3
' );
- $notice = preg_replace( '/data-nonce="[^"]+"/', 'data-nonce="some-nonce"', $notice );
- $notice = preg_replace( '/\s+/', '', $notice );
-
- $this->assertEquals( $expected, $notice );
- }
-
- public function testLineBreaks() {
- Admin_Apple_Notice::info( 'One message|Another message', $this->user_id );
-
- ob_start();
- Admin_Apple_Notice::show();
- $notice = ob_get_contents();
- ob_end_clean();
-
- $expected = preg_replace( '/\s+/', '', 'One message Another message
' );
- $notice = preg_replace( '/data-nonce="[^"]+"/', 'data-nonce="some-nonce"', $notice );
- $notice = preg_replace( '/\s+/', '', $notice );
-
- $this->assertEquals( $expected, $notice );
- }
-}
diff --git a/tests/admin/test-class-admin-apple-sections.php b/tests/admin/test-class-admin-apple-sections.php
deleted file mode 100644
index b491271d0..000000000
--- a/tests/admin/test-class-admin-apple-sections.php
+++ /dev/null
@@ -1,231 +0,0 @@
-settings = new Settings();
-
- // Create some dummy categories to use in mapping testing.
- wp_insert_term( 'Category 1', 'category' );
- wp_insert_term( 'Category 2', 'category' );
- wp_insert_term( 'Category 3', 'category' );
-
- // Pre-cache a transient for sections using dummy data to bypass API call.
- set_transient(
- 'apple_news_sections',
- array(
- (object) array(
- 'createdAt' => '2017-01-01T00:00:00Z',
- 'id' => 'abcdef01-2345-6789-abcd-ef012356789a',
- 'isDefault' => true,
- 'links' => (object) array(
- 'channel' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef0123567890',
- 'self' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef012356789a',
- ),
- 'modifiedAt' => '2017-01-01T00:00:00Z',
- 'name' => 'Main',
- 'shareUrl' => 'https://apple.news/AbCdEfGhIj-KlMnOpQrStUv',
- 'type' => 'section',
- ),
- (object) array(
- 'createdAt' => '2017-01-01T00:00:00Z',
- 'id' => 'abcdef01-2345-6789-abcd-ef012356789b',
- 'isDefault' => false,
- 'links' => (object) array(
- 'channel' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef0123567890',
- 'self' => 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef012356789b',
- ),
- 'modifiedAt' => '2017-01-01T00:00:00Z',
- 'name' => 'Secondary Section',
- 'shareUrl' => 'https://apple.news/AbCdEfGhIj-KlMnOpQrStUw',
- 'type' => 'section',
- )
- )
- );
-
- // Create some themes
- $this->createThemes();
-
- // Set up post data for creating taxonomy and theme mappings.
- $_POST = array(
- 'action' => 'apple_news_set_section_mappings',
- 'page' => 'apple_news_sections',
- 'taxonomy-mapping-abcdef01-2345-6789-abcd-ef012356789a' => array(
- 'Category 1',
- ),
- 'taxonomy-mapping-abcdef01-2345-6789-abcd-ef012356789b' => array(
- 'Category 2',
- 'Category 3',
- ),
- 'theme-mapping-abcdef01-2345-6789-abcd-ef012356789a' => 'Default',
- 'theme-mapping-abcdef01-2345-6789-abcd-ef012356789b' => 'Test Theme',
- );
-
- $_REQUEST = array(
- '_wp_http_referer' => '/wp-admin/admin.php?page=apple-news-sections',
- '_wpnonce' => wp_create_nonce( 'apple_news_sections' ),
- 'action' => 'apple_news_set_section_mappings',
- );
-
- // Run the request to set up taxonomy mappings.
- $sections = new Admin_Apple_Sections();
- $sections->action_router();
- }
-
- /**
- * Create some themes for testing
- *
- * @access private
- */
- private function createThemes() {
-
- // Create the default theme.
- $theme = new \Apple_Exporter\Theme;
- $theme->set_name( 'Default' );
- $this->assertTrue( $theme->save() );
- unset( $theme );
-
- // Create a test theme.
- $theme = new \Apple_Exporter\Theme;
- $theme->set_name( 'Test Theme' );
- $this->assertTrue( $theme->save() );
- unset( $theme );
- }
-
- /**
- * Ensures that automatic section/category mappings function properly.
- *
- * @access public
- */
- public function testAutomaticCategoryMapping() {
-
- // Create a post with Category 2 to trigger second section membership.
- $category2 = get_term_by( 'name', 'Category 2', 'category' );
- $post_id = $this->factory->post->create();
- wp_set_post_categories( $post_id, $category2->term_id );
-
- // Validate automatic section assignment.
- $this->assertEquals(
- array(
- 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef012356789b',
- ),
- Admin_Apple_Sections::get_sections_for_post( $post_id )
- );
- }
-
- /**
- * Ensures that the apple_news_section_taxonomy filter is working properly.
- *
- * @access public
- */
- public function testMappingTaxonomyFilter() {
-
- // Test default behavior.
- $taxonomy = Admin_Apple_Sections::get_mapping_taxonomy();
- $this->assertEquals( 'category', $taxonomy->name );
-
- // Switch to post tag.
- add_filter( 'apple_news_section_taxonomy', function () {
- return 'post_tag';
- } );
-
- // Test filtered value.
- $taxonomy = Admin_Apple_Sections::get_mapping_taxonomy();
- $this->assertEquals( 'post_tag', $taxonomy->name );
- }
-
- /**
- * Ensures that the category mapping override is respected.
- *
- * @access public
- */
- public function testOverrideCategoryMapping() {
-
- // Create a post with Category 2 to trigger second section membership.
- $category2 = get_term_by( 'name', 'Category 2', 'category' );
- $post_id = $this->factory->post->create();
- wp_set_post_categories( $post_id, $category2->term_id );
-
- // Manually set the first section to override automatic mapping.
- update_post_meta(
- $post_id,
- 'apple_news_sections',
- array(
- 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef012356789a',
- )
- );
-
- // Validate manual section assignment.
- $this->assertEquals(
- array(
- 'https://news-api.apple.com/channels/abcdef01-2345-6789-abcd-ef012356789a',
- ),
- Admin_Apple_Sections::get_sections_for_post( $post_id )
- );
- }
-
- /**
- * Ensures that the category mapping fields save properly.
- *
- * @access public
- */
- public function testSaveCategoryMapping() {
-
- // Get info about our categories.
- $category1 = get_term_by( 'name', 'Category 1', 'category' );
- $category2 = get_term_by( 'name', 'Category 2', 'category' );
- $category3 = get_term_by( 'name', 'Category 3', 'category' );
-
- // Validate the response.
- $this->assertEquals(
- array(
- 'abcdef01-2345-6789-abcd-ef012356789a' => array(
- $category1->term_id
- ),
- 'abcdef01-2345-6789-abcd-ef012356789b' => array(
- $category2->term_id,
- $category3->term_id,
- ),
- ),
- get_option( Admin_Apple_Sections::TAXONOMY_MAPPING_KEY )
- );
- }
-
- /**
- * Ensures that the theme mapping fields save properly.
- *
- * @access public
- */
- public function testSaveThemeMapping() {
- // Validate the response.
- $this->assertEquals(
- array(
- 'abcdef01-2345-6789-abcd-ef012356789a' => 'Default',
- 'abcdef01-2345-6789-abcd-ef012356789b' => 'Test Theme',
- ),
- get_option( Admin_Apple_Sections::THEME_MAPPING_KEY )
- );
- }
-}
diff --git a/tests/admin/test-class-admin-apple-themes.php b/tests/admin/test-class-admin-apple-themes.php
deleted file mode 100644
index d50ceab2d..000000000
--- a/tests/admin/test-class-admin-apple-themes.php
+++ /dev/null
@@ -1,606 +0,0 @@
-save_settings( $this->settings->all() );
-
- // Force creation of a default theme if it does not exist.
- $theme = new \Apple_Exporter\Theme;
- $theme->set_name( __( 'Default', 'apple-news' ) );
- if ( ! $theme->load() ) {
- $theme->save();
- }
- }
-
- /**
- * A helper function to create a new named theme.
- *
- * @param string $name The name for the theme.
- * @param array $settings The settings for the theme.
- *
- * @access public
- */
- public function createNewTheme( $name, $settings = array() ) {
-
- // Set up the request.
- $nonce = wp_create_nonce( 'apple_news_save_edit_theme' );
- $_POST['apple_news_theme_name'] = $name;
- $_POST['action'] = 'apple_news_save_edit_theme';
- $_POST['page'] = 'apple-news-themes';
- $_POST['redirect'] = false;
- $_REQUEST['_wp_http_referer'] = '/wp-admin/admin.php?page=apple-news-theme-edit';
- $_REQUEST['_wpnonce'] = $nonce;
- $_REQUEST['action'] = $_POST['action'];
-
- // Merge any provided settings with default settings.
- $default_theme = new \Apple_Exporter\Theme;
- $defaults = $default_theme->all_settings();
- $settings = wp_parse_args( $settings, $defaults );
-
- // Add all of these to the $_POST object.
- foreach ( $settings as $key => $value ) {
- $_POST[ $key ] = $value;
- }
-
- // Invoke the save operation in the themes class.
- $this->themes->action_router();
- }
-
- /**
- * Actions to be run before each test in this class.
- *
- * @access public
- */
- public function setup() {
- parent::setup();
-
- // Store an instance of the Settings class for use in testing.
- $this->settings = new Settings();
-
- // Store an instance of the Admin_Apple_Themes class for use in testing.
- $this->themes = new \Admin_Apple_Themes();
-
- // Remove the Default theme, if it exists.
- $default_theme = new \Apple_Exporter\Theme;
- $default_theme->set_name( __( 'Default', 'apple-news' ) );
- if ( $default_theme->load() ) {
- $default_theme->delete();
- }
-
- // Remove the Test Theme, if it exists.
- $test_theme = new \Apple_Exporter\Theme;
- $test_theme->set_name( 'Test Theme' );
- if ( $test_theme->load() ) {
- $test_theme->delete();
- }
- }
-
- /**
- * Ensures that the default theme is created properly.
- *
- * @access public
- */
- public function testCreateDefaultTheme() {
-
- // Create the default theme.
- $this->createDefaultTheme();
-
- // Ensure the default theme was created.
- $vanilla_theme = new \Apple_Exporter\Theme;
- $default_theme = new \Apple_Exporter\Theme;
- $default_theme->set_name( __( 'Default', 'apple-news' ) );
- $this->assertEquals(
- __( 'Default', 'apple-news' ),
- \Apple_Exporter\Theme::get_active_theme_name()
- );
- $this->assertTrue( $default_theme->load() );
- $this->assertEquals(
- $vanilla_theme->all_settings(),
- $default_theme->all_settings()
- );
- $this->assertTrue(
- in_array(
- __( 'Default', 'apple-news' ),
- \Apple_Exporter\Theme::get_registry(),
- true
- )
- );
- }
-
- /**
- * Ensures themes are able to be created properly.
- *
- * @access public
- */
- public function testCreateTheme() {
-
- // Set the POST data required to create a new theme.
- $name = 'Test Theme';
- $this->createNewTheme( $name, array( 'body_color' => '#ff0000' ) );
-
- // Check that the data was saved properly.
- $default_theme = new \Apple_Exporter\Theme;
- $expected_settings = $default_theme->all_settings();
- $expected_settings['body_color'] = '#ff0000';
- $test_theme = new \Apple_Exporter\Theme;
- $test_theme->set_name( 'Test Theme' );
- $test_theme->load();
- $this->assertEquals( $expected_settings, $test_theme->all_settings() );
- }
-
- /**
- * Ensure that a theme can be deleted.
- */
- public function testDeleteTheme() {
-
- // Create the default theme.
- $this->createDefaultTheme();
-
- // Name and create a new theme.
- $name = 'Test Theme';
- $this->createNewTheme( $name );
-
- // Ensure both themes exist.
- $this->assertTrue(
- in_array(
- __( 'Default', 'apple-news' ),
- \Apple_Exporter\Theme::get_registry(),
- true
- )
- );
- $this->assertTrue(
- in_array(
- $name,
- \Apple_Exporter\Theme::get_registry(),
- true
- )
- );
- $default_theme = new \Apple_Exporter\Theme;
- $default_theme->set_name( __( 'Default', 'apple-news' ) );
- $this->assertTrue( $default_theme->load() );
- $test_theme = new \Apple_Exporter\Theme;
- $test_theme->set_name( 'Test Theme' );
- $this->assertTrue( $test_theme->load() );
-
- // Delete the test theme.
- $nonce = wp_create_nonce( 'apple_news_themes' );
- $_POST['apple_news_theme_name'] = $name;
- $_POST['action'] = 'apple_news_delete_theme';
- $_POST['apple_news_theme'] = $name;
- $_POST['page'] = 'apple-news-themes';
- $_REQUEST['_wp_http_referer'] = '/wp-admin/admin.php?page=apple-news-themes';
- $_REQUEST['_wpnonce'] = $nonce;
- $_REQUEST['action'] = $_POST['action'];
- $this->themes->action_router();
-
- // Ensure that the test theme does not exist after deletion.
- $this->assertFalse(
- in_array(
- $name,
- \Apple_Exporter\Theme::get_registry(),
- true
- )
- );
- $this->assertFalse( $test_theme->load() );
- }
-
- /**
- * Tests a theme import.
- *
- * @access public
- */
- public function testImportTheme() {
-
- // Setup.
- $advertisement_json = array(
- 'role' => 'banner_advertisement',
- 'bannerType' => 'double_height',
- );
- $import_settings = array(
- 'layout_margin' => 100,
- 'layout_gutter' => 20,
- 'json_templates' => array(
- 'advertisement' => array(
- 'json' => $advertisement_json,
- ),
- ),
- 'theme_name' => 'Test Import Theme',
- );
-
- // Test.
- $this->assertTrue( $this->themes->import_theme( $import_settings ) );
- $theme = new \Apple_Exporter\Theme;
- $theme->set_name( 'Test Import Theme' );
- $this->assertTrue( $theme->load() );
- $theme_settings = $theme->all_settings();
- $this->assertEquals( 100, $theme_settings['layout_margin'] );
- $this->assertEquals( 20, $theme_settings['layout_gutter'] );
- $this->assertEquals(
- $advertisement_json,
- $theme_settings['json_templates']['advertisement']['json']
- );
-
- // Cleanup.
- $theme->delete();
- }
-
- /**
- * Tests a theme import with an invalid JSON spec.
- *
- * @access public
- */
- public function testImportThemeInvalidJSON() {
-
- // Setup.
- $invalid_json = array(
- 'role' => 'audio',
- 'URL' => '#invalid#',
- );
- $import_settings = array(
- 'layout_margin' => 100,
- 'layout_gutter' => 20,
- 'json_templates' => array(
- 'audio' => array(
- 'json' => $invalid_json,
- ),
- ),
- 'theme_name' => 'Test Import Theme',
- );
-
- // Test.
- $this->assertInternalType(
- 'string',
- $this->themes->import_theme( $import_settings )
- );
- $theme = new \Apple_Exporter\Theme;
- $theme->set_name( 'Test Import Theme' );
- $this->assertFalse( $theme->load() );
- }
-
- /**
- * Ensures that JSON customizations from versions prior to 1.3.0 are migrated to
- * the theme(s).
- *
- * @access public
- */
- public function testJSONMigrateToTheme() {
-
- // Create the default theme and the Test Theme.
- $this->createDefaultTheme();
- $this->createNewTheme( 'Test Theme' );
-
- // Define the default-body JSON override we will be testing against.
- $default_body = array(
- 'textAlignment' => 'left',
- 'fontName' => '#body_font#',
- 'fontSize' => '#body_size#',
- 'tracking' => '#body_tracking#',
- 'lineHeight' => '#body_line_height#',
- 'textColor' => '#body_color#',
- 'linkStyle' => array(
- 'textColor' => '#body_link_color#',
- ),
- 'paragraphSpacingBefore' => 24,
- 'paragraphSpacingAfter' => 24,
- );
-
- // Add legacy format JSON overrides.
- update_option(
- 'apple_news_json_body',
- array( 'apple_news_json_default-body' => $default_body ),
- false
- );
-
- // Run the function to trigger the settings migration.
- $apple_news = new Apple_News;
- $apple_news->migrate_custom_json_to_themes();
-
- // Ensure that the default-body override was applied to the themes.
- $default_theme = new \Apple_Exporter\Theme;
- $default_theme->set_name( __( 'Default', 'apple-news' ) );
- $this->assertTrue( $default_theme->load() );
- $test_theme = new \Apple_Exporter\Theme;
- $test_theme->set_name( 'Test Theme' );
- $this->assertTrue( $test_theme->load() );
- $default_settings = $default_theme->all_settings();
- $test_theme_settings = $test_theme->all_settings();
- $this->assertEquals(
- $default_body,
- $default_settings['json_templates']['body']['default-body']
- );
- $this->assertEquals(
- $default_body,
- $test_theme_settings['json_templates']['body']['default-body']
- );
- }
-
- /**
- * Ensures that a custom spec is saved properly.
- *
- * @access public
- */
- public function testJSONSaveCustomSpec() {
-
- // Setup.
- $this->createDefaultTheme();
- $json = <<action_router();
-
- // Test.
- $theme = new \Apple_Exporter\Theme;
- $theme->set_name( \Apple_Exporter\Theme::get_active_theme_name() );
- $this->assertTrue( $theme->load() );
- $theme_settings = $theme->all_settings();
- $stored_json = wp_json_encode(
- $theme_settings['json_templates']['advertisement']['json'],
- JSON_PRETTY_PRINT
- );
- $this->assertEquals( $stored_json, $json );
- }
-
- /**
- * Ensure that invalid tokens are not saved in a custom spec.
- *
- * @access public
- */
- public function testJSONSaveInvalidTokens() {
-
- // Setup.
- $this->createDefaultTheme();
- $invalid_json = <<action_router();
-
- // Test.
- $theme = new \Apple_Exporter\Theme;
- $theme->set_name( \Apple_Exporter\Theme::get_active_theme_name() );
- $this->assertTrue( $theme->load() );
- $theme_settings = $theme->all_settings();
- $this->assertTrue( empty( $theme_settings['json_templates'] ) );
- }
-
- /**
- * Ensure that valid tokens are saved in the custom JSON spec.
- *
- * @access public
- */
- public function testJSONSaveValidTokens() {
-
- // Setup.
- $this->createDefaultTheme();
- $json = <<action_router();
-
- // Test.
- $theme = new \Apple_Exporter\Theme;
- $theme->set_name( \Apple_Exporter\Theme::get_active_theme_name() );
- $this->assertTrue( $theme->load() );
- $theme_settings = $theme->all_settings();
- $stored_json = stripslashes(
- wp_json_encode(
- $theme_settings['json_templates']['audio']['json'],
- JSON_PRETTY_PRINT
- )
- );
- $this->assertEquals( $stored_json, $json );
- }
-
- /**
- * Ensure that the custom spec is used on render.
- *
- * @access public
- */
- public function testJSONUseCustomSpec() {
-
- // Setup.
- $this->createDefaultTheme();
- $json = <<action_router();
-
- // Test.
- $settings = new Admin_Apple_Settings();
- $content = new Exporter_Content(
- 1,
- __( 'My Title', 'apple-news' ),
- '' . __( 'Hello, World!', 'apple-news' ) . '
'
- );
- $exporter = new Exporter( $content, null, $settings->fetch_settings() );
- $json = json_decode( $exporter->export(), true );
- $this->assertEquals(
- 20,
- $json['componentLayouts']['body-layout']['margin']['bottom']
- );
- $this->assertEquals(
- 50,
- $json['componentLayouts']['body-layout']['margin']['top']
- );
- }
-
- /**
- * Ensure that postmeta in a custom spec is used on render.
- *
- * @access public
- */
- public function testJSONUseCustomSpecPostmeta() {
-
- // Setup.
- $this->createDefaultTheme();
- $json = <<action_router();
-
- // Test.
- $post_id = $this->factory->post->create();
- $settings = new Admin_Apple_Settings();
- $content = new Exporter_Content(
- $post_id,
- __( 'My Title', 'apple-news' ),
- '' . __( 'Hello, World!', 'apple-news' ) . '
'
- );
- add_post_meta( $post_id, 'apple_news_column_span', 2, true );
- $exporter = new Exporter( $content, null, $settings->fetch_settings() );
- $json = json_decode( $exporter->export(), true );
- $this->assertEquals(
- 2,
- $json['componentLayouts']['body-layout']['columnSpan']
- );
- }
-
- /**
- * Ensure that a new theme can be set as the active theme.
- *
- * @access public
- */
- public function testSetTheme() {
-
- // Create the default theme.
- $this->createDefaultTheme();
-
- // Create a test theme with altered settings.
- $this->createNewTheme( 'Test Theme', array( 'layout_margin' => 50 ) );
-
- // Simulate the form submission to set the theme.
- $nonce = wp_create_nonce( 'apple_news_themes' );
- $_POST['action'] = 'apple_news_set_theme';
- $_POST['apple_news_active_theme'] = 'Test Theme';
- $_POST['page'] = 'apple-news-themes';
- $_REQUEST['_wp_http_referer'] = '/wp-admin/admin.php?page=apple-news-themes';
- $_REQUEST['_wpnonce'] = $nonce;
- $_REQUEST['action'] = $_POST['action'];
- $this->themes->action_router();
-
- // Check that the theme got set.
- $this->assertEquals(
- 'Test Theme',
- \Apple_Exporter\Theme::get_active_theme_name()
- );
- $theme = new \Apple_Exporter\Theme;
- $theme->set_name( 'Test Theme' );
- $this->assertTrue( $theme->load() );
- $theme_settings = $theme->all_settings();
- $this->assertEquals( 50, $theme_settings['layout_margin'] );
- }
-}
diff --git a/tests/admin/test-class-admin-rest.php b/tests/admin/test-class-admin-rest.php
deleted file mode 100644
index 60e5b8391..000000000
--- a/tests/admin/test-class-admin-rest.php
+++ /dev/null
@@ -1,57 +0,0 @@
-user->create( [ 'role' => 'editor' ] );
- wp_set_current_user( $user_id );
- $post_id = self::factory()->post->create();
- add_post_meta( $post_id, 'apple_news_api_created_at', 'abc123' );
- add_post_meta( $post_id, 'apple_news_api_id', 'def456' );
- add_post_meta( $post_id, 'apple_news_api_modified_at', 'ghi789' );
- add_post_meta( $post_id, 'apple_news_api_revision', 'jkl123' );
- add_post_meta( $post_id, 'apple_news_api_share_url', 'mno456' );
-
- // Update the post via REST request and attempt to reset the API postmeta.
- $endpoint = '/wp/v2/posts/' . $post_id;
- $payload = [
- 'content' => '\nTesting.
\n',
- 'id' => $post_id,
- 'meta' => [
- 'apple_news_api_created_at' => '',
- 'apple_news_api_id' => '',
- 'apple_news_api_modified_at' => '',
- 'apple_news_api_revision' => '',
- 'apple_news_api_share_url' => '',
- ],
- ];
- $request = new WP_REST_Request( 'POST', $endpoint );
- $request->set_body_params( $payload );
- rest_do_request( $request );
-
- // Ensure that the API postmeta was _not_ reset by the REST request.
- $this->assertEquals( 'abc123', get_post_meta( $post_id, 'apple_news_api_created_at', true ) );
- $this->assertEquals( 'def456', get_post_meta( $post_id, 'apple_news_api_id', true ) );
- $this->assertEquals( 'ghi789', get_post_meta( $post_id, 'apple_news_api_modified_at', true ) );
- $this->assertEquals( 'jkl123', get_post_meta( $post_id, 'apple_news_api_revision', true ) );
- $this->assertEquals( 'mno456', get_post_meta( $post_id, 'apple_news_api_share_url', true ) );
- }
-}
diff --git a/tests/apple-exporter/builders/test-class-advertising-settings.php b/tests/apple-exporter/builders/test-class-advertising-settings.php
deleted file mode 100644
index fcbec535c..000000000
--- a/tests/apple-exporter/builders/test-class-advertising-settings.php
+++ /dev/null
@@ -1,137 +0,0 @@
-content, $this->content_settings );
- $this->assertEquals(
- [
- 'advertisement' => [
- 'bannerType' => 'any',
- 'distanceFromMedia' => '10vh',
- 'enabled' => true,
- 'frequency' => 5,
- 'layout' => [
- 'margin' => 15,
- ],
- ],
- ],
- $builder->to_array()
- );
- }
-
- /**
- * Tests the behavior of the component when advertisements are disabled.
- */
- public function testNoAds() {
-
- // Setup.
- $settings = $this->theme->all_settings();
- $settings['enable_advertisement'] = 'no';
- $this->theme->load( $settings );
- $this->assertTrue( $this->theme->save() );
-
- // Test.
- $builder = new Advertising_Settings( $this->content, $this->content_settings );
- $result = $builder->to_array();
- $this->assertEquals( 0, count( $result ) );
- }
-
- /**
- * Tests the ability to customize ad frequency.
- */
- public function testCustomAdFrequency() {
-
- // Setup.
- $settings = $this->theme->all_settings();
- $settings['ad_frequency'] = 10;
- $this->theme->load( $settings );
- $this->assertTrue( $this->theme->save() );
-
- // Test.
- $builder = new Advertising_Settings( $this->content, $this->content_settings );
- $this->assertEquals(
- [
- 'advertisement' => [
- 'bannerType' => 'any',
- 'distanceFromMedia' => '10vh',
- 'enabled' => true,
- 'frequency' => 10,
- 'layout' => [
- 'margin' => 15,
- ],
- ],
- ],
- $builder->to_array()
- );
- }
-
- /**
- * Tests the ability to customize the ad margin.
- */
- public function testCustomAdMargin() {
-
- // Setup.
- $settings = $this->theme->all_settings();
- $settings['ad_margin'] = 20;
- $this->theme->load( $settings );
- $this->assertTrue( $this->theme->save() );
-
- // Test.
- $builder = new Advertising_Settings( $this->content, $this->content_settings );
- $this->assertEquals(
- [
- 'advertisement' => [
- 'bannerType' => 'any',
- 'distanceFromMedia' => '10vh',
- 'enabled' => true,
- 'frequency' => 5,
- 'layout' => [
- 'margin' => 20,
- ],
- ],
- ],
- $builder->to_array()
- );
- }
-
- /**
- * Tests the article-level automatic advertisement settings.
- */
- public function testAutoplacement() {
- $post_id = self::factory()->post->create();
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals(
- [
- 'advertisement' => [
- 'bannerType' => 'any',
- 'distanceFromMedia' => '10vh',
- 'enabled' => true,
- 'frequency' => 5,
- 'layout' => [
- 'margin' => 15,
- ],
- ],
- ],
- $json['autoplacement']
- );
- }
-}
diff --git a/tests/apple-exporter/builders/test-class-component-layouts.php b/tests/apple-exporter/builders/test-class-component-layouts.php
deleted file mode 100644
index 0541842ab..000000000
--- a/tests/apple-exporter/builders/test-class-component-layouts.php
+++ /dev/null
@@ -1,52 +0,0 @@
-prophet = new \Prophecy\Prophet;
- $this->settings = new Settings();
- $this->content = new Exporter_Content( 1, 'My Title', 'Hello, World!
' );
- }
-
- public function tearDown() {
- $this->prophet->checkPredictions();
- }
-
- public function testRegisterLayout() {
- $layouts = new Component_Layouts( $this->content, $this->settings );
- $layouts->register_layout( 'l1', 'val1' );
- $layouts->register_layout( 'l2', 'val2' );
- $result = $layouts->to_array();
-
- $this->assertEquals( 2, count( $result ) );
- $this->assertEquals( 'val1', $result[ 'l1' ] );
- $this->assertEquals( 'val2', $result[ 'l2' ] );
- }
-
- public function testLeftLayoutGetsAdded() {
- $layouts = new Component_Layouts( $this->content, $this->settings );
-
- $this->assertFalse( array_key_exists( 'anchor-layout-left', $layouts->to_array() ) );
-
- $component = $this->prophet->prophesize( '\Apple_Exporter\Components\Component' );
- $component->get_anchor_position()
- ->willReturn( Component::ANCHOR_LEFT )
- ->shouldBeCalled();
- $component->is_anchor_target()
- ->willReturn( false )
- ->shouldBeCalled();
- $component->set_json( 'layout', 'anchor-layout-left' )->shouldBeCalled();
-
- $layouts->set_anchor_layout_for( $component->reveal() );
-
- $this->assertTrue( array_key_exists( 'anchor-layout-left', $layouts->to_array() ) );
- }
-
-}
diff --git a/tests/apple-exporter/builders/test-class-component-styles.php b/tests/apple-exporter/builders/test-class-component-styles.php
deleted file mode 100644
index f1ae028f0..000000000
--- a/tests/apple-exporter/builders/test-class-component-styles.php
+++ /dev/null
@@ -1,45 +0,0 @@
-settings = new Settings();
- $this->content = new Exporter_Content( 1, 'My Title', 'Hello, World!
' );
- }
-
- /**
- * Tests the functionality of the builder.
- *
- * @see \Apple_Exporter\Builders\Component_Styles::build()
- *
- * @access public
- */
- public function testBuiltArray() {
- $styles = new Component_Styles( $this->content, $this->settings );
- $styles->register_style( 'some-name', array( 'my-key' => 'my value' ) );
- $result = $styles->to_array();
-
- $this->assertEquals( 1, count( $result ) );
- $this->assertEquals( array( 'my-key' => 'my value' ), $result[ 'some-name' ] );
- }
-}
diff --git a/tests/apple-exporter/builders/test-class-component-text-styles.php b/tests/apple-exporter/builders/test-class-component-text-styles.php
deleted file mode 100644
index 9bb3cbdc3..000000000
--- a/tests/apple-exporter/builders/test-class-component-text-styles.php
+++ /dev/null
@@ -1,23 +0,0 @@
-settings = new Settings();
- $this->content = new Exporter_Content( 1, 'My Title', 'Hello, World!
' );
- }
-
- public function testBuiltArray() {
- $styles = new Component_Text_Styles( $this->content, $this->settings );
- $styles->register_style( 'some-name', 'my value' );
- $result = $styles->to_array();
-
- $this->assertEquals( 1, count( $result ) );
- $this->assertEquals( 'my value', $result[ 'some-name' ] );
- }
-
-}
diff --git a/tests/apple-exporter/builders/test-class-components.php b/tests/apple-exporter/builders/test-class-components.php
deleted file mode 100644
index f12cde91c..000000000
--- a/tests/apple-exporter/builders/test-class-components.php
+++ /dev/null
@@ -1,291 +0,0 @@
-set_theme_settings( [ 'cover_caption' => true ] );
-
- // Create a new post and set an image with a caption as the featured image.
- $post_id = self::factory()->post->create();
- $image = $this->get_new_attachment( $post_id, 'Test Caption', 'Test alt text' );
- set_post_thumbnail( $post_id, $image );
-
- // Ensure that the caption carries through to the export.
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'caption', $json['components'][0]['components'][1]['role'] );
- $this->assertEquals( 'Test Caption', $json['components'][0]['components'][1]['text'] );
-
- // Create a new post with an image with a caption in the content.
- $image_2 = $this->get_new_attachment( 0, 'Test Caption 2', 'Test alt text 2' );
- $post_id_2 = self::factory()->post->create( [ 'post_content' => $this->get_image_with_caption( $image_2 ) ] );
-
- // Ensure that the caption carries through to the export.
- $json_2 = $this->get_json_for_post( $post_id_2 );
- $this->assertEquals( 'caption', $json_2['components'][0]['components'][1]['role'] );
- $this->assertEquals( 'Test Caption 2', $json_2['components'][0]['components'][1]['text'] );
- }
-
- /**
- * Tests the image deduping functionality of the Components class.
- *
- * Ensures that a featured image with the same source URL (minus any crops)
- * as the first image in the post does not result in the same image
- * appearing twice in a row. This is accomplished by ignoring the featured
- * image and instead extracting the first image from the post to use as the
- * cover image.
- */
- public function testFeaturedImageDeduping() {
- $this->set_theme_settings( [ 'cover_caption' => true ] );
-
- // Get two images.
- $image_1 = $this->get_new_attachment();
- $image_2 = $this->get_new_attachment();
-
- /*
- * Scenario 1:
- * - No featured image is set.
- * - No images in the content.
- * Expected: No cover image is set.
- */
- $post_1 = self::factory()->post->create();
- $json_1 = $this->get_json_for_post( $post_1 );
- $this->assertNotEquals( 'headerPhotoLayout', $json_1['components'][0]['layout'] );
-
- /*
- * Scenario 2:
- * - A featured image is set.
- * - No images in the content.
- * Expected: The featured image is set as the cover image.
- */
- $post_2 = self::factory()->post->create();
- set_post_thumbnail( $post_2, $image_1 );
- $json_2 = $this->get_json_for_post( $post_2 );
- $this->assertEquals( 'header', $json_2['components'][0]['role'] );
- $this->assertEquals( 'headerPhotoLayout', $json_2['components'][0]['layout'] );
- $this->assertEquals( 'photo', $json_2['components'][0]['components'][0]['role'] );
- $this->assertEquals( 'headerPhotoLayout', $json_2['components'][0]['components'][0]['layout'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_1, 'full' ), $json_2['components'][0]['components'][0]['URL'] );
-
- /*
- * Scenario 3:
- * - A featured image is set.
- * - Image in the content, but not the same one as the featured image.
- * Expected: The featured image is set as the cover image and the body image is still in the body.
- */
- $post_3 = self::factory()->post->create( [ 'post_content' => wp_get_attachment_image( $image_2, 'full' ) ] );
- set_post_thumbnail( $post_3, $image_1 );
- $json_3 = $this->get_json_for_post( $post_3 );
- $this->assertEquals( 'header', $json_3['components'][0]['role'] );
- $this->assertEquals( 'headerPhotoLayout', $json_3['components'][0]['layout'] );
- $this->assertEquals( 'photo', $json_3['components'][0]['components'][0]['role'] );
- $this->assertEquals( 'headerPhotoLayout', $json_3['components'][0]['components'][0]['layout'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_1, 'full' ), $json_3['components'][0]['components'][0]['URL'] );
- $this->assertEquals( 'photo', $json_3['components'][1]['components'][2]['role'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_2, 'full' ), $json_3['components'][1]['components'][2]['URL'] );
-
- /*
- * Scenario 4:
- * - A featured image is set.
- * - Images in the content, including the same one as the featured image, but the featured image is not first.
- * Expected: The featured image is set as the cover image and the body image is still in the body.
- */
- $post_4 = self::factory()->post->create( [ 'post_content' => wp_get_attachment_image( $image_2, 'full' ) . wp_get_attachment_image( $image_1, 'full' ) ] );
- set_post_thumbnail( $post_4, $image_1 );
- $json_4 = $this->get_json_for_post( $post_4 );
- $this->assertEquals( 'header', $json_4['components'][0]['role'] );
- $this->assertEquals( 'headerPhotoLayout', $json_4['components'][0]['layout'] );
- $this->assertEquals( 'photo', $json_4['components'][0]['components'][0]['role'] );
- $this->assertEquals( 'headerPhotoLayout', $json_4['components'][0]['components'][0]['layout'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_1, 'full' ), $json_4['components'][0]['components'][0]['URL'] );
- $this->assertEquals( 'photo', $json_4['components'][1]['components'][2]['role'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_2, 'full' ), $json_4['components'][1]['components'][2]['URL'] );
- $this->assertEquals( 'photo', $json_4['components'][1]['components'][3]['role'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_1, 'full' ), $json_4['components'][1]['components'][3]['URL'] );
-
- /*
- * Scenario 5:
- * - A featured image is set.
- * - Images in the content, including the same one as the featured image, and the featured image is first.
- * Expected: The first image from the content is set as the cover image and the first image from the content has been removed. The featured image is ignored.
- */
- $post_5 = self::factory()->post->create( [ 'post_content' => wp_get_attachment_image( $image_1, 'full' ) . wp_get_attachment_image( $image_2, 'full' ) ] );
- set_post_thumbnail( $post_5, $image_1 );
- $json_5 = $this->get_json_for_post( $post_5 );
- $this->assertEquals( 'header', $json_5['components'][0]['role'] );
- $this->assertEquals( 'headerPhotoLayout', $json_5['components'][0]['layout'] );
- $this->assertEquals( 'photo', $json_5['components'][0]['components'][0]['role'] );
- $this->assertEquals( 'headerPhotoLayout', $json_5['components'][0]['components'][0]['layout'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_1, 'full' ), $json_5['components'][0]['components'][0]['URL'] );
- $this->assertEquals( 'photo', $json_5['components'][1]['components'][2]['role'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_2, 'full' ), $json_5['components'][1]['components'][2]['URL'] );
- $this->assertEquals( 3, count( $json_5['components'][1]['components'] ) );
-
- /*
- * Scenario 6:
- * - No featured image is set.
- * - Images in the content.
- * Expected: The first image from the content is set as the cover image and the first image from the content has been removed.
- */
- $post_6 = self::factory()->post->create( [ 'post_content' => wp_get_attachment_image( $image_1, 'full' ) . wp_get_attachment_image( $image_2, 'full' ) ] );
- $json_6 = $this->get_json_for_post( $post_6 );
- $this->assertEquals( 'header', $json_6['components'][0]['role'] );
- $this->assertEquals( 'headerPhotoLayout', $json_6['components'][0]['layout'] );
- $this->assertEquals( 'photo', $json_6['components'][0]['components'][0]['role'] );
- $this->assertEquals( 'headerPhotoLayout', $json_6['components'][0]['components'][0]['layout'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_1, 'full' ), $json_6['components'][0]['components'][0]['URL'] );
- $this->assertEquals( 'photo', $json_6['components'][1]['components'][2]['role'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_2, 'full' ), $json_6['components'][1]['components'][2]['URL'] );
- $this->assertEquals( 3, count( $json_6['components'][1]['components'] ) );
- }
-
- /**
- * Tests the functionality of the get_image_full_size_url function.
- *
- * @dataProvider dataImageFullSizeUrl
- *
- * @param string $original The original URL to test.
- * @param string $expected The expected result.
- *
- * @throws ReflectionException
- */
- public function testGetImageFullSizeUrl( $original, $expected ) {
- $class = new ReflectionClass( 'Apple_Exporter\Builders\Components' );
- $method = $class->getMethod( 'get_image_full_size_url' );
- $method->setAccessible( true );
- $builder = new Components( $this->content, $this->content_settings );
- $this->assertEquals( $expected, $method->invokeArgs( $builder, [ $original ] ) );
- }
-
- /**
- * Ensures that the specified component order is respected.
- *
- * @dataProvider dataMetaComponentOrdering
- *
- * @param array $order The meta component order setting to use.
- * @param array $expected The expected component order after compilation.
- * @param array $components The expected container components, in order.
- *
- * @access public
- */
- public function testMetaComponentOrdering( $order, $expected, $components ) {
- $this->set_theme_settings(
- [
- 'enable_advertisement' => 'no',
- 'meta_component_order' => $order,
- ]
- );
-
- // Make a post with a featured image and get the JSON for it.
- $post_id = self::factory()->post->create();
- $image = $this->get_new_attachment( $post_id );
- set_post_thumbnail( $post_id, $image );
- $json = $this->get_json_for_post( $post_id );
-
- // Test.
- for ( $i = 0; $i < count( $expected ); $i ++ ) {
- $this->assertEquals( $expected[ $i ], $json['components'][ $i ]['role'] );
- if ( 'container' === $json['components'][ $i ]['role'] ) {
- for ( $j = 0; $j < count( $components ); $j ++ ) {
- $this->assertEquals(
- $components[ $j ],
- $json['components'][ $i ]['components'][ $j ]['role']
- );
- }
- }
- }
- }
-}
diff --git a/tests/apple-exporter/builders/test-class-layout.php b/tests/apple-exporter/builders/test-class-layout.php
deleted file mode 100644
index 88683afa4..000000000
--- a/tests/apple-exporter/builders/test-class-layout.php
+++ /dev/null
@@ -1,30 +0,0 @@
-settings = new Settings();
- $this->content = new Exporter_Content( 1, 'My Title', 'Hello, World!
' );
- }
-
- public function testRegisterLayout() {
- $theme = \Apple_Exporter\Theme::get_used();
- $settings = $theme->all_settings();
- $settings['layout_margin'] = 123;
- $settings['layout_gutter'] = 222;
- $theme->load( $settings );
- $this->assertTrue( $theme->save() );
- $layout = new Layout( $this->content, $this->settings );
- $result = $layout->to_array();
-
- $this->assertEquals( $theme->get_layout_columns(), $result[ 'columns' ] );
- $this->assertEquals( $theme->get_value( 'layout_width' ), $result[ 'width' ] );
- $this->assertEquals( 123, $result[ 'margin' ] );
- $this->assertEquals( 222, $result[ 'gutter' ] );
- }
-}
diff --git a/tests/apple-exporter/builders/test-class-metadata.php b/tests/apple-exporter/builders/test-class-metadata.php
deleted file mode 100644
index de58f68b6..000000000
--- a/tests/apple-exporter/builders/test-class-metadata.php
+++ /dev/null
@@ -1,169 +0,0 @@
-enable_coauthors_support();
- global $apple_news_coauthors;
- $apple_news_coauthors = [ 'Test Author 1', 'Test Author 2' ];
- $author = self::factory()->user->create( [ 'display_name' => 'Test Author' ] );
- $post_id = self::factory()->post->create( [ 'post_author' => $author ] );
- $result = $this->get_json_for_post( $post_id );
- $metadata = $result['metadata'];
-
- // Assertions.
- $this->assertEquals(
- [ 'Test Author 1', 'Test Author 2' ],
- $metadata['authors']
- );
-
- // Cleanup.
- $apple_news_coauthors = [];
- $this->disable_coauthors_support();
- }
-
- /**
- * Ensures that metadata is properly set.
- */
- public function test_metadata() {
- // Setup.
- $author = self::factory()->user->create( [ 'display_name' => 'Test Author' ] );
- $post_id = self::factory()->post->create(
- [
- 'post_author' => $author,
- 'post_content' => 'Hello, World!
',
- 'post_date' => '2016-04-01 00:00:00',
- 'post_excerpt' => 'Sample excerpt.',
- 'post_title' => 'My Title',
- ]
- );
- $image = $this->get_new_attachment( $post_id );
- set_post_thumbnail( $post_id, $image );
- $metadata = [
- [
- 'key' => 'isBoolean',
- 'type' => 'boolean',
- 'value' => true,
- ],
- [
- 'key' => 'isNumber',
- 'type' => 'number',
- 'value' => 3,
- ],
- [
- 'key' => 'isString',
- 'type' => 'string',
- 'value' => 'Test String Value',
- ],
- [
- 'key' => 'isArray',
- 'type' => 'array',
- 'value' => '["a", "b", "c"]',
- ],
- ];
- add_post_meta( $post_id, 'apple_news_metadata', $metadata );
- $result = $this->get_json_for_post( $post_id );
- $metadata = $result['metadata'];
-
- // Assertions.
- $this->assertEquals(
- [ 'Test Author' ],
- $metadata['authors']
- );
- $this->assertEquals(
- '2016-04-01T00:00:00+00:00',
- $metadata['dateCreated']
- );
- $this->assertEquals(
- '2016-04-01T00:00:00+00:00',
- $metadata['dateModified']
- );
- $this->assertEquals(
- '2016-04-01T00:00:00+00:00',
- $metadata['datePublished']
- );
- $this->assertEquals(
- 'Sample excerpt.',
- $metadata['excerpt']
- );
- $this->assertEquals(
- wp_get_attachment_url( $image ),
- $metadata['thumbnailURL']
- );
- $this->assertEquals(
- true,
- $metadata['isBoolean']
- );
- $this->assertEquals(
- 3,
- $metadata['isNumber']
- );
- $this->assertEquals(
- 'Test String Value',
- $metadata['isString']
- );
- $this->assertEquals(
- ['a', 'b', 'c'],
- $metadata['isArray']
- );
- }
-
- /**
- * Ensures video metadata is properly added.
- *
- * @param string $poster The URL to the poster image for the video.
- * @param string $video The URL to the video.
- *
- * @dataProvider data_video
- */
- public function test_video( $poster, $video ) {
- // Setup.
- $post_id = self::factory()->post->create(
- [
- 'post_content' => ' ',
- ]
- );
- $result = $this->get_json_for_post( $post_id );
- $metadata = $result['metadata'];
-
- // Assertions.
- $this->assertEquals( $poster, $metadata['thumbnailURL'] );
- $this->assertEquals( $video, $metadata['videoURL'] );
- }
-}
diff --git a/tests/apple-exporter/components/class-component-testcase.php b/tests/apple-exporter/components/class-component-testcase.php
deleted file mode 100644
index 0d3132e3b..000000000
--- a/tests/apple-exporter/components/class-component-testcase.php
+++ /dev/null
@@ -1,45 +0,0 @@
-loadHTML( '' . $html );
- libxml_clear_errors();
-
- // Find the first-level nodes of the body tag.
- return $dom->getElementsByTagName( 'body' )->item( 0 )->childNodes->item( 0 );
- }
-
- /**
- * A function to ensure that tokens are replaced in a JSON string.
- *
- * @param string $json The JSON to check for unreplaced tokens.
- *
- * @access protected
- */
- protected function ensure_tokens_replaced( $json ) {
- preg_match( '/"#[^"#]+#"/', $json, $matches );
- $this->assertEmpty( $matches );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-advertisement.php b/tests/apple-exporter/components/test-class-advertisement.php
deleted file mode 100644
index 078bec1ba..000000000
--- a/tests/apple-exporter/components/test-class-advertisement.php
+++ /dev/null
@@ -1,60 +0,0 @@
-workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $json = $component->to_array();
-
- $this->assertEquals( 'banner_advertisement', $json['role'] );
- $this->assertEquals( 'standard', $json['bannerType'] );
- }
-
- /**
- * Tests the behavior of the apple_news_advertisement_json filter.
- */
- public function testFilter() {
- $component = new Advertisement(
- null,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- add_filter(
- 'apple_news_advertisement_json',
- function( $json ) {
- $json['bannerType'] = 'double_height';
- return $json;
- }
- );
-
- $json = $component->to_array();
- $this->assertEquals( 'double_height', $json['bannerType'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-audio.php b/tests/apple-exporter/components/test-class-audio.php
deleted file mode 100644
index 518c35310..000000000
--- a/tests/apple-exporter/components/test-class-audio.php
+++ /dev/null
@@ -1,93 +0,0 @@
-',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- $json = $component->to_array();
- $this->assertEquals( 'audio', $json['role'] );
- $this->assertEquals( 'http://someurl.com/audio-file.mp3?some_query=string', $json['URL'] );
- }
-
- /**
- * Tests HTML formatting with captions.
- */
- public function testCaption() {
- $component = new Audio(
- 'caption ',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- // Test.
- $this->assertEquals(
- array(
- 'role' => 'container',
- 'components' => array(
- array(
- 'role' => 'audio',
- 'URL' => 'https://www.someurl.com/Song-1.mp3',
- ),
- array(
- 'role' => 'caption',
- 'text' => 'caption',
- 'format' => 'html',
- )
- )
- ),
- $component->to_array()
- );
- }
-
- /**
- * Tests the behavior of the apple_news_audio_json filter.
- */
- public function testFilter() {
- $component = new Audio(
- ' ',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- add_filter(
- 'apple_news_audio_json',
- function( $json ) {
- $json['URL'] = 'http://someurl.com/audio-file.mp3?some_query=string';
- return $json;
- }
- );
-
- $json = $component->to_array();
- $this->assertEquals( 'audio', $json['role'] );
- $this->assertEquals( 'http://someurl.com/audio-file.mp3?some_query=string', $json['URL'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-body.php b/tests/apple-exporter/components/test-class-body.php
deleted file mode 100644
index 60b961230..000000000
--- a/tests/apple-exporter/components/test-class-body.php
+++ /dev/null
@@ -1,397 +0,0 @@
-
-A
-
-
-
-
-
-
-
-B
-
-HTML
- ],
-
- // Test Gutenberg editor, paragraph tag containing a single space.
- [
- <<
-A
-
-
-
-
-
-
-
-B
-
-HTML
- ],
-
- // Test Gutenberg editor, paragraph tag containing a non-breaking space.
- [
- <<
-A
-
-
-
-
-
-
-
-B
-
-HTML
- ],
-
- // Test Gutenberg editor, extra paragraph at the end.
- [
- <<
-A
-
-
-
-B
-
-
-
-
-
-HTML
- ],
-
- // Test Gutenberg editor, extra paragraph at the end containing a space.
- [
- <<
-A
-
-
-
-B
-
-
-
-
-
-HTML
- ],
-
- // Test Gutenberg editor, extra paragraph at the end containing a non-breaking space.
- [
- <<
-A
-
-
-
-B
-
-
-
-
-
-HTML
- ],
-
- // Test Gutenberg editor, extra paragraph at the end containing a non-breaking space surrounded by a link tag.
- [
- <<
-A
-
-
-
-B
-
-
-
-
-
-HTML
- ],
- ];
- }
-
- /**
- * A filter function to modify the text style in the generated JSON.
- *
- * @param array $json The JSON array to modify.
- *
- * @return array The modified JSON.
- */
- public function filter_apple_news_body_json( $json ) {
- $json['textStyle'] = 'fancy-body';
-
- return $json;
- }
-
- /**
- * A filter function to modify the HTML enabled flag for this component.
- *
- * @param bool $enabled Whether HTML support is enabled for this component.
- *
- * @return bool Whether HTML support is enabled for this component.
- */
- public function filter_apple_news_body_html_enabled( $enabled ) {
- return ! $enabled;
- }
-
- /**
- * Tests code formatting.
- */
- public function test_code_formatting() {
- $content = <<
-Lorem ipsum. Dolor sit amet.
-
-
-
-Preformatted text.
-
-
-
-Testing a code sample
.
-
-HTML;
- $post_id = self::factory()->post->create( [ 'post_content' => $content ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'body', $json['components'][2]['role'] );
- $this->assertEquals( 'html', $json['components'][2]['format'] );
- $this->assertEquals( 'Lorem ipsum. Dolor sit amet.
', $json['components'][2]['text'] );
- $this->assertEquals( 'body', $json['components'][3]['role'] );
- $this->assertEquals( 'html', $json['components'][3]['format'] );
- $this->assertEquals( 'Preformatted text. ', $json['components'][3]['text'] );
- $this->assertEquals( 'body', $json['components'][4]['role'] );
- $this->assertEquals( 'html', $json['components'][4]['format'] );
- $this->assertEquals( 'Testing a code sample
.
', $json['components'][4]['text'] );
- }
-
- /**
- * Tests handling for empty HTML content.
- *
- * @dataProvider data_empty_html
- *
- * @param string $post_content The post content for the post.
- */
- public function test_empty_html_content( $post_content ) {
- $post_id = self::factory()->post->create( [ 'post_content' => $post_content ] );
- $json = $this->get_json_for_post( $post_id );
-
- // There should only be two body components, one containing A, one containing B.
- $this->assertEquals( 4, count( $json['components'] ) );
- $this->assertEquals( 'A
', $json['components'][2]['text'] );
- $this->assertEquals( 'B
', $json['components'][3]['text'] );
- }
-
- /**
- * Test the `apple_news_body_json` filter.
- */
- public function test_filter() {
- add_filter( 'apple_news_body_json', [ $this, 'filter_apple_news_body_json' ] );
-
- // Create a test post and get JSON for it.
- $post_id = self::factory()->post->create();
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'body', $json['components'][2]['role'] );
- $this->assertEquals( 'fancy-body', $json['components'][2]['textStyle'] );
-
- // Teardown.
- remove_filter( 'apple_news_body_json', [ $this, 'filter_apple_news_body_json' ] );
- }
-
- /**
- * Test the `apple_news_body_html_enabled` filter.
- */
- public function test_filter_html() {
- // Test before filter.
- $post_id = self::factory()->post->create( [ 'post_content' => 'Test content.' ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'body', $json['components'][2]['role'] );
- $this->assertEquals( 'html', $json['components'][2]['format'] );
- $this->assertEquals( 'Test content.
', $json['components'][2]['text'] );
-
-
- // Add filter and test to ensure HTML mode is not used.
- add_filter( 'apple_news_body_html_enabled', [ $this, 'filter_apple_news_body_html_enabled' ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'body', $json['components'][2]['role'] );
- $this->assertEquals( 'markdown', $json['components'][2]['format'] );
- $this->assertEquals( 'Test content.', $json['components'][2]['text'] );
- remove_filter( 'apple_news_body_html_enabled', [ $this, 'filter_apple_news_body_html_enabled' ] );
- }
-
- /**
- * Tests body settings.
- */
- public function test_settings() {
- $this->set_theme_settings(
- [
- 'body_font' => 'AmericanTypewriter',
- 'body_size' => 20,
- 'body_color' => '#abcdef',
- 'body_color_dark' => '#bcdef0',
- 'body_link_color' => '#fedcba',
- 'body_link_color_dark' => '#edcba0',
- 'body_line_height' => 28,
- 'body_tracking' => 50,
- 'dropcap_background_color' => '#abcabc',
- 'dropcap_background_color_dark' => '#bcabc0',
- 'dropcap_color' => '#defdef',
- 'dropcap_color_dark' => '#efdef0',
- 'dropcap_font' => 'AmericanTypewriter-Bold',
- 'dropcap_number_of_characters' => 15,
- 'dropcap_number_of_lines' => 10,
- 'dropcap_number_of_raised_lines' => 5,
- 'dropcap_padding' => 20,
- ]
- );
- $content = <<
-Paragraph 1.
-
-
-
-Paragraph 2.
-
-HTML;
- $post_id = self::factory()->post->create( [ 'post_content' => $content ] );
- $json = $this->get_json_for_post( $post_id );
-
- // Validate body settings in generated JSON.
- $this->assertEquals( 'AmericanTypewriter', $json['componentTextStyles']['default-body']['fontName'] );
- $this->assertEquals( 20, $json['componentTextStyles']['default-body']['fontSize'] );
- $this->assertEquals( '#abcdef', $json['componentTextStyles']['default-body']['textColor'] );
- $this->assertEquals( '#fedcba', $json['componentTextStyles']['default-body']['linkStyle']['textColor'] );
- $this->assertEquals( 28, $json['componentTextStyles']['default-body']['lineHeight'] );
- $this->assertEquals( 0.5, $json['componentTextStyles']['default-body']['tracking'] );
- $this->assertEquals( '#bcdef0', $json['componentTextStyles']['default-body']['conditional']['textColor'] );
- $this->assertEquals( '#edcba0', $json['componentTextStyles']['default-body']['conditional']['linkStyle']['textColor'] );
- $this->assertEquals( '#abcabc', $json['componentTextStyles']['dropcapBodyStyle']['dropCapStyle']['backgroundColor'] );
- $this->assertEquals( '#defdef', $json['componentTextStyles']['dropcapBodyStyle']['dropCapStyle']['textColor'] );
- $this->assertEquals( 'AmericanTypewriter-Bold', $json['componentTextStyles']['dropcapBodyStyle']['dropCapStyle']['fontName'] );
- $this->assertEquals( 15, $json['componentTextStyles']['dropcapBodyStyle']['dropCapStyle']['numberOfCharacters'] );
- $this->assertEquals( 10, $json['componentTextStyles']['dropcapBodyStyle']['dropCapStyle']['numberOfLines'] );
- $this->assertEquals( 5, $json['componentTextStyles']['dropcapBodyStyle']['dropCapStyle']['numberOfRaisedLines'] );
- $this->assertEquals( 20, $json['componentTextStyles']['dropcapBodyStyle']['dropCapStyle']['padding'] );
- $this->assertEquals( '#bcabc0', $json['componentTextStyles']['dropcapBodyStyle']['conditional']['dropCapStyle']['backgroundColor'] );
- $this->assertEquals( '#efdef0', $json['componentTextStyles']['dropcapBodyStyle']['conditional']['dropCapStyle']['textColor'] );
- $this->assertEquals( '#bcdef0', $json['componentTextStyles']['dropcapBodyStyle']['conditional']['textColor'] );
- $this->assertEquals( '#edcba0', $json['componentTextStyles']['dropcapBodyStyle']['conditional']['linkStyle']['textColor'] );
- }
-
- /**
- * Tests 0 values in tokens.
- */
- public function test_settings_zero_value_in_token() {
- $this->set_theme_settings( [ 'body_line_height' => 0 ] );
- $content = <<
-Paragraph 1.
-
-
-
-Paragraph 2.
-
-HTML;
- $post_id = self::factory()->post->create( [ 'post_content' => $content ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 0, $json['componentTextStyles']['default-body']['lineHeight'] );
- }
-
- /**
- * Test the setting to disable the initial dropcap.
- */
- public function test_without_dropcap() {
- $this->set_theme_settings( [ 'initial_dropcap' => 'no' ] );
- $content = <<
-Paragraph 1.
-
-
-
-Paragraph 2.
-
-HTML;
- $post_id = self::factory()->post->create( [ 'post_content' => $content ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'Paragraph 1.
', $json['components'][2]['text'] );
- $this->assertEquals( 'default-body', $json['components'][2]['textStyle'] );
- $this->assertEquals( 'Paragraph 2.
', $json['components'][3]['text'] );
- $this->assertEquals( 'default-body', $json['components'][3]['textStyle'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-byline.php b/tests/apple-exporter/components/test-class-byline.php
deleted file mode 100644
index ed2f3a009..000000000
--- a/tests/apple-exporter/components/test-class-byline.php
+++ /dev/null
@@ -1,89 +0,0 @@
-set_theme_settings( [ 'meta_component_order' => [ 'byline' ] ] );
- add_filter( 'apple_news_byline_json', [ $this, 'filter_apple_news_byline_json' ] );
-
- // Create a test post and get JSON for it.
- $post_id = self::factory()->post->create();
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'byline', $json['components'][0]['role'] );
- $this->assertEquals( 'fancy-layout', $json['components'][0]['layout'] );
-
- // Teardown.
- remove_filter( 'apple_news_byline_json', [ $this, 'filter_apple_news_byline_json' ] );
- }
-
- /**
- * Tests the render method for the component.
- */
- public function test_render() {
- $this->set_theme_settings( [ 'meta_component_order' => [ 'byline' ] ] );
-
- // Create a test post and get JSON for it.
- $user_id = self::factory()->user->create( [ 'display_name' => 'Test Author' ] );
- $post_id = self::factory()->post->create( [ 'post_author' => $user_id, 'post_date_gmt' => '1970-01-01 12:00:00' ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'byline', $json['components'][0]['role'] );
- $this->assertEquals( 'by Test Author | Jan 1, 1970 | 12:00 PM', $json['components'][0]['text'] );
- }
-
- /**
- * Tests byline settings.
- */
- public function test_settings() {
- $this->set_theme_settings(
- [
- 'byline_color' => '#abcdef',
- 'byline_color_dark' => '#123456',
- 'byline_font' => 'AmericanTypewriter',
- 'byline_line_height' => 12,
- 'byline_size' => 34,
- 'byline_tracking' => 56,
- ]
- );
-
- // Create a test post and get JSON for it.
- $user_id = self::factory()->user->create( [ 'display_name' => 'Test Author' ] );
- $post_id = self::factory()->post->create( [ 'post_author' => $user_id, 'post_date_gmt' => '1970-01-01 12:00:00' ] );
- $json = $this->get_json_for_post( $post_id );
-
- // Validate byline settings in generated JSON.
- $this->assertEquals( '#abcdef', $json['componentTextStyles']['default-byline']['textColor'] );
- $this->assertEquals( '#123456', $json['componentTextStyles']['default-byline']['conditional']['textColor'] );
- $this->assertEquals( 'AmericanTypewriter', $json['componentTextStyles']['default-byline']['fontName'] );
- $this->assertEquals( 12, $json['componentTextStyles']['default-byline']['lineHeight'] );
- $this->assertEquals( 34, $json['componentTextStyles']['default-byline']['fontSize'] );
- $this->assertEquals( 0.56, $json['componentTextStyles']['default-byline']['tracking'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-cover.php b/tests/apple-exporter/components/test-class-cover.php
deleted file mode 100644
index 64f6c12ff..000000000
--- a/tests/apple-exporter/components/test-class-cover.php
+++ /dev/null
@@ -1,130 +0,0 @@
-set_theme_settings( [ 'meta_component_order' => [ 'cover' ] ] );
- add_filter( 'apple_news_cover_json', [ $this, 'filter_apple_news_cover_json' ] );
-
- // Create a test post and get JSON for it.
- $post_id = self::factory()->post->create();
- $image_id = $this->get_new_attachment( $post_id, 'Test Caption', 'Test alt text.' );
- set_post_thumbnail( $post_id, $image_id );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'header', $json['components'][0]['role'] );
- $this->assertEquals( 'fancy-layout', $json['components'][0]['layout'] );
-
- // Teardown.
- remove_filter( 'apple_news_cover_json', [ $this, 'filter_apple_news_cover_json' ] );
- }
-
- /**
- * Ensures that the lightbox font is set to the same font face as the image caption.
- */
- public function test_lightbox_font() {
- $this->set_theme_settings(
- [
- 'caption_font' => 'Menlo-Regular',
- 'cover_caption' => true,
- 'meta_component_order' => [ 'cover' ],
- ]
- );
-
- // Create a new post and set the featured image with a caption.
- $post_id = self::factory()->post->create();
- $image_id = $this->get_new_attachment( $post_id, 'Test Caption', 'Test alt text.' );
- set_post_thumbnail( $post_id, $image_id );
- $json = $this->get_json_for_post( $post_id );
-
- // Ensure that the font set on the lightbox is the same as the font set on the caption above.
- $this->assertEquals(
- 'Menlo-Regular',
- $json['components'][0]['components'][0]['caption']['textStyle']['fontName']
- );
- }
-
- /**
- * Tests the render method for the component.
- */
- public function test_render() {
- $this->set_theme_settings(
- [
- 'cover_caption' => true,
- 'meta_component_order' => [ 'cover' ],
- ]
- );
-
- // Create a test post with an image in the content and get the JSON for it.
- // The image from the content should be the cover image, and the image should be removed from the content.
- $image_id = $this->get_new_attachment( 0, 'Test Caption', 'Test alt text.' );
- $post_id = self::factory()->post->create( [ 'post_content' => $this->get_image_with_caption( $image_id ) ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'header', $json['components'][0]['role'] );
- $this->assertEquals( 'photo', $json['components'][0]['components'][0]['role'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_id, 'full' ), $json['components'][0]['components'][0]['URL'] );
- $this->assertEquals( 'caption', $json['components'][0]['components'][1]['role'] );
- $this->assertEquals( 'Test Caption', $json['components'][0]['components'][1]['text'] );
- $this->assertEquals( 1, count( $json['components'] ) );
-
- // Create an image and attach it as the featured image to the previously created test post.
- // The featured image should be used as the cover, and the original image should not be removed from the content.
- $featured_image_id = $this->get_new_attachment( $post_id, 'Test Featured Image Caption', 'Test featured image alt text.' );
- set_post_thumbnail( $post_id, $featured_image_id );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'header', $json['components'][0]['role'] );
- $this->assertEquals( 'photo', $json['components'][0]['components'][0]['role'] );
- $this->assertEquals( wp_get_attachment_image_url( $featured_image_id, 'full' ), $json['components'][0]['components'][0]['URL'] );
- $this->assertEquals( 'caption', $json['components'][0]['components'][1]['role'] );
- $this->assertEquals( 'Test Featured Image Caption', $json['components'][0]['components'][1]['text'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_id, 'full' ), $json['components'][1]['components'][0]['components'][0]['URL'] );
-
- // Create an image and set it as the cover in postmeta.
- // The custom cover image should be used as the cover, and the original image should not be removed from the content.
- $cover_image_id = $this->get_new_attachment( $post_id, 'Test Cover Image Caption', 'Test cover image alt text.' );
- add_post_meta( $post_id, 'apple_news_coverimage', $cover_image_id );
- add_post_meta( $post_id, 'apple_news_coverimage_caption', 'Test Cover Image Postmeta Caption' );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'header', $json['components'][0]['role'] );
- $this->assertEquals( 'photo', $json['components'][0]['components'][0]['role'] );
- $this->assertEquals( wp_get_attachment_image_url( $cover_image_id, 'full' ), $json['components'][0]['components'][0]['URL'] );
- $this->assertEquals( 'caption', $json['components'][0]['components'][1]['role'] );
- $this->assertEquals( 'Test Cover Image Postmeta Caption', $json['components'][0]['components'][1]['text'] );
- $this->assertEquals( wp_get_attachment_image_url( $image_id, 'full' ), $json['components'][1]['components'][0]['components'][0]['URL'] );
-
- // Turn off the cover caption feature and ensure that the caption is removed.
- $this->set_theme_settings( [ 'cover_caption' => false ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'header', $json['components'][0]['role'] );
- $this->assertEquals( 'photo', $json['components'][0]['components'][0]['role'] );
- $this->assertEquals( wp_get_attachment_image_url( $cover_image_id, 'full' ), $json['components'][0]['components'][0]['URL'] );
- $this->assertEquals( 1, count( $json['components'][0]['components'] ) );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-divider.php b/tests/apple-exporter/components/test-class-divider.php
deleted file mode 100644
index 2099e300f..000000000
--- a/tests/apple-exporter/components/test-class-divider.php
+++ /dev/null
@@ -1,61 +0,0 @@
- tag gets converted to a Divider component.
- */
- public function testBuildingRemovesTags() {
- $component = new Divider(
- ' ',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $result = $component->to_array();
-
- $this->assertEquals( 'divider', $result['role'] );
- $this->assertEquals( 'divider-layout', $result['layout'] );
- $this->assertNotNull( $result['stroke'] );
- }
-
- /**
- * Tests the behavior of the apple_news_divider_json filter.
- */
- public function testFilter() {
- $component = new Divider(
- ' ',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- add_filter(
- 'apple_news_divider_json',
- function( $json ) {
- $json['layout'] = 'fancy-layout';
- return $json;
- }
- );
-
- $result = $component->to_array();
- $this->assertEquals( 'fancy-layout', $result['layout'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-embed-generic.php b/tests/apple-exporter/components/test-class-embed-generic.php
deleted file mode 100644
index 14ddad6bd..000000000
--- a/tests/apple-exporter/components/test-class-embed-generic.php
+++ /dev/null
@@ -1,692 +0,0 @@
-
-
-
-HTML
- ,
- 'https://read.amazon.com/kp/card?preview=inline&linkCode=kpd&ref_=k4w_oembed_7cXLROJYP0bDqM&asin=B00E257T6C&tag=kpembed-20',
- 'Amazon',
- 'The Design of Everyday Things: Revised and Expanded Edition',
- ],
-
- // Gutenberg: Animoto embed.
- [
- <<
-
-
-HTML
- ,
- 'https://s3.amazonaws.com/embed.animoto.com/play.html?w=swf/production/vp1&e=1565635838&f=WmGs0SgMeHvBMur0fL68rw&d=0&m=b&r=360p+480p+720p&i=m&asset_domain=s3-p.animoto.com&animoto_domain=animoto.com&options=',
- 'Animoto',
- 'Video Player',
- ],
-
- // Gutenberg: Cloudup embed.
- [
- <<
-
-
-HTML
- ,
- 'https://cloudup.com/cjZ6QGIsErH?chromeless',
- 'Cloudup',
- 'Video Stream - share clips and home movies',
- ],
-
- // Gutenberg: CollegeHumor embed.
- [
- <<
-
-
-HTML
- ,
- 'https://www.collegehumor.com/e/3922232',
- 'CollegeHumor',
- 'Prank War 7: The Half Million Dollar Shot',
- ],
-
- // Gutenberg: Crowdsignal embed.
- [
- <<
-HTML
- ,
- 'https://poll.fm/10029863',
- 'Crowdsignal',
- ],
-
- // Gutenberg: Dailymotion embed.
- [
- <<
-
-
-HTML
- ,
- 'https://www.dailymotion.com/embed/video/xoxulz',
- 'Dailymotion',
- 'Babysitter!',
- ],
-
- // Gutenberg: Flickr embed.
- [
- <<
-
-
-HTML
- ,
- 'https://flickr.com/photos/bees/2362225867/',
- 'Flickr',
- ],
-
- // Gutenberg: Hulu embed.
- [
- <<
-
-
-HTML
- ,
- 'https://www.hulu.com/embed.html?eid=0-njKp22bl4GivFXH0lh5w',
- 'Hulu',
- 'Wed, May 21, 2008 (Late Night With Conan O'Brien)',
- ],
-
- // Gutenberg: Imgur embed.
- [
- <<
-HTML
- ,
- 'https://imgur.com/a/CxNMoZy',
- 'Imgur',
- ],
-
- // Gutenberg: Issuu embed.
- [
- <<
-HTML
- ,
- 'https://issuu.com/iscience/docs/issue23',
- 'Issuu',
- ],
-
- // Gutenberg: Kickstarter embed.
- [
- <<
-
-
-HTML
- ,
- 'https://www.kickstarter.com/projects/1115015686/help-support-the-kiggins-theatre-to-go-digital/widget/video.html',
- 'Kickstarter',
- 'Help Support The Kiggins Theatre to go Digital!',
- ],
-
- // Gutenberg: Meetup.com embed.
- [
- <<
-
PHP Colombia Bogotá, CO 1,539 phperos
Este grupo es de desarrolladores para desarrolladores queremos crear reuniones físicas con todos los que amamos este incomprendido lenguaje de programación y apasionar a los d…
Check out this Meetup Group →
-
-HTML
- ,
- 'https://www.meetup.com/PHPColMeetup/',
- 'Meetup.com',
- ],
-
- // Gutenberg: Mixcloud embed.
- [
- <<
-
-
-HTML
- ,
- 'https://www.mixcloud.com/widget/iframe/?feed=https%3A%2F%2Fwww.mixcloud.com%2Fsohoradio%2Fmoving-sounds-with-james-heather-11082019%2F&hide_cover=1',
- 'Mixcloud',
- 'Moving Sounds With James Heather (11/08/2019)',
- ],
-
- // Gutenberg: Reddit embed.
- [
- <<
-HTML
- ,
- 'https://www.reddit.com/r/aww/comments/4lwccv/someone_came_to_visit_woodchips_for_scale/d3qol9a/',
- 'Reddit',
- ],
-
- // Gutenberg: ReverbNation embed.
- [
- <<
-
-
-HTML
- ,
- 'https://www.reverbnation.com/widget_code/html_widget/artist_3796072?widget_id=55&pwc%5Bsong_ids%5D=30572216',
- 'ReverbNation',
- 'Easy by Dyaphonic',
- ],
-
- // Gutenberg: Screencast embed.
- [
- <<
-
-
-HTML
- ,
- 'https://www.screencast.com/users/TechSmith_Media/folders/Camtasia/media/d89af74a-3a32-4c9f-8a85-ef83fdb5c39c/embed',
- 'Screencast',
- 'B-roll Blog Post - BB-8 - David Patton',
- ],
-
- // Gutenberg: Scribd embed.
- [
- <<
-
-
-HTML
- ,
- 'https://www.scribd.com/embeds/110799637/content',
- 'Scribd',
- 'Synthesis of Knowledge: Effects of Fire and Thinning Treatments on Understory Vegetation in Dry U.S. Forests',
- ],
-
- // Gutenberg: Slideshare embed.
- [
- <<
-HTML
- ,
- 'https://www.slideshare.net/slideshow/embed_code/key/6PCWPGFw9SwsAY',
- 'Slideshare',
- 'Business Quotes for 2011',
- ],
-
- // Gutenberg: SmugMug embed.
- [
- <<
-
-
-HTML
- ,
- 'https://stuckincustoms.smugmug.com/Portfolio/i-R8SMwnh',
- 'SmugMug',
- ],
-
- // Gutenberg: SoundCloud embed.
- [
- <<
-
-
-HTML
- ,
- 'https://w.soundcloud.com/player/?visual=true&url=https%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F293&show_artwork=true&maxwidth=640&maxheight=960&dnt=1',
- 'SoundCloud',
- 'Flickermood by Forss',
- ],
-
- // Gutenberg: Speaker Deck embed.
- [
- <<
-
-
-HTML
- ,
- 'https://speakerdeck.com/player/4648d440a3230130452522b217532879',
- 'Speaker Deck',
- 'Why Backbone',
- ],
-
- // Gutenberg: Spotify embed.
- [
- <<
-
-
-HTML
- ,
- 'https://open.spotify.com/embed/track/2qToAcex0ruZfbEbAy9OhW',
- 'Spotify',
- 'Spotify Embed: M1 A1',
- ],
-
- // Gutenberg: TED embed.
- [
- <<
-
-
-HTML
- ,
- 'https://embed.ted.com/talks/jill_bolte_taylor_s_powerful_stroke_of_insight',
- 'TED',
- 'Jill Bolte Taylor: My stroke of insight',
- ],
-
- // Gutenberg: TikTok embed.
- [
- <<
-HTML
- ,
- 'https://www.tiktok.com/@dynamic_wallpaper/video/6778286193776938241',
- 'TikTok',
- ],
-
- // Gutenberg: Tumblr embed.
- [
- <<
-HTML
- ,
- 'https://embed.tumblr.com/embed/post/D5irYqe4SehhxRSSl9nZ2Q/186928288420',
- 'Tumblr',
- ],
-
- // Gutenberg: VideoPress embed.
- [
- <<
-
-
-HTML
- ,
- 'https://videopress.com/embed/bd2G0c0g?hd=0',
- 'VideoPress',
- 'Matt Mullenweg: Matt on WordPress',
- ],
-
- // Gutenberg: WordPress embed.
- [
- <<
-HTML
- ,
- 'https://en.blog.wordpress.com/2019/08/10/the-second-edition-of-our-learn-user-support-workshop-is-open-for-signups/',
- 'the original site',
- ],
-
- // Gutenberg: WordPress.tv embed.
- [
- <<
-
-
-HTML
- ,
- 'https://videopress.com/embed/DK5mLrbr?hd=0',
- 'WordPress.tv',
- ],
-
- // Classic: Amazon Kindle embed.
- [
- <<
-HTML
- ,
- 'https://read.amazon.com/kp/card?preview=inline&linkCode=kpd&ref_=k4w_oembed_fQJVU4T7hZhNqQ&asin=B00E257T6C&tag=kpembed-20',
- 'Amazon',
- 'The Design of Everyday Things: Revised and Expanded Edition',
- ],
-
- // Classic: Animoto embed.
- [
- <<
-HTML
- ,
- 'https://s3.amazonaws.com/embed.animoto.com/play.html?w=swf/production/vp1&e=1565903296&f=WmGs0SgMeHvBMur0fL68rw&d=0&m=b&r=360p+480p+720p&i=m&asset_domain=s3-p.animoto.com&animoto_domain=animoto.com&options=',
- 'Animoto',
- 'Video Player',
- ],
-
- // Classic: Cloudup embed.
- [
- <<
-HTML
- ,
- 'https://cloudup.com/cjZ6QGIsErH?chromeless',
- 'Cloudup',
- 'Video Stream - share clips and home movies',
- ],
-
- // Classic: CollegeHumor embed.
- [
- <<
-HTML
- ,
- 'https://www.collegehumor.com/e/3922232',
- 'CollegeHumor',
- 'Prank War 7: The Half Million Dollar Shot',
- ],
-
- // Classic: Dailymotion embed.
- [
- <<
-HTML
- ,
- 'https://www.dailymotion.com/embed/video/xoxulz',
- 'Dailymotion',
- 'Babysitter!',
- ],
-
- // Classic: Hulu embed.
- [
- <<
-HTML
- ,
- 'https://www.hulu.com/embed.html?eid=0-njKp22bl4GivFXH0lh5w',
- 'Hulu',
- 'Wed, May 21, 2008 (Late Night With Conan O'Brien)',
- ],
-
- // Classic: Kickstarter embed.
- [
- <<
-HTML
- ,
- 'https://www.kickstarter.com/projects/1115015686/help-support-the-kiggins-theatre-to-go-digital/widget/video.html',
- 'Kickstarter',
- 'Help Support The Kiggins Theatre to go Digital!',
- ],
-
- // Classic: Mixcloud embed.
- [
- <<
-HTML
- ,
- 'https://www.mixcloud.com/widget/iframe/?feed=https%3A%2F%2Fwww.mixcloud.com%2Fsohoradio%2Fmoving-sounds-with-james-heather-11082019%2F&hide_cover=1',
- 'Mixcloud',
- 'Moving Sounds With James Heather (11/08/2019)',
- ],
-
- // Classic: ReverbNation embed.
- [
- <<
-HTML
- ,
- 'https://www.reverbnation.com/widget_code/html_widget/artist_3796072?widget_id=55&pwc%5Bsong_ids%5D=30572216',
- 'ReverbNation',
- 'Easy by Dyaphonic',
- ],
-
- // Classic: Scribd embed.
- [
- <<
-HTML
- ,
- 'https://www.scribd.com/embeds/110799637/content',
- 'Scribd',
- 'Synthesis of Knowledge: Effects of Fire and Thinning Treatments on Understory Vegetation in Dry U.S. Forests',
- ],
-
- // Classic: Slideshare embed.
- [
- <<
-
-HTML
- ,
- 'https://www.slideshare.net/slideshow/embed_code/key/6PCWPGFw9SwsAY',
- 'Slideshare',
- 'Business Quotes for 2011',
- ],
-
- // Classic: SoundCloud embed.
- [
- <<
-HTML
- ,
- 'https://w.soundcloud.com/player/?visual=true&url=https%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F293&show_artwork=true&maxwidth=640&maxheight=960&dnt=1',
- 'SoundCloud',
- 'Flickermood by Forss',
- ],
-
- // Classic: Speaker Deck embed.
- [
- <<
-HTML
- ,
- 'https://speakerdeck.com/player/4648d440a3230130452522b217532879',
- 'Speaker Deck',
- 'Why Backbone',
- ],
-
- // Classic: Spotify embed.
- [
- <<
-HTML
- ,
- 'https://open.spotify.com/embed/track/2qToAcex0ruZfbEbAy9OhW',
- 'Spotify',
- 'Spotify Embed: M1 A1',
- ],
-
- // Classic: TED embed.
- [
- <<
-HTML
- ,
- 'https://embed.ted.com/talks/jill_bolte_taylor_s_powerful_stroke_of_insight',
- 'TED',
- 'Jill Bolte Taylor: My stroke of insight',
- ],
-
- // Classic: VideoPress embed.
- [
- <<
-HTML
- ,
- 'https://videopress.com/embed/bd2G0c0g?hd=0',
- 'VideoPress',
- 'Matt Mullenweg: Matt on WordPress',
- ],
-
- // Classic: WordPress.tv embed. WordPress.tv will present as VideoPress when embedded this way.
- [
- <<
-HTML
- ,
- 'https://videopress.com/embed/DK5mLrbr?hd=0',
- 'VideoPress',
- ],
- ];
- }
-
- /**
- * A filter function to modify the URL in the generated JSON.
- *
- * @param array $json The JSON array to modify.
- *
- * @access public
- * @return array The modified JSON.
- */
- public function filter_apple_news_embed_generic_json( $json ) {
- $json['URL'] = 'https://www.example.org/test/posts/54321';
-
- return $json;
- }
-
- /**
- * Test the `apple_news_embed_generic_json` filter.
- *
- * @access public
- */
- public function testFilter() {
-
- // Setup.
- $component = new Embed_Generic(
- 'https://www.example.org/test/posts/12345',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- add_filter(
- 'apple_news_embed_generic_json',
- array( $this, 'filter_apple_news_embed_generic_json' )
- );
-
- // Test.
- $result = $component->to_array();
- $this->assertEquals(
- 'https://www.example.org/test/posts/54321',
- $result['URL']
- );
-
- // Teardown.
- remove_filter(
- 'apple_news_embed_generic_json',
- array( $this, 'filter_apple_news_embed_generic_json' )
- );
- }
-
- /**
- * Tests the transformation process from oEmbed HTML to an Embed Generic component.
- *
- * @dataProvider data_transform
- *
- * @param string $html The HTML to test.
- * @param string $url The expected URL associated with the embed.
- * @param string $provider The expected name of the provider associated with the embed.
- * @param string $title Optional. The title for the embed, if there is one.
- *
- * @access public
- */
- public function testTransform( $html, $url, $provider, $title = '' ) {
-
- // Setup.
- $component = new Embed_Generic(
- $html,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- // Ensure that the node match returns true for valid signatures.
- $node = self::build_node( $html );
- $this->assertEquals(
- $component->node_matches( $node ),
- $node
- );
-
- // Set up expected components result.
- $components = [
- [
- 'role' => 'body',
- 'text' => '' . 'View on ' . $provider . '.' . ' ',
- 'format' => 'html',
- 'textStyle' => [
- 'fontSize' => 14,
- ],
- ],
- ];
-
- // If there is a provided title, push it on to the front of the components array.
- if ( ! empty( $title ) ) {
- array_unshift(
- $components,
- [
- 'role' => 'heading2',
- 'text' => $title,
- 'format' => 'html',
- ]
- );
- }
-
- // Test.
- $this->assertEquals(
- [
- 'layout' => 'embed-generic-layout',
- 'role' => 'container',
- 'components' => $components,
- ],
- $component->to_array()
- );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-embed-web-video.php b/tests/apple-exporter/components/test-class-embed-web-video.php
deleted file mode 100644
index cf2ee8ab0..000000000
--- a/tests/apple-exporter/components/test-class-embed-web-video.php
+++ /dev/null
@@ -1,224 +0,0 @@
-https://www.youtube.com/embed/0qwALOOvUik',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'https://www.youtube.com/watch?v=0qwALOOvUik
',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'https://youtube.com/embed/0qwALOOvUik
',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'https://youtube.com/watch?v=0qwALOOvUik
',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'http://www.youtube.com/embed/0qwALOOvUik
',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'http://www.youtube.com/watch?v=0qwALOOvUik
',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'http://youtube.com/embed/0qwALOOvUik
',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'http://youtu.be/0qwALOOvUik
',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'http://youtube.com/watch?v=0qwALOOvUik
',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'https://youtu.be/0qwALOOvUik
',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'https://www.youtube.com/watch?v=J2nN-Yrt1EU
',
- 'https://www.youtube.com/embed/J2nN-Yrt1EU',
- ),
- array(
- 'https://www.youtube.com/embed/J2nN-Yrt1EU
',
- 'https://www.youtube.com/embed/J2nN-Yrt1EU',
- ),
- array(
- 'https://youtu.be/J2nN-Yrt1EU
',
- 'https://www.youtube.com/embed/J2nN-Yrt1EU',
- ),
- array(
- 'https://vimeo.com/12819723
',
- 'https://player.vimeo.com/video/12819723',
- ),
- array(
- 'VIDEO ',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'VIDEO ',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'VIDEO ',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'VIDEO ',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- 'http://youtube.com/embed/0qwALOOvUik
',
- 'https://www.youtube.com/embed/0qwALOOvUik',
- ),
- array(
- '',
- 'https://player.vimeo.com/video/12819723',
- ),
- array(
- '',
- 'https://player.vimeo.com/video/12819723',
- ),
- );
- }
-
- /**
- * A filter function to modify the aspect ratio.
- *
- * @param array $json An array representing JSON for the component.
- *
- * @access public
- * @return array The modified JSON.
- */
- public function filter_apple_news_embed_web_video_json( $json ) {
- $json['aspectRatio'] = '1.4';
- return $json;
- }
-
- /**
- * Test the `apple_news_embed_web_video_json` filter.
- *
- * @access public
- */
- public function testFilter() {
-
- // Setup.
- add_filter(
- 'apple_news_embed_web_video_json',
- array( $this, 'filter_apple_news_embed_web_video_json' )
- );
- $component = new Embed_Web_Video(
- 'https://vimeo.com/12819723
',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- // Test.
- $this->assertEquals(
- array(
- 'role' => 'embedwebvideo',
- 'URL' => 'https://player.vimeo.com/video/12819723',
- 'aspectRatio' => '1.4',
- 'layout' => 'embed-web-video-layout',
- ),
- $component->to_array()
- );
-
- // Teardown.
- remove_filter(
- 'apple_news_embed_web_video_json',
- array( $this, 'filter_apple_news_embed_web_video_json' )
- );
- }
-
- /**
- * Tests the transformation process from a web video URL to an
- * Embed_Web_Video component.
- *
- * Tests a variety of URL formats to ensure that they produce the
- * proper output JSON using the dataProvider referenced below.
- *
- * @dataProvider dataTransformEmbedWebVideo
- *
- * @param string $html The HTML to be matched by the parser.
- * @param string $final_url The final URL used in the JSON.
- *
- * @access public
- */
- public function testTransformEmbedWebVideo( $html, $final_url ) {
-
- // Setup.
- $component = new Embed_Web_Video(
- $html,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- // Test.
- $this->assertEquals(
- array(
- 'role' => 'embedwebvideo',
- 'URL' => $final_url,
- 'aspectRatio' => '1.777',
- 'layout' => 'embed-web-video-layout'
- ),
- $component->to_array()
- );
- }
-
- /**
- * Tests an unsupported video provider.
- *
- * @access public
- */
- public function testTransformUnsupportedProvider() {
-
- // Setup.
- $component = new Embed_Web_Video(
- '',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- // Test.
- $this->assertNull( $component->to_array() );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-end-of-article.php b/tests/apple-exporter/components/test-class-end-of-article.php
deleted file mode 100644
index 925f895ca..000000000
--- a/tests/apple-exporter/components/test-class-end-of-article.php
+++ /dev/null
@@ -1,50 +0,0 @@
-post->create();
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 3, count( $json['components'] ) );
- }
-
- /**
- * Test adding of End Of Article JSON content
- */
- public function testEndOfArticleContent() {
- // Setup.
- $this->set_theme_settings(
- [
- 'json_templates' => [
- 'end_of_article' => [
- 'json' => [
- 'role' => 'heading',
- ],
- 'layout' => [],
- ],
- ],
- ]
- );
-
- $post_id = self::factory()->post->create();
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 4, count( $json['components'] ) );
- $this->assertEquals( 'heading', $json['components'][3]['role'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-facebook.php b/tests/apple-exporter/components/test-class-facebook.php
deleted file mode 100644
index 6969d577a..000000000
--- a/tests/apple-exporter/components/test-class-facebook.php
+++ /dev/null
@@ -1,159 +0,0 @@
-workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- add_filter(
- 'apple_news_facebook_json',
- array( $this, 'filter_apple_news_facebook_json' )
- );
-
- // Test.
- $result = $component->to_array();
- $this->assertEquals(
- 'https://www.facebook.com/test/posts/54321',
- $result['URL']
- );
-
- // Teardown.
- remove_filter(
- 'apple_news_facebook_json',
- array( $this, 'filter_apple_news_facebook_json' )
- );
- }
-
- /**
- * Tests the transformation process from an oEmbed URL to a Facebook component.
- *
- * @dataProvider data_transform
- *
- * @param string $url The URL to test.
- *
- * @access public
- */
- public function testTransform( $url ) {
-
- // Setup.
- $component = new Facebook(
- $url,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- // Test.
- $this->assertEquals(
- array(
- 'role' => 'facebook_post',
- 'URL' => $url,
- ),
- $component->to_array()
- );
-
- // Test the node - correct css class and fb url.
- $node = self::build_node( sprintf( '
', esc_url( $url ) ) );
-
- $this->assertEquals(
- $component->node_matches( $node ),
- $node
- );
-
- // Test the node - WordPress.com embed syntax.
- $wpcom_embed_html = '
';
- $node = self::build_node( $wpcom_embed_html );
-
- $this->assertEquals(
- $component->node_matches( $node ),
- $node
- );
-
- $component = new Facebook(
- $wpcom_embed_html,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- $this->assertEquals(
- array(
- 'role' => 'facebook_post',
- 'URL' => $url,
- ),
- $component->to_array()
- );
-
- // Test the node - *incorrect* css class and fb url.
- $node_failure = self::build_node( sprintf( '
', esc_url( $url ) ) );
-
- $this->assertEmpty( $component->node_matches( $node_failure ) );
-
- // Test the node - in-text Facebook URL.
- $node_failure = self::build_node( sprintf( 'Visit us on Facebook at %s !', esc_url( $url ), esc_html( $url ) ) );
-
- $this->assertEmpty( $component->node_matches( $node_failure ) );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-gallery.php b/tests/apple-exporter/components/test-class-gallery.php
deleted file mode 100644
index 485d19034..000000000
--- a/tests/apple-exporter/components/test-class-gallery.php
+++ /dev/null
@@ -1,150 +0,0 @@
-
-
-
-
-
-
- Test Caption 1
-
-
-
-
-
- Test Caption 2
-
-
-
-
-
- Test Caption 3
-
-
-
-
-
-HTML;
-
- // Gutenberg, Jetpack slideshow, three images.
- $content[][] = <<
-
-
-
-
-
-
- Test Caption 1
-
-
-
-
-
- Test Caption 2
-
-
-
-
-
- Test Caption 3
-
-
-
-
-
-
-
-
-
-
-HTML;
-
- // Classic editor, gallery, three images.
- $content[][] = '[gallery ids="%1$d,%4$d,%7$d"]';
-
- return $content;
- }
-
- /**
- * Given post content, ensures that the gallery is properly converted to
- * Apple News Format.
- *
- * @dataProvider data_gallery_content
- *
- * @param string $post_content The post content to load into the example post.
- */
- public function test_component( $post_content ) {
- // Create three new images for testing.
- $images = [
- $this->get_new_attachment( 0, 'Test Caption 1', 'Alt Text 1' ),
- $this->get_new_attachment( 0, 'Test Caption 2', 'Alt Text 2' ),
- $this->get_new_attachment( 0, 'Test Caption 3', 'Alt Text 3' ),
- ];
-
- // Replace the tokens in post_content using real values from the attachments.
- $post_content = sprintf(
- $post_content,
- $images[0],
- wp_get_attachment_image_url( $images[0] ),
- get_permalink( $images[0] ),
- $images[1],
- wp_get_attachment_image_url( $images[1] ),
- get_permalink( $images[1] ),
- $images[2],
- wp_get_attachment_image_url( $images[2] ),
- get_permalink( $images[2] )
- );
-
- // Create the test post with the remapped post content.
- $post_id = self::factory()->post->create( [ 'post_content' => $post_content ] );
-
- // Create a new attachment and assign it as the featured image for the cover component.
- set_post_thumbnail(
- $post_id,
- $this->get_new_attachment( 0 )
- );
-
- // Get the JSON for the article and test the gallery output.
- $json = $this->get_json_for_post( $post_id );
- $gallery = $json['components'][1]['components'][2];
- $this->assertEquals( 'gallery', $gallery['role'] );
- $this->assertEquals( 3, count( $gallery['items'] ) );
- $this->assertEquals( wp_get_attachment_image_url( $images[0] ), $gallery['items'][0]['URL'] );
- $this->assertEquals( 'Alt Text 1', $gallery['items'][0]['accessibilityCaption'] );
- $this->assertEquals( 'Test Caption 1', $gallery['items'][0]['caption']['text'] );
- $this->assertEquals( wp_get_attachment_image_url( $images[1] ), $gallery['items'][1]['URL'] );
- $this->assertEquals( 'Alt Text 2', $gallery['items'][1]['accessibilityCaption'] );
- $this->assertEquals( 'Test Caption 2', $gallery['items'][1]['caption']['text'] );
- $this->assertEquals( wp_get_attachment_image_url( $images[2] ), $gallery['items'][2]['URL'] );
- $this->assertEquals( 'Alt Text 3', $gallery['items'][2]['accessibilityCaption'] );
- $this->assertEquals( 'Test Caption 3', $gallery['items'][2]['caption']['text'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-heading.php b/tests/apple-exporter/components/test-class-heading.php
deleted file mode 100644
index 623dbe621..000000000
--- a/tests/apple-exporter/components/test-class-heading.php
+++ /dev/null
@@ -1,225 +0,0 @@
-
-Heading Level 2
-
-HTML;
- $post_id = self::factory()->post->create( [ 'post_content' => $content ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'heading2', $json['components'][2]['role'] );
- $this->assertEquals( 'fancy-layout', $json['components'][2]['layout'] );
-
- // Teardown.
- remove_filter( 'apple_news_heading_json', [ $this, 'filter_apple_news_heading_json' ] );
- }
-
- /**
- * Ensures HTML is allowed in headings.
- */
- public function test_html_in_headings() {
- $content = <<
-Heading Level 2
-
-
-
-Lorem ipsum dolor sit amet.
-
-
-
-Heading Level 3
-
-
-
-Adipiscing dolor sit.
-
-HTML;
- $post_id = self::factory()->post->create( [ 'post_content' => $content ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'heading2', $json['components'][2]['role'] );
- $this->assertEquals( 'Heading Level 2', $json['components'][2]['text'] );
- $this->assertEquals( 'heading3', $json['components'][4]['role'] );
- $this->assertEquals( 'Heading Level 3', $json['components'][4]['text'] );
- }
-
- /**
- * Tests image splitting where the image is wrapped in a link.
- */
- public function test_image_splitting_with_link() {
- $content = <<
-
-
-HTML;
- $post_id = self::factory()->post->create( [ 'post_content' => $content ] );
- $cover = $this->get_new_attachment();
- set_post_thumbnail( $post_id, $cover );
- $json = $this->get_json_for_post( $post_id );
-
- // Validate image split in generated JSON.
- $this->assertEquals( 'photo', $json['components'][1]['components'][2]['role'] );
- $this->assertEquals( 'http://example.org/example-image.jpg', $json['components'][1]['components'][2]['URL'] );
- }
-
- /**
- * Ensures that headings are produced from heading tags.
- *
- * @dataProvider data_headings
- *
- * @param int $level Heading level. 1-6.
- */
- public function test_render( $level ) {
- $content = <<
-Heading Level {$level}
-
-HTML;
- $post_id = self::factory()->post->create( [ 'post_content' => $content ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'html', $json['components'][2]['format'] );
- $this->assertEquals( 'heading' . $level, $json['components'][2]['role'] );
- $this->assertEquals( 'Heading Level ' . $level, $json['components'][2]['text'] );
- }
-
- /**
- * Tests settings.
- *
- * @dataProvider data_headings
- *
- * @param int $level Heading level. 1-6.
- */
- public function test_settings( $level ) {
- $this->set_theme_settings(
- [
- 'header' . $level . '_font' => 'AmericanTypewriter',
- 'header' . $level . '_size' => 12,
- 'header' . $level . '_color' => '#abcdef',
- 'header' . $level . '_color_dark' => '#fedcba',
- 'header' . $level . '_line_height' => 34,
- 'header' . $level . '_tracking' => 56,
- ]
- );
- $content = <<
-Heading Level {$level}
-
-HTML;
- $post_id = self::factory()->post->create( [ 'post_content' => $content ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'AmericanTypewriter', $json['componentTextStyles']['default-heading-' . $level]['fontName'] );
- $this->assertEquals( 12, $json['componentTextStyles']['default-heading-' . $level]['fontSize'] );
- $this->assertEquals( '#abcdef', $json['componentTextStyles']['default-heading-' . $level]['textColor'] );
- $this->assertEquals( 34, $json['componentTextStyles']['default-heading-' . $level]['lineHeight'] );
- $this->assertEquals( 0.56, $json['componentTextStyles']['default-heading-' . $level]['tracking'] );
- $this->assertEquals( '#fedcba', $json['componentTextStyles']['default-heading-' . $level]['conditional']['textColor'] );
- }
-
- /**
- * Tests the function to migrate legacy header settings.
- *
- * @see Apple_News::migrate_header_settings()
- */
- public function test_settings_migration() {
- // Set legacy settings to test migration.
- $wp_settings = [
- 'header_color' => '#abcdef',
- 'header_font' => 'AmericanTypewriter',
- 'header_line_height' => 128,
- ];
- update_option( Apple_News::$option_name, $wp_settings );
-
- // Delete all themes to force recreation.
- $themes = Theme::get_registry();
- foreach ( $themes as $theme_name ) {
- $theme = new Theme();
- $theme->set_name( $theme_name );
- $theme->delete();
- }
-
- // Delete the active theme by force.
- $active_theme = Theme::get_active_theme_name();
- $theme_key = Theme::theme_key( $active_theme );
- delete_option( $theme_key );
- delete_option( Theme::ACTIVE_KEY );
-
- // Run legacy settings through migrate script.
- $apple_news = new Apple_News();
- $apple_news->upgrade_to_1_3_0();
-
- // Ensure legacy settings have been stripped.
- $settings = get_option( Apple_News::$option_name );
- $this->assertTrue( empty( $settings['header_color'] ) );
- $this->assertTrue( empty( $settings['header_font'] ) );
- $this->assertTrue( empty( $settings['header_line_height'] ) );
-
- // Ensure legacy settings were applied to new values.
- $theme = new Theme();
- $theme->set_name( Theme::get_active_theme_name() );
- $this->assertTrue( $theme->load() );
- $settings = $theme->all_settings();
- $this->assertEquals( '#abcdef', $settings['header1_color'] );
- $this->assertEquals( '#abcdef', $settings['header2_color'] );
- $this->assertEquals( '#abcdef', $settings['header3_color'] );
- $this->assertEquals( '#abcdef', $settings['header4_color'] );
- $this->assertEquals( '#abcdef', $settings['header5_color'] );
- $this->assertEquals( '#abcdef', $settings['header6_color'] );
- $this->assertEquals( 'AmericanTypewriter', $settings['header1_font'] );
- $this->assertEquals( 'AmericanTypewriter', $settings['header2_font'] );
- $this->assertEquals( 'AmericanTypewriter', $settings['header3_font'] );
- $this->assertEquals( 'AmericanTypewriter', $settings['header4_font'] );
- $this->assertEquals( 'AmericanTypewriter', $settings['header5_font'] );
- $this->assertEquals( 'AmericanTypewriter', $settings['header6_font'] );
- $this->assertEquals( 128, $settings['header1_line_height'] );
- $this->assertEquals( 128, $settings['header2_line_height'] );
- $this->assertEquals( 128, $settings['header3_line_height'] );
- $this->assertEquals( 128, $settings['header4_line_height'] );
- $this->assertEquals( 128, $settings['header5_line_height'] );
- $this->assertEquals( 128, $settings['header6_line_height'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-image.php b/tests/apple-exporter/components/test-class-image.php
deleted file mode 100644
index 9a194efb1..000000000
--- a/tests/apple-exporter/components/test-class-image.php
+++ /dev/null
@@ -1,401 +0,0 @@
-settings->set( 'html_support', 'yes' );
- $this->settings->set( 'use_remote_images', 'yes' );
-
- $html = ' ';
-
- $component = new Image(
- $html,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- // Build the node.
- $node = self::build_node( $html );
-
- // Test the match is not `null` and that it matches the original node.
- $this->assertNotNull( $component->node_matches( $node ) );
- $this->assertEquals(
- $component->node_matches( $node ),
- $node
- );
-
- // Get the JSON.
- $json = $component->to_array();
-
- // Test the JSON.
- $this->assertEquals( 'photo', $json['role'] );
- $this->assertEquals( 'https://placeimg.com/640/480/any', $json['URL'] );
- }
-
- /**
- * Test Image component matching and JSON output
- * with HTML5 markup for an image with a caption.
- *
- * @access public
- */
- public function testTransformImageCaption() {
- $this->settings->set( 'html_support', 'yes' );
- $this->settings->set( 'use_remote_images', 'yes' );
-
- $html_caption = <<
-
-
- Sed ac metus sagittis urna feugiat interdum. Duis vel blandit nisi, id tempus sem. Credit: Domain
-
-
-HTML;
-
- // Assign an Image component.
- $component = new Image(
- $html_caption,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- // Build the node.
- $node = self::build_node( $html_caption );
-
- // Test the match is not `null` and that it matches the original node.
- $this->assertNotNull( $component->node_matches( $node ) );
- $this->assertEquals(
- $component->node_matches( $node ),
- $node
- );
-
- // Get the JSON.
- $json = $component->to_array();
-
- // Test the JSON.
- $this->assertEquals( 'container', $json['role'] );
- $this->assertContains( $json['components'], $json );
- $this->assertEquals( 'photo', $json['components'][0]['role'] );
- $this->assertEquals( 'https://placeimg.com/640/480/any', $json['components'][0]['URL'] );
- $this->assertEquals( 'Sed ac metus sagittis urna feugiat interdum. Duis vel blandit nisi, id tempus sem. Credit: Domain ', $json['components'][0]['caption']['text'] );
- }
-
- /**
- * Test empty src attribute.
- *
- * @access public
- */
- public function testEmptySrc() {
-
- // Setup.
- $this->settings->set( 'use_remote_images', 'yes' );
- $component = new Image(
- ' ',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $result = $component->to_array();
-
- // Test.
- $this->assertEmpty( $result );
- }
-
- /**
- * Test the `apple_news_image_json` filter.
- *
- * @access public
- */
- public function testFilter() {
-
- // Setup.
- $this->settings->set( 'use_remote_images', 'no' );
- $this->prophecized_workspace->bundle_source(
- 'filename.jpg',
- 'http://someurl.com/filename.jpg'
- )->shouldBeCalled();
- $component = new Image(
- ' ',
- $this->prophecized_workspace->reveal(),
- $this->settings,
- $this->styles,
- $this->layouts
- );
- add_filter(
- 'apple_news_image_json',
- array( $this, 'filter_apple_news_image_json' )
- );
-
- // Test.
- $result = $component->to_array();
- $this->assertEquals( 'default-image', $result['layout'] );
-
- // Teardown.
- remove_filter(
- 'apple_news_image_json',
- array( $this, 'filter_apple_news_image_json' )
- );
- }
-
- /**
- * Test src attribute that is just a fragment.
- *
- * @access public
- */
- public function testFragmentSrc() {
-
- // Setup.
- $this->settings->set( 'use_remote_images', 'yes' );
- $component = new Image(
- ' ',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $result = $component->to_array();
-
- // Test.
- $this->assertEmpty( $result );
- }
-
- /**
- * Test standard JSON export.
- *
- * @access public
- */
- public function testGeneratedJSON() {
-
- // Setup.
- $this->settings->set( 'use_remote_images', 'no' );
- $this->prophecized_workspace->bundle_source(
- 'filename.jpg',
- 'http://someurl.com/filename.jpg'
- )->shouldBeCalled();
- $component = new Image(
- ' ',
- $this->prophecized_workspace->reveal(),
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $result = $component->to_array();
-
- // Test.
- $this->assertEquals( 'photo', $result['role'] );
- $this->assertEquals( 'bundle://filename.jpg', $result['URL'] );
- $this->assertEquals( 'anchored-image', $result['layout'] );
- }
-
- /**
- * Test remote image JSON export.
- *
- * @access public
- */
- public function testGeneratedJSONRemoteImages() {
-
- // Setup.
- $this->settings->set( 'use_remote_images', 'yes' );
- $this->prophecized_workspace->bundle_source(
- 'filename.jpg',
- 'http://someurl.com/filename.jpg'
- )->shouldNotBeCalled();
- $component = new Image(
- ' ',
- $this->prophecized_workspace->reveal(),
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $result = $component->to_array();
-
- // Test.
- $this->assertEquals( 'photo', $result['role'] );
- $this->assertEquals( 'http://someurl.com/filename.jpg', $result['URL'] );
- $this->assertEquals( 'anchored-image', $result['layout'] );
- }
-
- /**
- * Test relative src attribute.
- *
- * @access public
- */
- public function testRelativeSrc() {
-
- // Setup.
- $this->settings->set( 'use_remote_images', 'yes' );
- $component = new Image(
- ' ',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $result = $component->to_array();
-
- // Test.
- $this->assertEquals( 'photo', $result['role'] );
- $this->assertEquals( 'http://example.org/relative/path/to/image.jpg', $result['URL'] );
- $this->assertEquals( 'anchored-image', $result['layout'] );
- }
-
- /**
- * Tests dark color setting for image captions
- *
- * @access public
- */
- public function testDarkColors() {
- $this->set_theme_settings(
- [
- 'caption_color_dark' => '#abcdef',
- ]
- );
-
- $html = <<
-
- Caption Text
-
-HTML;
- $component = new Image(
- $html,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $result = $component->to_array();
- $this->assertEquals(
- '#abcdef',
- $result['components'][1]['textStyle']['conditional']['textColor']
- );
- }
-
- /**
- * Tests image and image caption settings.
- *
- * @access public
- */
- public function testSettings() {
-
- // Setup.
- $this->settings->full_bleed_images = 'yes';
- $this->set_theme_settings(
- [
- 'caption_color' => '#abcdef',
- 'caption_font' => 'AmericanTypewriter',
- 'caption_line_height' => 28,
- 'caption_size' => 20,
- 'caption_tracking' => 50,
- ]
- );
- $html = <<
-
- Caption Text
-
-HTML;
- $component = new Image(
- $html,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $result = $component->to_array();
-
- // Test.
- $this->assertEquals( true, $result['layout']['ignoreDocumentMargin'] );
- $this->assertEquals(
- '#abcdef',
- $result['components'][1]['textStyle']['textColor']
- );
- $this->assertEquals(
- 'AmericanTypewriter',
- $result['components'][1]['textStyle']['fontName']
- );
- $this->assertEquals(
- 28,
- $result['components'][1]['textStyle']['lineHeight']
- );
- $this->assertEquals(
- 20,
- $result['components'][1]['textStyle']['fontSize']
- );
- $this->assertEquals(
- 0.5,
- $result['components'][1]['textStyle']['tracking']
- );
- $this->assertFalse(
- isset( $json['components'][1]['textStyle']['conditional'] )
- );
- }
-
- /**
- * Ensures that the lightbox font is set to the same font face as the image caption.
- */
- public function testLightboxFont() {
- $this->set_theme_settings(
- [
- 'caption_font' => 'Menlo-Regular',
- 'meta_component_order' => [ 'title', 'byline' ],
- ]
- );
-
- // Create an image and give it a caption.
- $image_id = $this->get_new_attachment( 0, 'Test Caption!' );
-
- // Create a test post with the image with the caption.
- $post_id = self::factory()->post->create(
- [
- 'post_content' => $this->get_image_with_caption( $image_id ),
- ]
- );
-
- // Ensure that the font set on the lightbox is the same as the font set on the caption above.
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals(
- 'Menlo-Regular',
- $json['components'][2]['components'][0]['caption']['textStyle']['fontName']
- );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-instagram.php b/tests/apple-exporter/components/test-class-instagram.php
deleted file mode 100644
index b4fa906ac..000000000
--- a/tests/apple-exporter/components/test-class-instagram.php
+++ /dev/null
@@ -1,159 +0,0 @@
- Belén 1
Una foto publicada por @gosukiwi el 10 de Jun de 2012 a la(s) 3:10 PDT
-HTML;
-
- /**
- * A data provider for the testTransform function.
- *
- * @see self::testTransform()
- *
- * @access public
- * @return array Parameters to use when calling testTransform.
- */
- public function dataTransform() {
- return array(
- array( 'http://www.instagram.com/p/LtaiGnryiu/' ),
- array( 'https://www.instagram.com/p/LtaiGnryiu/' ),
- array( 'http://instagram.com/p/LtaiGnryiu/' ),
- array( 'https://instagram.com/p/LtaiGnryiu/' ),
- array( 'http://instagr.am/p/LtaiGnryiu/' ),
- array( 'https://instagr.am/p/LtaiGnryiu/' ),
- );
- }
-
- /**
- * A filter function to modify the text style in the generated JSON.
- *
- * @param array $json The JSON array to modify.
- *
- * @access public
- * @return array The modified JSON.
- */
- public function filter_apple_news_instagram_json( $json ) {
- $json['URL'] = 'https://instagram.com/p/test/';
-
- return $json;
- }
-
- /**
- * Test the `apple_news_instagram_json` filter.
- *
- * @access public
- */
- public function testFilterJSON() {
-
- // Setup.
- $component = new Instagram(
- sprintf( $this->embed, 'https://instagram.com/p/LtaiGnryiu/' ),
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- add_filter(
- 'apple_news_instagram_json',
- array( $this, 'filter_apple_news_instagram_json' )
- );
-
- // Test.
- $result = $component->to_array();
- $this->assertEquals( 'https://instagram.com/p/test/', $result['URL'] );
-
- // Teardown.
- remove_filter(
- 'apple_news_instagram_json',
- array( $this, 'filter_apple_news_instagram_json' )
- );
- }
-
- /**
- * Ensures an embed without a URL is not incorrectly transformed.
- *
- * @access public
- */
- public function testInvalidMarkup() {
-
- // Setup.
- $component = new Instagram(
- sprintf( $this->embed, 'invalid-content-no-url' ),
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- // Test.
- $this->assertEquals(
- null,
- $component->to_array()
- );
- }
-
- /**
- * Ensures that given test parameters properly transform into components.
- *
- * @dataProvider dataTransform
- *
- * @param string $url The URL to use.
- *
- * @access public
- */
- public function testTransform( $url ) {
-
- // Setup.
- $components = array();
- $components[] = new Instagram(
- $url,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $components[] = new Instagram(
- sprintf( $this->embed, $url ),
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- // Test.
- foreach ( $components as $component ) {
- $this->assertEquals(
- array(
- 'role' => 'instagram',
- 'URL' => $url,
- ),
- $component->to_array()
- );
- }
- }
-}
diff --git a/tests/apple-exporter/components/test-class-intro.php b/tests/apple-exporter/components/test-class-intro.php
deleted file mode 100644
index c3b5aa02b..000000000
--- a/tests/apple-exporter/components/test-class-intro.php
+++ /dev/null
@@ -1,115 +0,0 @@
-post->create(
- [
- 'post_content' => 'Test content!',
- 'post_excerpt' => 'Test excerpt!',
- ]
- );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'title', $json['components'][0]['role'] );
- $this->assertEquals( 'byline', $json['components'][1]['role'] );
- $this->assertEquals( 'body', $json['components'][2]['role'] );
- $this->assertEquals( 'Test content!
', $json['components'][2]['text'] );
- }
-
- /**
- * Test the `apple_news_intro_json` filter.
- */
- public function test_filter() {
- $this->set_theme_settings( [ 'meta_component_order' => [ 'intro' ] ] );
- add_filter( 'apple_news_intro_json', [ $this, 'filter_apple_news_intro_json' ] );
-
- // Create a test post and get JSON for it.
- $post_id = self::factory()->post->create( [ 'post_excerpt' => 'Test excerpt.' ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'intro', $json['components'][0]['role'] );
- $this->assertEquals( 'fancy-layout', $json['components'][0]['layout'] );
-
- // Teardown.
- remove_filter( 'apple_news_intro_json', [ $this, 'filter_apple_news_intro_json' ] );
- }
-
- /**
- * Tests the render method for the component.
- */
- public function test_render() {
- $this->set_theme_settings( [ 'meta_component_order' => [ 'intro' ] ] );
-
- // Create a test post and get JSON for it.
- $post_id = self::factory()->post->create( [ 'post_excerpt' => 'Test excerpt.' ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'intro', $json['components'][0]['role'] );
- $this->assertEquals( 'Test excerpt.', $json['components'][0]['text'] );
- }
-
- /**
- * Ensures that the Intro component is skipped if there is no intro specified.
- */
- public function test_skip() {
- $this->set_theme_settings( [ 'meta_component_order' => [ 'intro' ] ] );
-
- // Create an example post without a customized excerpt and verify that it is not included.
- $post_id_1 = self::factory()->post->create(
- [
- 'post_content' => 'Lorem ipsum dolor sit amet.
',
- 'post_excerpt' => '',
- ]
- );
- $json = $this->get_json_for_post( $post_id_1 );
- $this->assertEquals( 'body', $json['components'][0]['role'] );
-
- // Create an example post with a customized excerpt and verify that it is included.
- $post_id_2 = self::factory()->post->create(
- [
- 'post_content' => 'Lorem ipsum dolor sit amet.
',
- 'post_excerpt' => 'Test excerpt.',
- ]
- );
- $json = $this->get_json_for_post( $post_id_2 );
- $this->assertEquals( 'intro', $json['components'][0]['role'] );
- $this->assertEquals( 'Test excerpt.', $json['components'][0]['text'] );
-
- // Create an example post with an excerpt that is derivative of the main content.
- // Verify that it is skipped because it duplicates body content.
- $post_id_3 = self::factory()->post->create(
- [
- 'post_content' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis arcu risus, vestibulum non nulla a, mollis posuere lectus. Quisque lectus ex, viverra nec massa et, elementum sodales dui. Nam nec congue libero. Nunc eu lectus quis quam eleifend gravida. Nulla condimentum, nisl ornare rhoncus ultrices, ex ipsum luctus dolor, vitae iaculis metus magna vitae neque. Maecenas in risus id est hendrerit mattis. Curabitur pulvinar ante a ligula tincidunt, id porta ante ornare. Donec neque metus, hendrerit nec lectus in, consectetur porta dolor. Curabitur egestas orci eu tortor congue, eu varius ipsum finibus. In in faucibus mi. Donec odio leo, blandit non varius nec, cursus ac eros. Aenean sagittis mauris eget interdum elementum. Etiam hendrerit lectus at lacus pretium pretium. Vivamus eu egestas dolor. Nam a ultricies lectus.
',
- 'post_excerpt' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis arcu risus, vestibulum non nulla a, mollis posuere lectus.',
- ]
- );
- $json = $this->get_json_for_post( $post_id_3 );
- $this->assertEquals( 'body', $json['components'][0]['role'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-link-button.php b/tests/apple-exporter/components/test-class-link-button.php
deleted file mode 100644
index cffc07c5e..000000000
--- a/tests/apple-exporter/components/test-class-link-button.php
+++ /dev/null
@@ -1,171 +0,0 @@
-post->create_and_get(
- [
- 'post_status' => 'publish',
- 'post_title' => 'test-post',
- ]
- );
- }
-
- /**
- * Code to run before each test in the suite.
- */
- public function setUp() {
- parent::setUp();
- global $post;
- $post = self::$test_post;
- }
-
- /**
- * A data provider for the node matches test.
- *
- * @return array An array of function arguments.
- */
- public function dataProviderNodeMatches() {
- return [
- // A bare link should not match.
- [
- 'Test Button ',
- false,
- ],
- // A button link with the button class but no href should not match.
- [
- 'Test Button ',
- false,
- ],
- // A button link with the button class and an empty href should not match.
- [
- 'Test Button ',
- false,
- ],
- // A button link with the button class and an href but no button text should not match.
- [
- ' ',
- false,
- ],
- // A button link with the button class should match.
- [
- 'Test Button ',
- true,
- ],
- ];
- }
-
- /**
- * A data provider for the testTransform function.
- *
- * @return array An array of function arguments for the test function.
- */
- public function dataProviderTransform() {
- return [
- // Test a normal button.
- [
- 'Test Button ',
- [
- 'role' => 'link_button',
- 'text' => 'Test Button',
- 'URL' => 'https://example.org/',
- 'style' => 'default-link-button',
- 'layout' => 'link-button-layout',
- 'textStyle' => 'default-link-button-text-style',
- ],
- ],
- // Test a root-relative URL.
- [
- 'Test Button ',
- [
- 'role' => 'link_button',
- 'text' => 'Test Button',
- 'URL' => 'http://example.org/test',
- 'style' => 'default-link-button',
- 'layout' => 'link-button-layout',
- 'textStyle' => 'default-link-button-text-style',
- ],
- ],
- // Test an anchor button.
- [
- 'Test Button ',
- [
- 'role' => 'link_button',
- 'text' => 'Test Button',
- 'URL' => 'http://example.org/test-post/#test',
- 'style' => 'default-link-button',
- 'layout' => 'link-button-layout',
- 'textStyle' => 'default-link-button-text-style',
- ],
- ],
- ];
- }
-
- /**
- * Tests the behavior of node_matches to ensure that the scope of
- * node matching is sufficiently narrow.
- *
- * @param string $html The HTML to test.
- * @param bool $matches Whether the node matches or not.
- *
- * @dataProvider dataProviderNodeMatches
- */
- public function testNodeMatches( $html, $matches ) {
- $node = self::build_node( $html );
- $result = Link_Button::node_matches( $node );
- if ( $matches ) {
- $this->assertNotNull( $result );
- } else {
- $this->assertNull( $result );
- }
- }
-
- /**
- * Tests the transformation process from a button to a Link_Button component.
- *
- * @param string $html The HTML to transform into a Link Button.
- * @param array $expected The expected result from the component's to_array method.
- *
- * @dataProvider dataProviderTransform
- */
- public function testTransform( $html, $expected ) {
- // Setup.
- $component = new Link_Button(
- $html,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts,
- null,
- $this->component_styles
- );
- $result = $component->to_array();
- $this->assertEquals( $expected, $result );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-quote.php b/tests/apple-exporter/components/test-class-quote.php
deleted file mode 100644
index d3fef02e7..000000000
--- a/tests/apple-exporter/components/test-class-quote.php
+++ /dev/null
@@ -1,606 +0,0 @@
-my text', 'no' ),
- array( 'my text', '“my text”
', 'yes' ),
- array( '"my text"', '“my text”
', 'yes' ),
- array( '“my text”', '“my text”
', 'yes' ),
- );
- }
-
- /**
- * A filter function to modify the hanging punctuation text.
- *
- * @param string $modified_text The modified text to be filtered.
- * @param string $text The original text for the quote.
- *
- * @access public
- * @return string The modified text.
- */
- public function filter_apple_news_apply_hanging_punctuation( $modified_text, $text ) {
- return '«' . trim( $modified_text, '“”' ) . '»';
- }
-
- /**
- * A filter function to modify the text style in the generated JSON.
- *
- * @param array $json The JSON array to modify.
- *
- * @access public
- * @return array The modified JSON.
- */
- public function filter_apple_news_quote_json( $json ) {
- $json['textStyle'] = 'fancy-quote';
-
- return $json;
- }
-
- /**
- * Test the `apple_news_apply_hanging_punctuation` filter.
- *
- * @access public
- */
- public function testFilterHangingPunctuation() {
-
- // Setup.
- $this->set_theme_settings( [ 'pullquote_hanging_punctuation' => 'yes' ] );
- add_filter(
- 'apple_news_apply_hanging_punctuation',
- array( $this, 'filter_apple_news_apply_hanging_punctuation' ),
- 10,
- 2
- );
- $component = new Quote(
- 'my quote
',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- // Test.
- $result = $component->to_array();
- $this->assertEquals(
- '«my quote»
',
- $result['components'][0]['text']
- );
-
- // Teardown.
- remove_filter(
- 'apple_news_apply_hanging_punctuation',
- array( $this, 'filter_apple_news_apply_hanging_punctuation' )
- );
- }
-
- /**
- * Test the `apple_news_quote_json` filter.
- *
- * @access public
- */
- public function testFilterJSON() {
-
- // Setup.
- $component = new Quote(
- 'my quote
',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- add_filter(
- 'apple_news_quote_json',
- array( $this, 'filter_apple_news_quote_json' )
- );
-
- // Test.
- $result = $component->to_array();
- $this->assertEquals( 'fancy-quote', $result['textStyle'] );
-
- // Teardown.
- remove_filter(
- 'apple_news_quote_json',
- array( $this, 'filter_apple_news_quote_json' )
- );
- }
-
- /**
- * Tests blockquote settings.
- *
- * @access public
- */
- public function testSettingsBlockquote() {
-
- // Setup.
- $content = new Exporter_Content(
- 3,
- 'Title',
- 'my quote
'
- );
-
- // Set quote settings.
- $this->set_theme_settings(
- [
- 'blockquote_font' => 'AmericanTypewriter',
- 'blockquote_size' => 20,
- 'blockquote_color' => '#abcdef',
- 'blockquote_line_height' => 28,
- 'blockquote_tracking' => 50,
- 'blockquote_background_color' => '#fedcba',
- 'blockquote_border_color' => '#012345',
- 'blockquote_border_style' => 'dashed',
- 'blockquote_border_width' => 10,
- ]
- );
-
- // Run the export.
- $exporter = new Exporter( $content, $this->workspace, $this->settings );
- $json = $exporter->export();
- $this->ensure_tokens_replaced( $json );
- $json = json_decode( $json, true );
-
- // Validate body settings in generated JSON.
- $this->assertEquals(
- 'AmericanTypewriter',
- $json['componentTextStyles']['default-blockquote-left']['fontName']
- );
- $this->assertEquals(
- 20,
- $json['componentTextStyles']['default-blockquote-left']['fontSize']
- );
- $this->assertEquals(
- '#abcdef',
- $json['componentTextStyles']['default-blockquote-left']['textColor']
- );
- $this->assertEquals(
- 28,
- $json['componentTextStyles']['default-blockquote-left']['lineHeight']
- );
- $this->assertEquals(
- 0.5,
- $json['componentTextStyles']['default-blockquote-left']['tracking']
- );
- $this->assertFalse( isset( $json['componentTextStyles']['default-blockquote-left']['conditional'] ) );
- $this->assertEquals(
- '#fedcba',
- $json['components'][1]['style']['backgroundColor']
- );
- $this->assertEquals(
- '#012345',
- $json['components'][1]['style']['border']['all']['color']
- );
- $this->assertEquals(
- 'dashed',
- $json['components'][1]['style']['border']['all']['style']
- );
- $this->assertEquals(
- 10,
- $json['components'][1]['style']['border']['all']['width']
- );
- $this->assertFalse( isset( $json['components'][1]['style']['conditional'] ) );
- }
-
- /**
- * Test Dark Color Settings For Blockquote.
- *
- * @access public
- */
- public function testDarkColorsBlockquote() {
-
- // Set quote settings.
- $this->set_theme_settings(
- [
- 'blockquote_color_dark' => '#abcdef',
- 'blockquote_background_color_dark' => '#fedcba',
- 'blockquote_border_color_dark' => '#012345',
- ]
- );
-
- $post_id = self::factory()->post->create(
- [
- 'post_content' => 'my quote
',
- ]
- );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals(
- '#abcdef',
- $json['componentTextStyles']['default-blockquote-left']['conditional']['textColor']
- );
- $this->assertEquals(
- '#fedcba',
- $json['components'][2]['style']['conditional']['backgroundColor']
- );
- $this->assertEquals(
- '#012345',
- $json['components'][2]['style']['conditional']['border']['all']['color']
- );
-
- $this->assertEquals(
- '#abcdef',
- $json['componentTextStyles']['default-blockquote-left']['conditional']['textColor']
- );
- $this->assertEquals(
- '#fedcba',
- $json['components'][2]['style']['conditional']['backgroundColor']
- );
- $this->assertEquals(
- '#012345',
- $json['components'][2]['style']['conditional']['border']['all']['color']
- );
- }
-
- /**
- * Test Dark Color Settings Pullquote
- *
- * @access public
- */
- public function testDarkColorsPullquote() {
-
- // Setup.
- $content = new Exporter_Content(
- 3,
- 'Title',
- 'my quote
'
- );
-
- // Set quote settings.
- $this->set_theme_settings(
- [
- 'pullquote_color_dark' => '#abcdef',
- 'pullquote_border_color_dark' => '#abcdef',
- ]
- );
-
- // Run the export.
- $exporter = new Exporter( $content, $this->workspace, $this->settings );
- $json = $exporter->export();
- $this->ensure_tokens_replaced( $json );
- $json = json_decode( $json, true );
-
- // Validate body settings in generated JSON.
- $this->assertEquals(
- '#abcdef',
- $json['componentTextStyles']['default-pullquote-left']['conditional']['textColor']
- );
- $this->assertEquals(
- '#abcdef',
- $json['components'][1]['style']['conditional']['border']['all']['color']
- );
- }
-
- /**
- * Tests pullquote settings.
- *
- * @access public
- */
- public function testSettingsPullquote() {
-
- // Setup.
- $content = new Exporter_Content(
- 3,
- 'Title',
- 'my quote
'
- );
-
- // Set quote settings.
- $this->set_theme_settings(
- [
- 'pullquote_font' => 'AmericanTypewriter',
- 'pullquote_size' => 20,
- 'pullquote_color' => '#abcdef',
- 'pullquote_hanging_punctuation' => 'yes',
- 'pullquote_line_height' => 28,
- 'pullquote_tracking' => 50,
- 'pullquote_transform' => 'uppercase',
- ]
- );
-
- // Run the export.
- $exporter = new Exporter( $content, $this->workspace, $this->settings );
- $json = $exporter->export();
- $this->ensure_tokens_replaced( $json );
- $json = json_decode( $json, true );
-
- // Validate body settings in generated JSON.
- $this->assertEquals(
- 'AmericanTypewriter',
- $json['componentTextStyles']['default-pullquote-left']['fontName']
- );
- $this->assertEquals(
- 20,
- $json['componentTextStyles']['default-pullquote-left']['fontSize']
- );
- $this->assertTrue(
- $json['componentTextStyles']['default-pullquote-left']['hangingPunctuation']
- );
- $this->assertEquals(
- '#abcdef',
- $json['componentTextStyles']['default-pullquote-left']['textColor']
- );
- $this->assertEquals(
- 28,
- $json['componentTextStyles']['default-pullquote-left']['lineHeight']
- );
- $this->assertEquals(
- 0.5,
- $json['componentTextStyles']['default-pullquote-left']['tracking']
- );
- $this->assertEquals(
- 'uppercase',
- $json['componentTextStyles']['default-pullquote-left']['textTransform']
- );
- }
-
- /**
- * Tests the transformation process from a blockquote to a Quote component.
- *
- * @access public
- */
- public function testTransformBlockquote() {
-
- // Setup.
- $component = new Quote(
- 'my quote
',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $result_wrapper = $component->to_array();
- $result = $result_wrapper['components'][0];
-
- // Test.
- $this->assertEquals( 'container', $result_wrapper['role'] );
- $this->assertEquals( 'quote', $result['role'] );
- $this->assertEquals( 'my quote
', $result['text'] );
- $this->assertEquals( 'html', $result['format'] );
- $this->assertEquals( 'default-blockquote-left', $result['textStyle'] );
- $this->assertEquals( 'blockquote-layout', $result['layout'] );
- }
-
- /**
- * Tests the transformation process with text alignment checking.
- *
- * @access public
- */
- public function testTransformBlockquoteAlignment() {
-
- // Setup.
- $componentLeft = new Quote(
- 'Quote Text
',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- $componentCenter = new Quote(
- 'Quote Text
',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- $componentRight = new Quote(
- 'Quote Text
',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- $result_wrapper = $componentLeft->to_array();
- $result = $result_wrapper['components'][0];
-
- // Test.
- $this->assertEquals( 'container', $result_wrapper['role'] );
- $this->assertEquals( 'quote', $result['role'] );
- $this->assertEquals( 'Quote Text
', $result['text'] );
- $this->assertEquals( 'html', $result['format'] );
- $this->assertEquals( 'default-blockquote-left', $result['textStyle'] );
- $this->assertEquals( 'blockquote-layout', $result['layout'] );
-
- $result_wrapper = $componentCenter->to_array();
- $result = $result_wrapper['components'][0];
-
- // Test.
- $this->assertEquals( 'container', $result_wrapper['role'] );
- $this->assertEquals( 'quote', $result['role'] );
- $this->assertEquals( 'Quote Text
', $result['text'] );
- $this->assertEquals( 'html', $result['format'] );
- $this->assertEquals( 'default-blockquote-center', $result['textStyle'] );
- $this->assertEquals( 'blockquote-layout', $result['layout'] );
-
- $result_wrapper = $componentRight->to_array();
- $result = $result_wrapper['components'][0];
-
- // Test.
- $this->assertEquals( 'container', $result_wrapper['role'] );
- $this->assertEquals( 'quote', $result['role'] );
- $this->assertEquals( 'Quote Text
', $result['text'] );
- $this->assertEquals( 'html', $result['format'] );
- $this->assertEquals( 'default-blockquote-right', $result['textStyle'] );
- $this->assertEquals( 'blockquote-layout', $result['layout'] );
- }
-
- /**
- * Tests the transformation process when using a gutenberg pullquote with text alignment checking.
- *
- * @access public
- */
- public function testTransformGutenbergBlockquoteAlignment() {
-
- // Setup.
- $componentLeft = new Quote(
- 'Quote Text
',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- $componentCenter = new Quote(
- 'Quote Text
',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- $componentRight = new Quote(
- 'Quote Text
',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- $result_wrapper = $componentLeft->to_array();
- $result = $result_wrapper['components'][0];
-
- // Test.
- $this->assertEquals( 'container', $result_wrapper['role'] );
- $this->assertEquals( 'quote', $result['role'] );
- $this->assertEquals( 'Quote Text
', $result['text'] );
- $this->assertEquals( 'html', $result['format'] );
- $this->assertEquals( 'default-pullquote-left', $result['textStyle'] );
- $this->assertEquals( 'pullquote-layout', $result['layout'] );
-
- $result_wrapper = $componentCenter->to_array();
- $result = $result_wrapper['components'][0];
-
- // Test.
- $this->assertEquals( 'container', $result_wrapper['role'] );
- $this->assertEquals( 'quote', $result['role'] );
- $this->assertEquals( 'Quote Text
', $result['text'] );
- $this->assertEquals( 'html', $result['format'] );
- $this->assertEquals( 'default-pullquote-center', $result['textStyle'] );
- $this->assertEquals( 'pullquote-layout', $result['layout'] );
-
- $result_wrapper = $componentRight->to_array();
- $result = $result_wrapper['components'][0];
-
- // Test.
- $this->assertEquals( 'container', $result_wrapper['role'] );
- $this->assertEquals( 'quote', $result['role'] );
- $this->assertEquals( 'Quote Text
', $result['text'] );
- $this->assertEquals( 'html', $result['format'] );
- $this->assertEquals( 'default-pullquote-right', $result['textStyle'] );
- $this->assertEquals( 'pullquote-layout', $result['layout'] );
- }
-
- /**
- * Tests the transformation process from a pullquote to a Quote component.
- *
- * @dataProvider dataTransformPullquote
- *
- * @param string $text The text to use in the blockquote element.
- * @param string $expected The expected text node value after compilation.
- * @param string $hanging_punctuation The setting value for hanging punctuation.
- *
- * @access public
- */
- public function testTransformPullquote( $text, $expected, $hanging_punctuation ) {
-
- // Setup.
- $this->set_theme_settings( [ 'pullquote_hanging_punctuation' => $hanging_punctuation ] );
- $component = new Quote(
- '' . $text . '
',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- $result_wrapper = $component->to_array();
- $result = $result_wrapper['components'][0];
-
- // Test.
- $this->assertEquals( 'container', $result_wrapper['role'] );
- $this->assertEquals( 'quote', $result['role'] );
- $this->assertEquals( $expected, $result['text'] );
- $this->assertEquals( 'html', $result['format'] );
- $this->assertEquals( 'default-pullquote-left', $result['textStyle'] );
- $this->assertEquals( 'pullquote-layout', $result['layout'] );
- }
-
- /**
- * Tests a full transformation of a post containing a pullquote.
- */
- public function testFullTransform() {
- // Create a Gutenberg pullquote.
- $post_content = <<
-Testing pullquote.
Testing citation.
-
-HTML;
-
- // Create a post with the pullquote and get the JSON for it.
- $post_id = self::factory()->post->create( [ 'post_content' => $post_content ] );
- $json = $this->get_json_for_post( $post_id );
-
- // Test the component itself.
- $this->assertEquals(
- [
- 'format' => 'html',
- 'layout' => 'pullquote-layout',
- 'role' => 'quote',
- 'text' => 'Testing pullquote.
Testing citation. ',
- 'textStyle' => 'default-pullquote-right',
- ],
- $json['components'][2]['components'][0]
- );
-
- // Test the component text style.
- $this->assertEquals(
- [
- 'fontName' => 'AvenirNext-Bold',
- 'fontSize' => 48,
- 'lineHeight' => 48,
- 'textAlignment' => 'right',
- 'textColor' => '#53585f',
- 'textTransform' => 'uppercase',
- 'tracking' => 0,
- ],
- $json['componentTextStyles']['default-pullquote-right']
- );
-
- // Test the component layout.
- $this->assertEquals(
- [
- 'margin' => [
- 'bottom' => 12,
- 'top' => 12,
- ],
- ],
- $json['componentLayouts']['pullquote-layout']
- );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-slug.php b/tests/apple-exporter/components/test-class-slug.php
deleted file mode 100644
index dc99fc57d..000000000
--- a/tests/apple-exporter/components/test-class-slug.php
+++ /dev/null
@@ -1,90 +0,0 @@
-set_theme_settings( [ 'meta_component_order' => [ 'slug' ] ] );
- add_filter( 'apple_news_slug_json', [ $this, 'filter_apple_news_slug_json' ] );
-
- // Create a test post and get JSON for it.
- $post_id = self::factory()->post->create();
- add_post_meta( $post_id, 'apple_news_slug', 'Test Slug' );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'heading', $json['components'][0]['role'] );
- $this->assertEquals( 'fancy-layout', $json['components'][0]['layout'] );
-
- // Teardown.
- remove_filter( 'apple_news_slug_json', [ $this, 'filter_apple_news_slug_json' ] );
- }
-
- /**
- * Tests the render method for the component.
- */
- public function test_render() {
- $this->set_theme_settings( [ 'meta_component_order' => [ 'slug' ] ] );
-
- // Create a test post and get JSON for it.
- $post_id = self::factory()->post->create();
- add_post_meta( $post_id, 'apple_news_slug', 'Test Slug' );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'heading', $json['components'][0]['role'] );
- $this->assertEquals( 'Test Slug', $json['components'][0]['text'] );
- }
-
- /**
- * Tests slug settings.
- */
- public function test_settings() {
- $this->set_theme_settings(
- [
- 'slug_color' => '#abcdef',
- 'slug_color_dark' => '#123456',
- 'slug_font' => 'AmericanTypewriter',
- 'slug_line_height' => 12,
- 'slug_size' => 34,
- 'slug_tracking' => 56,
- ]
- );
-
- // Create a test post and get JSON for it.
- $post_id = self::factory()->post->create();
- add_post_meta( $post_id, 'apple_news_slug', 'Test Slug' );
- $json = $this->get_json_for_post( $post_id );
-
- // Validate slug settings in generated JSON.
- $this->assertEquals( '#abcdef', $json['componentTextStyles']['default-slug']['textColor'] );
- $this->assertEquals( '#123456', $json['componentTextStyles']['default-slug']['conditional']['textColor'] );
- $this->assertEquals( 'AmericanTypewriter', $json['componentTextStyles']['default-slug']['fontName'] );
- $this->assertEquals( 12, $json['componentTextStyles']['default-slug']['lineHeight'] );
- $this->assertEquals( 34, $json['componentTextStyles']['default-slug']['fontSize'] );
- $this->assertEquals( 0.56, $json['componentTextStyles']['default-slug']['tracking'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-table.php b/tests/apple-exporter/components/test-class-table.php
deleted file mode 100644
index d1ae15da1..000000000
--- a/tests/apple-exporter/components/test-class-table.php
+++ /dev/null
@@ -1,344 +0,0 @@
-html = <<
-
-
- Column Header 1
- Column Header 2
-
-
-
-
- Column Data 1
- Column Data 2
-
-
-
-
- Column Footer 1
- Column Footer 2
-
-
-
-HTML;
-
- $this->html_caption = 'Column Header 1 Column Header 2 Column Data 1 Column Data 2 Column Footer 1 Column Footer 2
Caption ';
- }
-
- /**
- * Tests HTML formatting with captions.
- *
- * @access public
- */
- public function testCaptions() {
- $component = new Table(
- $this->html_caption,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts,
- null,
- $this->component_styles
- );
-
- // Test.
- $this->assertEquals(
- array(
- 'role' => 'container',
- 'components' => array(
- array(
- 'role' => 'htmltable',
- 'html' => 'Column Header 1 Column Header 2 Column Data 1 Column Data 2 Column Footer 1 Column Footer 2
',
- 'layout' => 'table-layout',
- 'style' => 'default-table',
- ),
- array(
- 'role' => 'caption',
- 'text' => 'Caption',
- 'format' => 'html',
- )
- )
- ),
- $component->to_array()
- );
- }
-
- /**
- * Tests HTML formatting.
- *
- * @access public
- */
- public function testHTML() {
-
- // Setup.
- $component = new Table(
- $this->html,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts,
- null,
- $this->component_styles
- );
-
- // Test.
- $this->assertEquals(
- array(
- 'html' => $this->html,
- 'layout' => 'table-layout',
- 'role' => 'htmltable',
- 'style' => 'default-table',
- ),
- $component->to_array()
- );
- }
-
-
- /**
- * Tests table settings.
- *
- * @access public
- */
- public function testDarkColors() {
-
- // Setup.
- $content = new Exporter_Content(
- 3,
- 'Title',
- $this->html
- );
-
- // Set table settings.
- $this->set_theme_settings(
- [
- 'table_border_color_dark' => '#abcdef',
- 'table_body_background_color_dark' => '#fedcba',
- 'table_body_color_dark' => '#123456',
- 'table_header_background_color_dark' => '#654321',
- 'table_header_color_dark' => '#987654',
- ]
- );
-
- // Run the export.
- $exporter = new Exporter( $content, $this->workspace, $this->settings );
- $json = $exporter->export();
- $this->ensure_tokens_replaced( $json );
- $json = json_decode( $json, true );
-
- // Ensure conditionals are set
- // Outer Table Border.
- $this->assertTrue( isset( $json['componentStyles']['default-table']['conditional'] ) );
- // Background Color, Text Color.
- $this->assertTrue( isset( $json['componentStyles']['default-table']['tableStyle']['cells']['conditional'] ) );
- // Column Border.
- $this->assertTrue( isset( $json['componentStyles']['default-table']['tableStyle']['columns']['conditional'] ) );
- // Row Border.
- $this->assertTrue( isset( $json['componentStyles']['default-table']['tableStyle']['rows']['conditional'] ) );
- // Header Border
- $this->assertTrue( isset( $json['componentStyles']['default-table']['tableStyle']['headerRows']['conditional'] ) );
- // Header Background, Header Text Color
- $this->assertTrue( isset( $json['componentStyles']['default-table']['tableStyle']['headerCells']['conditional'] ) );
-
- // Ensure Color Values match
- $this->assertEquals(
- '#abcdef',
- $json['componentStyles']['default-table']['conditional']['border']['all']['color']
- );
- $this->assertEquals(
- '#fedcba',
- $json['componentStyles']['default-table']['tableStyle']['cells']['conditional'][0]['backgroundColor']
- );
- $this->assertEquals(
- '#123456',
- $json['componentStyles']['default-table']['tableStyle']['cells']['conditional'][0]['textStyle']['textColor']
- );
-
- $this->assertEquals(
- '#abcdef',
- $json['componentStyles']['default-table']['tableStyle']['columns']['conditional'][0]['divider']['color']
- );
- $this->assertEquals(
- '#abcdef',
- $json['componentStyles']['default-table']['tableStyle']['rows']['conditional'][0]['divider']['color']
- );
- $this->assertEquals(
- '#abcdef',
- $json['componentStyles']['default-table']['tableStyle']['headerRows']['conditional'][0]['divider']['color']
- );
-
- $this->assertEquals(
- '#654321',
- $json['componentStyles']['default-table']['tableStyle']['headerCells']['conditional'][0]['backgroundColor']
- );
- $this->assertEquals(
- '#987654',
- $json['componentStyles']['default-table']['tableStyle']['headerCells']['conditional'][0]['textStyle']['textColor']
- );
- }
-
- /**
- * Tests table settings.
- *
- * @access public
- */
- public function testSettings() {
-
- // Setup.
- $content = new Exporter_Content(
- 3,
- 'Title',
- $this->html
- );
-
- // Set table settings.
- $this->set_theme_settings(
- [
- 'table_border_color' => '#abcdef',
- 'table_border_style' => 'dashed',
- 'table_border_width' => 5,
- 'table_body_background_color' => '#fedcba',
- 'table_body_color' => '#123456',
- 'table_body_font' => 'AmericanTypewriter',
- 'table_body_horizontal_alignment' => 'center',
- 'table_body_line_height' => 1,
- 'table_body_padding' => 2,
- 'table_body_size' => 3,
- 'table_body_tracking' => 4,
- 'table_body_vertical_alignment' => 'bottom',
- 'table_header_background_color' => '#654321',
- 'table_header_color' => '#987654',
- 'table_header_font' => 'Menlo-Regular',
- 'table_header_horizontal_alignment' => 'right',
- 'table_header_line_height' => 5,
- 'table_header_padding' => 6,
- 'table_header_size' => 7,
- 'table_header_tracking' => 8,
- 'table_header_vertical_alignment' => 'top',
- ]
- );
-
- // Run the export.
- $exporter = new Exporter( $content, $this->workspace, $this->settings );
- $json = $exporter->export();
- $this->ensure_tokens_replaced( $json );
- $json = json_decode( $json, true );
-
- // Validate table layout in generated JSON.
- $this->assertEquals(
- array(
- 'margin' => array(
- 'bottom' => 1,
- ),
- ),
- $json['componentLayouts']['table-layout']
- );
-
- // Ensure conditionals are not set
- // Outer Table Border.
- $this->assertFalse( isset( $json['componentStyles']['default-table']['conditional'] ) );
- // Background Color, Text Color.
- $this->assertFalse( isset( $json['componentStyles']['default-table']['tableStyle']['cells']['conditional'] ) );
- // Column Border.
- $this->assertFalse( isset( $json['componentStyles']['default-table']['tableStyle']['columns']['conditional'] ) );
- // Row Border.
- $this->assertFalse( isset( $json['componentStyles']['default-table']['tableStyle']['rows']['conditional'] ) );
- // Header Border
- $this->assertFalse( isset( $json['componentStyles']['default-table']['tableStyle']['headerRows']['conditional'] ) );
- // Header Background, Header Text Color
- $this->assertFalse( isset( $json['componentStyles']['default-table']['tableStyle']['headerCells']['conditional'] ) );
-
- // Validate table settings in generated JSON.
- $this->assertEquals(
- array(
- 'border' => array(
- 'all' => array(
- 'color' => '#abcdef',
- 'style' => 'dashed',
- 'width' => 5,
- ),
- ),
- 'tableStyle' => array(
- 'cells' => array(
- 'backgroundColor' => '#fedcba',
- 'horizontalAlignment' => 'center',
- 'padding' => 2,
- 'textStyle' => array(
- 'fontName' => 'AmericanTypewriter',
- 'fontSize' => 3,
- 'lineHeight' => 1,
- 'textColor' => '#123456',
- 'tracking' => 4,
- ),
- 'verticalAlignment' => 'bottom',
- ),
- 'columns' => array(
- 'divider' => array(
- 'color' => '#abcdef',
- 'style' => 'dashed',
- 'width' => 5,
- ),
- ),
- 'headerCells' => array(
- 'backgroundColor' => '#654321',
- 'horizontalAlignment' => 'right',
- 'padding' => 6,
- 'textStyle' => array(
- 'fontName' => 'Menlo-Regular',
- 'fontSize' => 7,
- 'lineHeight' => 5,
- 'textColor' => '#987654',
- 'tracking' => 8,
- ),
- 'verticalAlignment' => 'top',
- ),
- 'headerRows' => array(
- 'divider' => array(
- 'color' => '#abcdef',
- 'style' => 'dashed',
- 'width' => 5,
- ),
- ),
- 'rows' => array(
- 'divider' => array(
- 'color' => '#abcdef',
- 'style' => 'dashed',
- 'width' => 5,
- ),
- ),
- ),
- ),
- $json['componentStyles']['default-table']
- );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-title.php b/tests/apple-exporter/components/test-class-title.php
deleted file mode 100644
index 714f8065e..000000000
--- a/tests/apple-exporter/components/test-class-title.php
+++ /dev/null
@@ -1,88 +0,0 @@
-set_theme_settings( [ 'meta_component_order' => [ 'title' ] ] );
- add_filter( 'apple_news_title_json', [ $this, 'filter_apple_news_title_json' ] );
-
- // Create a test post and get JSON for it.
- $post_id = self::factory()->post->create( [ 'post_title' => 'Test Title' ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'title', $json['components'][0]['role'] );
- $this->assertEquals( 'fancy-layout', $json['components'][0]['layout'] );
-
- // Teardown.
- remove_filter( 'apple_news_title_json', [ $this, 'filter_apple_news_title_json' ] );
- }
-
- /**
- * Tests the render method for the component.
- */
- public function test_render() {
- $this->set_theme_settings( [ 'meta_component_order' => [ 'title' ] ] );
-
- // Create a test post and get JSON for it.
- $post_id = self::factory()->post->create( [ 'post_title' => 'Test Title' ] );
- $json = $this->get_json_for_post( $post_id );
- $this->assertEquals( 'title', $json['components'][0]['role'] );
- $this->assertEquals( 'Test Title', $json['components'][0]['text'] );
- }
-
- /**
- * Tests slug settings.
- */
- public function test_settings() {
- $this->set_theme_settings(
- [
- 'header1_color' => '#abcdef',
- 'header1_color_dark' => '#123456',
- 'header1_font' => 'AmericanTypewriter',
- 'header1_line_height' => 12,
- 'header1_size' => 34,
- 'header1_tracking' => 56,
- 'meta_component_order' => [ 'title' ],
- ]
- );
-
- // Create a test post and get JSON for it.
- $post_id = self::factory()->post->create( [ 'post_title' => 'Test Title' ] );
- $json = $this->get_json_for_post( $post_id );
-
- // Validate title settings in generated JSON.
- $this->assertEquals( '#abcdef', $json['componentTextStyles']['default-title']['textColor'] );
- $this->assertEquals( '#123456', $json['componentTextStyles']['default-title']['conditional']['textColor'] );
- $this->assertEquals( 'AmericanTypewriter', $json['componentTextStyles']['default-title']['fontName'] );
- $this->assertEquals( 12, $json['componentTextStyles']['default-title']['lineHeight'] );
- $this->assertEquals( 34, $json['componentTextStyles']['default-title']['fontSize'] );
- $this->assertEquals( 0.56, $json['componentTextStyles']['default-title']['tracking'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-tweet.php b/tests/apple-exporter/components/test-class-tweet.php
deleted file mode 100644
index f5043d554..000000000
--- a/tests/apple-exporter/components/test-class-tweet.php
+++ /dev/null
@@ -1,118 +0,0 @@
-Swift will be open source later this year, available for iOS, OS X, and Linux. http://t.co/yQhyzxukTn
— Federico Ramirez (@gosukiwi) June 9, 2015 ',
- 'https://twitter.com/gosukiwi/status/608069908044390400',
- ],
- [
- '',
- 'https://twitter.com/wordpressdotcom/status/204557548249026561',
- ],
- [
- '',
- 'https://twitter.com/wordpressdotcom/status/204557548249026561',
- ],
- [
- '',
- 'https://twitter.com/wordpressdotcom/status/204557548249026561',
- ],
- [
- '',
- 'https://twitter.com/wordpressdotcom/status/123',
- ],
- ];
- }
-
- /**
- * Given HTML and an expected URL value, tests the component.
- *
- * @dataProvider data_tweets
- *
- * @param string $html The HTML to be fed to the component.
- * @param string $url The expected URL of the Twitter component.
- */
- public function testComponent( $html, $url ) {
- $component = new Tweet(
- $html,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- $result = $component->to_array();
- $this->assertEquals( 'tweet', $result['role'] );
- $this->assertEquals( $url, $result['URL'] );
- }
-
- /**
- * Ensures invalid Twitter embeds are not converted.
- */
- public function testInvalidMarkup() {
- $component = new Tweet(
- '',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- $this->assertEquals( null, $component->to_array() );
- }
-
- /**
- * Tests the behavior of an oEmbed.
- */
- public function testMatchesASingleURL() {
- $node = $this->build_node( 'https://twitter.com/gosukiwi/status/608069908044390400' );
- $this->assertNotNull( Tweet::node_matches( $node ) );
- }
-
- /**
- * Tests the behavior of the apple_news_tweet_json filter.
- */
- public function testFilter() {
- $component = new Tweet(
- '',
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
-
- add_filter(
- 'apple_news_tweet_json',
- function( $json ) {
- $json['URL'] = 'https://twitter.com/alleydev/status/123';
- return $json;
- }
- );
-
- $result = $component->to_array();
- $this->assertEquals( 'https://twitter.com/alleydev/status/123', $result['URL'] );
- }
-}
diff --git a/tests/apple-exporter/components/test-class-video.php b/tests/apple-exporter/components/test-class-video.php
deleted file mode 100644
index 78120fefc..000000000
--- a/tests/apple-exporter/components/test-class-video.php
+++ /dev/null
@@ -1,147 +0,0 @@
-
-
- https://example.com/wp-content/uploads/2017/02/example-video.mp4
-
-HTML;
-
- /**
- * A filter function to modify the video URL in the generated JSON.
- *
- * @param array $json The JSON array to modify.
- *
- * @access public
- * @return array The modified JSON.
- */
- public function filter_apple_news_video_json( $json ) {
- $json['URL'] = 'http://filter.me';
-
- return $json;
- }
-
- /**
- * Test the `apple_news_quote_json` filter.
- *
- * @access public
- */
- public function testFilter() {
-
- // Setup.
- $component = $this->get_component();
- add_filter(
- 'apple_news_video_json',
- array( $this, 'filter_apple_news_video_json' )
- );
-
- // Test.
- $result = $component->to_array();
- $this->assertEquals(
- 'http://filter.me',
- $result['URL']
- );
-
- // Teardown.
- remove_filter(
- 'apple_news_video_json',
- array( $this, 'filter_apple_news_video_json' )
- );
- }
-
- /**
- * Tests the ability for the Video component to get and save caption information
- *
- * @access public
- */
- public function testCaption() {
- $component = $this->get_component( 'caption ' );
-
- // Test.
- $this->assertEquals(
- array(
- 'role' => 'container',
- 'components' => array(
- array(
- 'role' => 'video',
- 'URL' => 'http://www.url.com/test.mp4',
- ),
- array(
- 'role' => 'caption',
- 'text' => 'caption',
- 'format' => 'html',
- )
- )
- ),
- $component->to_array()
- );
- }
-
- /**
- * Tests the transformation process from a video element to a Video component.
- *
- * @access public
- */
- public function testGeneratedJSON() {
-
- // Setup.
- $this->settings->set( 'use_remote_images', 'yes' );
- $component = $this->get_component();
-
- // Test.
- $result = $component->to_array();
- $this->assertEquals(
- 'https://example.com/wp-content/uploads/2017/02/ExamplePoster.jpg',
- $result['stillURL']
- );
- $this->assertEquals(
- 'video',
- $result['role']
- );
- $this->assertEquals(
- 'https://example.com/wp-content/uploads/2017/02/example-video.mp4?_=1',
- $result['URL']
- );
- }
-
- /**
- * A function to get a basic component for testing using defined content.
- *
- * @param string $content HTML for the component.
- *
- * @access private
- * @return Video A Video object containing the specified content.
- */
- private function get_component( $content = '' ) {
- return new Video(
- ! empty( $content ) ? $content : $this->video_content,
- $this->workspace,
- $this->settings,
- $this->styles,
- $this->layouts
- );
- }
-}
diff --git a/tests/apple-exporter/test-class-exporter-content.php b/tests/apple-exporter/test-class-exporter-content.php
deleted file mode 100644
index 5dc79d417..000000000
--- a/tests/apple-exporter/test-class-exporter-content.php
+++ /dev/null
@@ -1,67 +0,0 @@
-prophet = new \Prophecy\Prophet;
- }
-
- public function tearDown() {
- $this->prophet->checkPredictions();
- }
-
- public function testMinimalContent() {
- $content = new \Apple_Exporter\Exporter_Content( 3, 'Title', 'Example content
' );
- $this->assertEquals( '3', $content->id() );
- $this->assertEquals( 'Title', $content->title() );
- $this->assertEquals( 'Example content
', $content->content() );
- $this->assertEquals( null, $content->intro() );
- $this->assertEquals( null, $content->cover() );
- }
-
- public function testCompleteContent() {
- $content = new \Apple_Exporter\Exporter_Content( 3, 'Title', 'Example content
', 'some intro', 'someurl.com' );
- $this->assertEquals( '3', $content->id() );
- $this->assertEquals( 'Title', $content->title() );
- $this->assertEquals( 'Example content
', $content->content() );
- $this->assertEquals( 'some intro', $content->intro() );
- $this->assertEquals( 'someurl.com', $content->cover() );
- }
-
- /**
- * Tests the ability to set a cover using an array configuration.
- */
- public function testCompleteContentWithCoverConfig() {
- $cover = [
- 'caption' => 'Test Caption',
- 'url' => 'https://example.org/wp-content/uploads/2020/07/test-image.jpg',
- ];
- $content = new \Apple_Exporter\Exporter_Content(
- 3,
- 'Title',
- 'Example content
',
- 'some intro',
- $cover
- );
- $this->assertEquals( '3', $content->id() );
- $this->assertEquals( 'Title', $content->title() );
- $this->assertEquals( 'Example content
', $content->content() );
- $this->assertEquals( 'some intro', $content->intro() );
- $this->assertEquals( $cover, $content->cover() );
- }
-
- /**
- * Ensure we decode the HTML entities in URLs extracted from HTML attributes.[type]
- */
- public function test_format_src_url() {
- $this->assertEquals(
- 'https://example.com/some.mp3?one=two&query=arg',
- \Apple_Exporter\Exporter_Content::format_src_url( 'https://example.com/some.mp3?one=two&query=arg' )
- );
- }
-
-}
diff --git a/tests/apple-exporter/test-class-exporter.php b/tests/apple-exporter/test-class-exporter.php
deleted file mode 100644
index 43476a8a7..000000000
--- a/tests/apple-exporter/test-class-exporter.php
+++ /dev/null
@@ -1,56 +0,0 @@
-prophet = new \Prophecy\Prophet;
- }
-
- public function tearDown() {
- $this->prophet->checkPredictions();
- }
-
- public function isValidJSON( $json ) {
- return ( null !== json_decode( $json ) );
- }
-
- /**
- * Tests the functionality of the prepare_for_encoding function to ensure
- * that unwanted characters are stripped.
- */
- public function testPrepareForEncoding() {
- // Test UTF-8 characters with accents common in French.
- $test_content = 'Pondant à Noël — aÀâÂèÈéÉêÊëËîÎïÏôÔùÙûÛüÜÿŸçÇœŒ€æÆ';
- Exporter::prepare_for_encoding( $test_content );
- $this->assertEquals( 'Pondant à Noël — aÀâÂèÈéÉêÊëËîÎïÏôÔùÙûÛüÜÿŸçÇœŒ€æÆ', $test_content );
-
- // Test Unicode whitespace character removal.
- $test_content = json_decode( '"\u0020"' )
- . json_decode( '"\u00a0"' )
- . json_decode( '"\u2000"' )
- . json_decode( '"\u2001"' )
- . json_decode( '"\u2002"' )
- . json_decode( '"\u2003"' )
- . json_decode( '"\u2004"' )
- . json_decode( '"\u2005"' )
- . json_decode( '"\u2006"' )
- . json_decode( '"\u2007"' )
- . json_decode( '"\u2008"' )
- . json_decode( '"\u2009"' )
- . json_decode( '"\u200a"' )
- . json_decode( '"\u202f"' )
- . json_decode( '"\u205f"' )
- . json_decode( '"\u3000"' );
- Exporter::prepare_for_encoding( $test_content );
- $this->assertEquals(
- str_repeat( ' ', strlen( $test_content ) ),
- $test_content
- );
- }
-}
-
diff --git a/tests/apple-exporter/test-class-parser.php b/tests/apple-exporter/test-class-parser.php
deleted file mode 100644
index 9d2a7807b..000000000
--- a/tests/apple-exporter/test-class-parser.php
+++ /dev/null
@@ -1,133 +0,0 @@
-A heading This is strong. This is a link
';
-
- // Convert to Markdown
- $parser = new Parser( 'markdown' );
- $markdown = $parser->parse( $post );
-
- // Verify
- $this->assertEquals( $markdown, "## A heading\n**This is strong.**\n[This is a link](http://apple.com)\n\n" );
- }
-
- public function testParseHTML() {
- // Create a basic HTML post
- $post = 'A heading This is strong. This is a link
The div tags will disappear.
';
-
- // Parse only HTML that's valid for Apple News
- $parser = new Parser( 'html' );
- $markdown = $parser->parse( $post );
-
- // Verify
- $this->assertEquals( $markdown, 'A headingThis is strong. This is a link
The div tags will disappear.' );
- }
-
- /**
- * Test the anchor cleaning functions of the parser for Markdown.
- *
- * @see \Apple_Exporter\Parser::parse
- * @access public
- */
- public function testCleanHTMLMarkdown() {
- update_option( 'siteurl', 'http://wp.dev' );
- update_option( 'home', 'http://wp.dev' );
-
- // Create a post.
- global $post;
- $post_content = <<Absolute link
-
-Root-relative link
-
-Test Anchor
-
-Anchor Link
-
-Legit empty link
-
-Link that trims to empty
-
-Not a real URL
-HTML;
- $post = $this->factory->post->create_and_get( array(
- 'post_type' => 'article',
- 'post_title' => 'Test Article',
- 'post_content' => $post_content,
- ) );
- $permalink = get_permalink( $post );
-
- // Convert to Markdown
- $parser = new Parser( 'markdown' );
- $markdown = $parser->parse( apply_filters( 'the_content', $post->post_content ) );
-
- // Verify.
- $this->assertEquals(
- '[Absolute link](https://www.google.com)'
- . '[Root-relative link](http://wp.dev/2018/05/03/an-92-test)'
- . 'Test Anchor'
- . '[Anchor Link](' . $permalink . '#testanchor)'
- . 'Legit empty link'
- . 'Link that trims to empty'
- . 'Not a real URL',
- str_replace( "\n" , '', $markdown )
- );
- }
-
- /**
- * Test the anchor cleaning functions of the parser for HTML.
- *
- * @see \Apple_Exporter\Parser::parse
- * @access public
- */
- public function testCleanHTML() {
- update_option( 'siteurl', 'http://wp.dev' );
- update_option( 'home', 'http://wp.dev' );
-
- // Create a post.
- global $post;
- $post_content = <<Absolute link
-
-Root-relative link
-
-Test Anchor
-
-Anchor Link
-
-Legit empty link
-
-Link that trims to empty
-
-Not a real URL
-HTML;
- $post = $this->factory->post->create_and_get( array(
- 'post_type' => 'article',
- 'post_title' => 'Test Article',
- 'post_content' => $post_content,
- ) );
- $permalink = get_permalink( $post );
-
- // Parse the post with HTML content format.
- $parser = new Parser( 'html' );
- $parsed_html = $parser->parse( apply_filters( 'the_content', $post->post_content ) );
-
- // Verify.
- $this->assertEquals(
- 'Absolute link
'
- . 'Root-relative link
'
- . 'Test Anchor
'
- . 'Anchor Link
'
- . 'Legit empty link
'
- . 'Link that trims to empty
'
- . 'Not a real URL
',
- str_replace( "\n", '', $parsed_html )
- );
- }
-}
-
diff --git a/tests/apple-exporter/test-class-theme.php b/tests/apple-exporter/test-class-theme.php
deleted file mode 100644
index d9a5723ee..000000000
--- a/tests/apple-exporter/test-class-theme.php
+++ /dev/null
@@ -1,130 +0,0 @@
- array(
- 'body' => array(
- 'default-body' => array(
- 'hyphenation' => false,
- ),
- ),
- ),
- );
-
- // Create a theme and load the custom settings.
- $theme = new Theme;
- $theme->load( $theme_settings );
-
- // Ensure the custom JSON templates exist within the theme.
- $this->assertSame(
- $theme_settings['json_templates'],
- $theme->get_value( 'json_templates' )
- );
-
- // Remove the custom JSON templates and update the theme.
- unset( $theme_settings['json_templates'] );
- $theme->load( $theme_settings );
-
- // Ensure the custom JSON was removed from the theme.
- $this->assertSame(
- array(),
- $theme->get_value( 'json_templates' )
- );
- }
-
- /**
- * Tests the 'apple_news_fonts_list' filter.
- *
- * @access public
- */
- public function testFontFilter() {
-
- // Test before filter.
- $this->assertFalse( in_array(
- 'ExampleFont',
- \Apple_Exporter\Theme::get_fonts(),
- true
- ) );
-
- // Add the filter.
- add_filter(
- 'apple_news_fonts_list',
- array( $this, 'filter_apple_news_fonts_list' )
- );
-
- // Test.
- $this->assertTrue( in_array(
- 'ExampleFont',
- \Apple_Exporter\Theme::get_fonts(),
- true
- ) );
-
- // Teardown.
- remove_filter(
- 'apple_news_fonts_list',
- array( $this, 'filter_apple_news_fonts_list' )
- );
- }
-
- /**
- * Tests the functionality of the get_registry function.
- *
- * @see Apple_Exporter\Theme::get_registry()
- *
- * @access public
- */
- public function testGetRegistry() {
-
- // Setup.
- update_option(
- Theme::INDEX_KEY,
- array( 'Theme 3', 'Theme 2', 'Theme 1' ),
- false
- );
- update_option( Theme::ACTIVE_KEY, 'Theme 2', false );
-
- // Ensure the get_registry function returns in sorted order with active 1st.
- $this->assertSame(
- array( 'Theme 2', 'Theme 1', 'Theme 3' ),
- Theme::get_registry()
- );
- }
-}
diff --git a/tests/apple-push-api/test-class-credentials.php b/tests/apple-push-api/test-class-credentials.php
deleted file mode 100644
index 1ed7400d6..000000000
--- a/tests/apple-push-api/test-class-credentials.php
+++ /dev/null
@@ -1,26 +0,0 @@
-credentials = new Credentials( 'foo', 'bar' );
- }
-
- public function testGetsValues() {
- $this->assertEquals(
- 'foo',
- $this->credentials->key()
- );
-
- $this->assertEquals(
- 'bar',
- $this->credentials->secret()
- );
- }
-
-}
-
diff --git a/tests/apple-push-api/test-class-mime-builder.php b/tests/apple-push-api/test-class-mime-builder.php
deleted file mode 100644
index ea77d3843..000000000
--- a/tests/apple-push-api/test-class-mime-builder.php
+++ /dev/null
@@ -1,44 +0,0 @@
-builder = new MIME_Builder();
- }
-
- public function testAddJSON() {
- $eol = "\r\n";
- $name = 'some-name';
- $filename = 'article.json';
- $json = '{"hello": "world"}';
- $size = strlen( $json );
-
- $expected = '--' . $this->builder->boundary() . $eol .
- 'Content-Type: application/json' . $eol .
- "Content-Disposition: form-data; name=$name; filename=$filename; size=$size" . $eol .
- $eol . $json . $eol;
-
- $this->assertEquals(
- $expected,
- $this->builder->add_json_string( $name, $filename, $json )
- );
- }
-
- public function testInvalidJSON() {
- $name = 'some-name';
- $filename = 'article.json';
- $json = '';
-
- $this->setExpectedException( 'Apple_Push_API\\Request\\Request_Exception', 'The attachment article.json could not be included in the request because it was empty.' );
- $this->builder->add_json_string( $name, $filename, $json );
- }
-
-}
-
-
diff --git a/tests/bootstrap.php b/tests/bootstrap.php
deleted file mode 100644
index 9670673a0..000000000
--- a/tests/bootstrap.php
+++ /dev/null
@@ -1,47 +0,0 @@
-action_init();
-
- // Load the plugin.
- require dirname( dirname( __FILE__ ) ) . '/apple-news.php';
-}
-tests_add_filter( 'muplugins_loaded', '_manually_load_plugin' );
-
-// Disable CAP by default - make it opt-in in tests.
-tests_add_filter( 'apple_news_use_coauthors', '__return_false' );
-
-require $_tests_dir . '/includes/bootstrap.php';
-
-require_once __DIR__ . '/class-apple-news-testcase.php';
-
-require_once __DIR__ . '/apple-exporter/components/class-component-testcase.php';
diff --git a/tests/class-apple-news-testcase.php b/tests/class-apple-news-testcase.php
deleted file mode 100644
index e59550f71..000000000
--- a/tests/class-apple-news-testcase.php
+++ /dev/null
@@ -1,272 +0,0 @@
-content = new Apple_Exporter\Exporter_Content(
- 1,
- 'My Title',
- 'Hello, World!
'
- );
-
- // Create a new instance of the Settings object and save it for future use.
- $this->settings = new Apple_Exporter\Settings();
-
- // Create a new instance of the Exporter_Content_Settings object and save it for future use.
- $this->content_settings = new Apple_Exporter\Exporter_Content_Settings();
-
- // Create a new instance of Prophet for future use and create a prophecized workspace.
- $this->prophet = new Prophecy\Prophet();
- $this->prophecized_workspace = $this->prophet->prophesize( '\Apple_Exporter\Workspace' );
-
- // Load the Default theme from config and save it for future use.
- $this->load_example_theme( 'default' );
-
- // Create styles for future use.
- $this->styles = new Apple_Exporter\Builders\Component_Text_Styles(
- $this->content,
- $this->content_settings
- );
-
- // Create layouts for future use.
- $this->layouts = new Apple_Exporter\Builders\Component_Layouts(
- $this->content,
- $this->content_settings
- );
-
- // Create component styles for future use.
- $this->component_styles = new Apple_Exporter\Builders\Component_Styles(
- $this->content,
- $this->content_settings
- );
-
- // Create a workspace for future use. Default it to use post ID 1, but this can be overridden at the test level.
- $this->set_workspace_post_id( 1 );
- }
-
- /**
- * Actions to be run after every test.
- *
- * @access public
- */
- public function tearDown() {
- $this->prophet->checkPredictions();
- }
-
- /**
- * A helper function for removing Co-Authors Plus support in a test context.
- */
- protected function disable_coauthors_support() {
- remove_filter( 'apple_news_use_coauthors', '__return_true', 99 );
- }
-
- /**
- * A helper function for adding Co-Authors Plus support in a test context.
- */
- protected function enable_coauthors_support() {
- add_filter( 'apple_news_use_coauthors', '__return_true', 99 );
- }
-
- /**
- * Runs create_upload_object using a test image and returns the image ID.
- *
- * @param int $parent Optional. The parent post ID. Defaults to no parent.
- * @param string $caption Optional. The caption to set on the image.
- * @param string $alt Optional. The alt text to set on the image.
- *
- * @return int The post ID of the attachment image that was created.
- */
- protected function get_new_attachment( $parent = 0, $caption = '', $alt = '' ) {
- $image_id = self::factory()->attachment->create_upload_object( __DIR__ . '/data/test-image.jpg', $parent );
-
- if ( ! empty( $caption ) ) {
- $image = get_post( $image_id );
- $image->post_excerpt = $caption;
- wp_update_post( $image );
- }
-
- if ( ! empty( $alt ) ) {
- update_post_meta( $image_id, '_wp_attachment_image_alt', $alt );
- }
-
- return $image_id;
- }
-
- /**
- * Given an image ID, returns the HTML5 markup for an image with a caption.
- *
- * Extracts the caption from the database entry for the image (stored in post_excerpt).
- *
- * @param int $image_id The image ID to use when generating the .
- *
- * @return string HTML for the image and the caption.
- */
- protected function get_image_with_caption( $image_id ) {
- return img_caption_shortcode(
- [
- 'caption' => wp_get_attachment_caption( $image_id ),
- 'width' => 640,
- ],
- wp_get_attachment_image( $image_id, 'full' )
- );
- }
-
- /**
- * A helper function that generates JSON for a given post ID.
- *
- * @param int $post_id The for which to perform the export.
- *
- * @return array The JSON for the post, converted to an associative array.
- */
- protected function get_json_for_post( $post_id ) {
- $export = new Apple_Actions\Index\Export(
- $this->settings,
- $post_id,
- Admin_Apple_Sections::get_sections_for_post( $post_id )
- );
-
- return json_decode( $export->perform(), true );
- }
-
- /**
- * Loads an example theme given a slug.
- *
- * @param string $slug The slug of the example theme to load.
- */
- protected function load_example_theme( $slug ) {
- // Load the theme data from the JSON configuration file.
- $options = json_decode( file_get_contents( dirname( __DIR__ ) . '/assets/themes/' . $slug . '.json' ), true );
- if ( empty( $options ) ) {
- return;
- }
-
- // Negotiate screenshot URL.
- $options['screenshot_url'] = plugins_url(
- '/assets/screenshots/' . $slug . '.png',
- __DIR__
- );
-
- // Create a new instance of the Theme class and set the theme name.
- $this->theme = new \Apple_Exporter\Theme();
- $this->theme->set_name( $options['theme_name'] );
-
- // Save the theme.
- $this->theme->load( $options );
- $this->theme->save();
-
- // Make this theme the active theme.
- $this->theme->set_active();
- }
-
- /**
- * Given an array of theme settings, applies them to the currently active theme.
- *
- * @param array $settings The settings to apply to the theme.
- */
- protected function set_theme_settings( $settings ) {
- $settings = wp_parse_args( $settings, $this->theme->all_settings() );
- $this->theme->load( $settings );
- $this->theme->save();
- }
-
- /**
- * Sets the workspace post ID to the ID provided.
- *
- * @param int $post_id The post ID to set for the workspace.
- */
- protected function set_workspace_post_id( $post_id ) {
- $this->workspace = new Apple_Exporter\Workspace( $post_id );
- }
-}
diff --git a/tests/data/test-image-2.jpg b/tests/data/test-image-2.jpg
deleted file mode 100644
index 47f3197be..000000000
Binary files a/tests/data/test-image-2.jpg and /dev/null differ
diff --git a/tests/data/test-image.jpg b/tests/data/test-image.jpg
deleted file mode 100644
index 47f3197be..000000000
Binary files a/tests/data/test-image.jpg and /dev/null differ
diff --git a/tests/mocks/class-bc-accounts.php b/tests/mocks/class-bc-accounts.php
deleted file mode 100644
index 2ed13a594..000000000
--- a/tests/mocks/class-bc-accounts.php
+++ /dev/null
@@ -1,45 +0,0 @@
- $account_id,
- 'account_name' => 'Test Account Name',
- 'client_id' => 'abcd1234-ef56-ab78-cd90-efabcd123456',
- 'client_secret' => 'AbCdEfGhIjKlMnOpQrStUvWxYz12345678-AbCdEfGhIjKlMnOpQrStUvWxYz0_AbCdE-AbCdEfG_AbCdE_AbC',
- 'hash' => 'abcdef0123456789',
- 'set_default' => 'default',
- ];
- }
-}
diff --git a/tests/mocks/class-bc-cms-api.php b/tests/mocks/class-bc-cms-api.php
deleted file mode 100644
index b0174c015..000000000
--- a/tests/mocks/class-bc-cms-api.php
+++ /dev/null
@@ -1,47 +0,0 @@
- [
- 'src' => 'https://cf-images.us-east-1.prod.boltdns.net/v1/jit/1234567890/abcd1234-ef56-ab78-cd90-efabcd123456/main/1280x720/1s234ms/match/image.jpg',
- 'sources' => [
- [
- 'src' => 'https://cf-images.us-east-1.prod.boltdns.net/v1/jit/1234567890/abcd1234-ef56-ab78-cd90-efabcd123456/main/1280x720/1s234ms/match/image.jpg',
- 'height' => 720,
- 'width' => 1280,
- ],
- ],
- ],
- 'thumbnail' => [
- 'src' => 'https://cf-images.us-east-1.prod.boltdns.net/v1/jit/1234567890/abcd1234-ef56-ab78-cd90-efabcd123456/main/1690x90/1s234ms/match/image.jpg',
- 'sources' => [
- [
- 'src' => 'https://cf-images.us-east-1.prod.boltdns.net/v1/jit/1234567890/abcd1234-ef56-ab78-cd90-efabcd123456/main/160x90/1s234ms/match/image.jpg',
- 'height' => 90,
- 'width' => 160,
- ],
- ],
- ],
- ];
- }
-}
diff --git a/tests/mocks/class-bc-setup.php b/tests/mocks/class-bc-setup.php
deleted file mode 100644
index 346c451a4..000000000
--- a/tests/mocks/class-bc-setup.php
+++ /dev/null
@@ -1,27 +0,0 @@
-assertEquals( 'image.jpg', $filename );
- }
-
- /**
- * Tests the functionality of Apple_News::is_default_theme.
- */
- public function testIsDefaultTheme() {
- // Absent any customizations, the check for the default theme should return true.
- $this->assertTrue( Apple_News::is_default_theme() );
-
- // Load the default theme and change its name but not its settings.
- $theme = new \Apple_Exporter\Theme();
- $theme->set_name( 'Default' );
- $theme->load();
- $theme->rename( 'Not Default' );
-
- // The check for the default theme should now return false, since the name was changed.
- $this->assertFalse( Apple_News::is_default_theme() );
-
- // If we change the name back to Default, the check should go back to being true.
- $theme->rename( 'Default' );
- $this->assertTrue( Apple_News::is_default_theme() );
-
- // If we leave the name as Default but change one of the theme options, the check should return false.
- $theme->set_value( 'body_size', 72 );
- $theme->save();
- $this->assertFalse( Apple_News::is_default_theme() );
-
- // If we also rename the theme, the check should return false.
- $theme->rename( 'Not Default' );
- $this->assertFalse( Apple_News::is_default_theme() );
- }
-
- /**
- * Ensures that the migrate_api_settings function migrates settings.
- *
- * @see Apple_News::migrate_api_settings()
- *
- * @access public
- */
- public function testMigrateApiSettings() {
-
- // Setup.
- $legacy_settings = $this->settings->all();
- $legacy_settings['api_autosync_update'] = 'no';
- unset( $legacy_settings['api_autosync_delete'] );
- $apple_news = new Apple_News();
- update_option( $apple_news::$option_name, $legacy_settings );
- $apple_news->migrate_api_settings();
-
- // Ensure the defaults did not overwrite the migrated legacy data.
- $expected_settings = $legacy_settings;
- $expected_settings['api_autosync_delete'] = 'no';
- $migrated_settings = get_option( $apple_news::$option_name );
- $this->assertEquals( $expected_settings, $migrated_settings );
- }
-
- /**
- * Ensures that the migrate_blockquote_settings function migrates settings.
- *
- * @see Apple_News::migrate_blockquote_settings()
- *
- * @access public
- */
- public function testMigrateBlockquoteSettings() {
-
- // Setup.
- $legacy_settings = $this->settings->all();
- $legacy_settings['body_background_color'] = '#aaaaaa';
- $legacy_settings['pullquote_border_color'] = '#abcdef';
- $legacy_settings['pullquote_border_style'] = 'dashed';
- $legacy_settings['pullquote_border_width'] = 10;
- $legacy_settings['body_color'] = '#012345';
- $legacy_settings['body_font'] = 'TestFont';
- $legacy_settings['body_line_height'] = 30;
- $legacy_settings['body_size'] = 20;
- $legacy_settings['body_tracking'] = 10;
- unset( $legacy_settings['blockquote_background_color'] );
- unset( $legacy_settings['blockquote_border_color'] );
- unset( $legacy_settings['blockquote_border_style'] );
- unset( $legacy_settings['blockquote_border_width'] );
- unset( $legacy_settings['blockquote_color'] );
- unset( $legacy_settings['blockquote_font'] );
- unset( $legacy_settings['blockquote_line_height'] );
- unset( $legacy_settings['blockquote_size'] );
- unset( $legacy_settings['blockquote_tracking'] );
- $apple_news = new Apple_News();
- update_option( $apple_news::$option_name, $legacy_settings );
- $apple_news->migrate_blockquote_settings();
-
- // Ensure the defaults did not overwrite the migrated legacy data.
- $expected_settings = $legacy_settings;
- $expected_settings['blockquote_background_color'] = '#999999';
- $expected_settings['blockquote_border_color'] = '#abcdef';
- $expected_settings['blockquote_border_style'] = 'dashed';
- $expected_settings['blockquote_border_width'] = 10;
- $expected_settings['blockquote_color'] = '#012345';
- $expected_settings['blockquote_font'] = 'TestFont';
- $expected_settings['blockquote_line_height'] = 30;
- $expected_settings['blockquote_size'] = 20;
- $expected_settings['blockquote_tracking'] = 10;
- $migrated_settings = get_option( $apple_news::$option_name );
- $this->assertEquals( $expected_settings, $migrated_settings );
- }
-
- /**
- * Ensures that the migrate_caption_settings function migrates settings.
- *
- * @see Apple_News::migrate_caption_settings()
- *
- * @access public
- */
- public function testMigrateCaptionSettings() {
-
- // Setup.
- $legacy_settings = $this->settings->all();
- $legacy_settings['body_color'] = '#abcdef';
- $legacy_settings['body_font'] = 'TestFont';
- $legacy_settings['body_line_height'] = 40;
- $legacy_settings['body_size'] = 30;
- $legacy_settings['body_tracking'] = 10;
- unset( $legacy_settings['caption_color'] );
- unset( $legacy_settings['caption_font'] );
- unset( $legacy_settings['caption_line_height'] );
- unset( $legacy_settings['caption_size'] );
- unset( $legacy_settings['caption_tracking'] );
- $apple_news = new Apple_News();
- update_option( $apple_news::$option_name, $legacy_settings );
- $apple_news->migrate_caption_settings();
-
- // Ensure the defaults did not overwrite the migrated legacy data.
- $expected_settings = $legacy_settings;
- $expected_settings['caption_color'] = '#abcdef';
- $expected_settings['caption_font'] = 'TestFont';
- $expected_settings['caption_line_height'] = 40;
- $expected_settings['caption_size'] = 28;
- $expected_settings['caption_tracking'] = 10;
- $migrated_settings = get_option( $apple_news::$option_name );
- $this->assertEquals( $expected_settings, $migrated_settings );
- }
-
- /**
- * Ensures that the migrate_header_settings function migrates settings.
- *
- * @see Apple_News::migrate_header_settings()
- *
- * @access public
- */
- public function testMigrateHeaderSettings() {
-
- // Setup.
- $legacy_settings = $this->settings->all();
- $legacy_settings['header_color'] = '#abcdef';
- $legacy_settings['header_font'] = 'TestFont';
- $legacy_settings['header_line_height'] = 100;
- unset( $legacy_settings['header1_color'] );
- unset( $legacy_settings['header2_color'] );
- unset( $legacy_settings['header3_color'] );
- unset( $legacy_settings['header4_color'] );
- unset( $legacy_settings['header5_color'] );
- unset( $legacy_settings['header6_color'] );
- unset( $legacy_settings['header1_font'] );
- unset( $legacy_settings['header2_font'] );
- unset( $legacy_settings['header3_font'] );
- unset( $legacy_settings['header4_font'] );
- unset( $legacy_settings['header5_font'] );
- unset( $legacy_settings['header6_font'] );
- unset( $legacy_settings['header1_line_height'] );
- unset( $legacy_settings['header2_line_height'] );
- unset( $legacy_settings['header3_line_height'] );
- unset( $legacy_settings['header4_line_height'] );
- unset( $legacy_settings['header5_line_height'] );
- unset( $legacy_settings['header6_line_height'] );
- $apple_news = new Apple_News();
- update_option( $apple_news::$option_name, $legacy_settings );
- $apple_news->migrate_header_settings( $legacy_settings );
-
- // Ensure the defaults did not overwrite the migrated legacy data.
- $expected_settings = $legacy_settings;
- $expected_settings['header1_color'] = '#abcdef';
- $expected_settings['header2_color'] = '#abcdef';
- $expected_settings['header3_color'] = '#abcdef';
- $expected_settings['header4_color'] = '#abcdef';
- $expected_settings['header5_color'] = '#abcdef';
- $expected_settings['header6_color'] = '#abcdef';
- $expected_settings['header1_font'] = 'TestFont';
- $expected_settings['header2_font'] = 'TestFont';
- $expected_settings['header3_font'] = 'TestFont';
- $expected_settings['header4_font'] = 'TestFont';
- $expected_settings['header5_font'] = 'TestFont';
- $expected_settings['header6_font'] = 'TestFont';
- $expected_settings['header1_line_height'] = 100;
- $expected_settings['header2_line_height'] = 100;
- $expected_settings['header3_line_height'] = 100;
- $expected_settings['header4_line_height'] = 100;
- $expected_settings['header5_line_height'] = 100;
- $expected_settings['header6_line_height'] = 100;
- unset( $expected_settings['header_color'] );
- unset( $expected_settings['header_font'] );
- unset( $expected_settings['header_line_height'] );
- $migrated_settings = get_option( $apple_news::$option_name );
- $this->assertEquals( $expected_settings, $migrated_settings );
- }
-
- /**
- * Ensures that the migrate_settings function properly migrates legacy settings.
- *
- * @see Apple_News::migrate_settings()
- *
- * @access public
- */
- public function testMigrateSettings() {
-
- // Setup.
- $apple_news = new Apple_News();
- delete_option( $apple_news::$option_name );
- update_option( 'use_remote_images', 'no' );
- $default_settings = $this->settings->all();
- $apple_news->migrate_settings();
-
- // Ensure the defaults did not overwrite the migrated legacy data.
- $migrated_settings = get_option( $apple_news::$option_name );
- $this->assertNotEquals( $default_settings, $migrated_settings );
-
- // Ensure the migrated settings match what we expect.
- $default_settings['use_remote_images'] = 'no';
- $this->assertEquals( $default_settings, $migrated_settings );
- }
-
- /**
- * Ensures that the get_support_info returns the correct values.
- *
- * @see Apple_News::get_support_info()
- *
- * @access public
- */
- public function testSupportInfo() {
-
- // Test HTML.
- $this->assertEquals(
- ' If you need assistance, please reach out for support on WordPress.org or GitHub .',
- Apple_News::get_support_info()
- );
-
- // Test HTML with no padding.
- $this->assertEquals(
- 'If you need assistance, please reach out for support on WordPress.org or GitHub .',
- Apple_News::get_support_info( 'html', false )
- );
-
- // Test text.
- $this->assertEquals(
- "\n\n" . 'If you need assistance, please reach out for support on WordPress.org or GitHub.',
- Apple_News::get_support_info( 'text' )
- );
-
- // Test text with no padding.
- $this->assertEquals(
- 'If you need assistance, please reach out for support on WordPress.org or GitHub.',
- Apple_News::get_support_info( 'text', false )
- );
- }
-
- /**
- * Ensures that the version in Apple_News matches the reported plugin version.
- *
- * @see Apple_News::$version
- *
- * @access public
- */
- public function testVersion() {
- $plugin_data = apple_news_get_plugin_data();
- $this->assertEquals( Apple_News::$version, $plugin_data['Version'] );
- }
-}
diff --git a/webpack.config.js b/webpack.config.js
deleted file mode 100644
index ccff4abfb..000000000
--- a/webpack.config.js
+++ /dev/null
@@ -1,48 +0,0 @@
-const path = require('path');
-const DependencyExtractionWebpackPlugin = require('@wordpress/dependency-extraction-webpack-plugin');
-
-module.exports = (env, { mode }) => ({
- /*
- * See https://webpack.js.org/configuration/devtool/ for an explanation of how
- * to configure this directive. We are using the recommended options for
- * production and development mode that produce high quality source maps.
- */
- devtool: mode === 'production'
- ? 'source-map'
- : 'eval-source-map',
-
- // We only have one entry point - the pluginsidebar.
- entry: {
- pluginSidebar: './assets/js/pluginsidebar/index.jsx',
- },
-
- // Configure loaders based on extension.
- module: {
- rules: [
- {
- exclude: /node_modules/,
- test: /.jsx?$/,
- use: [
- 'babel-loader',
- ],
- },
- ],
- },
-
- // Configure the output filename.
- output: {
- filename: '[name].js',
- path: path.join(__dirname, 'build'),
- },
-
- // Configure plugins.
- plugins: [
- // This maps references to @wordpress/{package-name} to the wp object.
- new DependencyExtractionWebpackPlugin({ useDefaults: true }),
- ],
-
- // Tell webpack that we are using both .js and .jsx extensions.
- resolve: {
- extensions: ['.js', '.jsx'],
- },
-});